Post

Replies

Boosts

Views

Activity

Reply to can anybody fix this code
Welcome to the forum. It seems you are misunderstanding what the forum is. It can help to solve properly formatted questions, give advices. But it is not a free debugging service bureau. You should read this excellent thread: https://developer.apple.com/forums/thread/706527 To get help: express precisely what is the problem (not just say help to fix) what do you get ? what did you expect ? what are the error messages ? which line in code ? (not only a comment hidden somewhere in code)   Please also format code with code formatter and indicate the configuration, such as Xcode version.
Topic: Code Signing SubTopic: General
Dec ’24
Reply to SwiftUI From/List Issue: All Buttons Trigger Simultaneously in List View
Confirm what darkpaw said. Whenever you have multiple buttons in a list row, you need to manually set the button style to .borderless or .plain . This is because buttons “adapt” to their context. According to the documentation: So when your button is in a List, its tap target extends to fill the row and you get a highlight animation. SwiftUI isn’t smart enough to stop this side effect when you have more than 2 buttons, so you need to set buttonStyle manually. .buttonStyle(.borderless) Get details here https://stackoverflow.com/questions/70399810/buttons-in-swiftui-list-foreach-view-trigger-even-when-not-tapped
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Dec ’24
Reply to cannot find in scope
@robert0605 Please, STOP mixing all questions. You return to an older part of the post when you have full code available. Do you understand the answers you receive or even read them ? So, just one point left: Does the code you received in the last posts work ? (It works for me, it should for you) Then, close the the thread by marking the correct answer.
Dec ’24
Reply to cannot find in scope
End of code Spacer() // Leaves a gap between the Enter & Detail buttons, and the destructive Delete button Button { delete(costa: &costa, tipa: &tipa, number: &number) } label: { Text("Delete") .font(.title2) .padding(10) .background(Color.red) .foregroundStyle(Color.white) .cornerRadius(12) } .padding(.trailing, 10) // Keeps it off the edge of the screen } Text(text1) // Just to show it is updated DO NOT KEEP THIS Divider() // Nice little divider .padding(.vertical, 20) } VStack { Grid(alignment: .center, horizontalSpacing: 6, verticalSpacing: 6) { GridRow { Text("Avg. Tip") .padding(.horizontal, 20) Text("Tip %") .padding(.horizontal, 20) Text("#") .padding(.horizontal, 20) } .gridColumnAlignment(.center) .font(.title3) GridRow { Text(tipaa) .padding(.horizontal, 20) Text(tipcc) .padding(.horizontal, 20) Text(numbc) .padding(.horizontal, 20) } .gridColumnAlignment(.center) .font(.system(size: 22, weight: .bold)) .foregroundStyle(Color.blue) } Spacer() } VStack { Grid(alignment: .center, horizontalSpacing: 6, verticalSpacing: 6) { GridRow { Text("Total Cost") .padding(.horizontal, 10) Text("Total Tips") .padding(.horizontal, 10) Text("Total Cash") .padding(.horizontal, 10) } .gridColumnAlignment(.center) .font(.title3) GridRow { Text(totalCost) .padding(.horizontal, 10) Text(totalTips) .padding(.horizontal, 10) Text(totalCash) .padding(.horizontal, 10) } .gridColumnAlignment(.center) .font(.system(size: 22, weight: .bold)) .foregroundStyle(Color.blue) } Spacer() } } } } func enterPayment() { var ttips = 0.0 var tcost = 0.0 var tipo = 0.00 costt = Double(cost) paidt = Double(paid) errorMsg = "" if(costt != nil && paidt != nil) { tipo = Double(paid)! - Double(cost)! tipa.append(tipo) costa.append(Double(cost)!) number += 1 numbc = String(number) ttips = (tipa.reduce(0, +)) tcost = (costa.reduce(0, +)) tipaa = (ttips / Double(number)).formatted(.currency(code: "USD")) totalTips = ttips.formatted(.currency(code: "USD")) totalCost = tcost.formatted(.currency(code: "USD")) tipp = tipo.formatted(.currency(code: "USD")) tipc = String(tipo / Double(cost)! * 100) tipc = String(format: "%3.0f%%", Double(tipc)!) tipcc = String(ttips / tcost * 100) tipcc = String(format: "%3.0f%%", Double(tipcc)!) totalCash = (tcost + ttips).formatted(.currency(code: "USD")) } else { errorMsg = "Enter numbers and 1 decimal point only." } } } struct ViewDetail: View { @Binding var text1InDetail: String // Binding here = "" Could be an Array of 44 String @State var tip1: String = "" @State var text23: String = "" @State var tip23: String = "" var body: some View { HStack { Text(text1InDetail) Text(tip1) Text(text23) Text(tip23) } .onAppear { text1InDetail = "125"// If array: text1InDetail[0] = 125 } } func detailLine(costa: inout [Double], tipa: inout [Double]) { // NEVER Called print(costa, tipa) text1InDetail = "125" print("detail") } } func delete(costa: inout [Double], tipa: inout [Double], number: inout Int) { print(costa, tipa) if !tipa.isEmpty && !costa.isEmpty { tipa.removeLast() costa.removeLast() number -= 1 } print(costa,tipa) }
Dec ’24
Reply to cannot find in scope
So the complete code part1: struct ContentView: View { @State var text1: String = "" // <<-- Declare HERE ; could be an array of String @State private var tipa: [Double] = [] @State private var costa: [Double] = [] @State private var cost = "" @State private var costt: Double? = 0.0 @State private var paidt: Double? = 0.0 @State private var paid = "" @State private var tipp = "" @State private var tipc = "" @State private var tipaa = "" @State private var totalCost = "" @State private var totalTips = "" @State private var totalCash = "" @State private var tipcc = "" @State private var numbc = "" @State private var deletep = 0 @State private var number = 0 @State private var errorMsg = "" var body: some View { GeometryReader { g in NavigationStack { VStack { HStack { // No need to manually pad the date out with spaces, which will never be correct. // Just use an HStack and put a Spacer() in, so it goes: |<.....Spacer().....>Date| Spacer() Text(Date().formatted(date: .numeric, time: .omitted)) .foregroundStyle(Color.black) .fontWeight(.bold) .padding(.trailing, 10) } Text("Driver's Food Delivery") .font(.largeTitle) .fontWeight(.bold) Image("Screenshot 2024") VStack { Spacer() Text(errorMsg) .foregroundStyle(Color.red) // Here, put the text in one Text element, and tell SwiftUI to put it on two lines. // No need for msg/msg2 variables. Text("Enter cost and how much was paid. Enter numbers and one decimal point only, then press Enter.") .foregroundStyle(Color.blue) .lineLimit(2, reservesSpace: true) Spacer() } // Use a Grid to lay out your data; much cleaner, and SwiftUI will keep it in columns for you Grid(alignment: .center, horizontalSpacing: 6, verticalSpacing: 6) { GridRow { Text("Cost") .gridColumnAlignment(.leading) Text("Paid") .gridColumnAlignment(.leading) Text("Tip") .gridColumnAlignment(.trailing) Text("Tip %") .gridColumnAlignment(.trailing) } .font(.headline) GridRow { TextField("Cost", text: $cost) .padding(10) .background(Color.brown) .cornerRadius(12) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.leading) TextField("Paid", text: $paid) .padding(10) .background(Color.brown) .cornerRadius(12) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.leading) Text(tipp) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.trailing) Text(tipc) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.trailing) } } .padding(.vertical, 20) HStack { Button { enterPayment() } label: { Text("Enter") .font(.title2) .padding(10) .background(Color.green) .foregroundStyle(Color.white) .cornerRadius(12) } .padding(.leading, 10) // Keeps it off the edge of the screen NavigationLink(destination: ViewDetail(text1InDetail: $text1)) { Text("Detail") .font(.title2) .padding(10) .background(Color.blue) .foregroundStyle(Color.white) .cornerRadius(12) }
Dec ’24
Reply to cannot find in scope
Fist problem is that func detailLine(costa: inout [Double], tipa: inout [Double]) { is never called how should it get costa and tips ? When do you want to call ? When you tap Detail ? If so, here is the fix, but I do not understand the logic here: struct ViewDetail: View { @State var text1: String = "" @State var tip1: String = "" @State var text23: String = "" @State var tip23: String = "" var body: some View { HStack { Text(text1) Text(tip1) Text(text23) Text(tip23) } .onAppear { text1 = "125" } } func detailLine(costa: inout [Double], tipa: inout [Double]) { // NEVER Called print(costa, tipa) text1 = "125" print("detail") } } Second problem How do you want to use text1 in ContentView ? It never appears. If you want, here is how to do with Binding Thrid problem in: func delete(costa: inout [Double], tipa: inout [Double], number: inout Int) { print(costa, tipa) tipa.removeLast() // Crash here as tipa is empty There is a simple fix: func delete(costa: inout [Double], tipa: inout [Double], number: inout Int) { print(costa, tipa) if !tipa.isEmpty && !costa.isEmpty { tipa.removeLast() costa.removeLast() number -= 1 } print(costa,tipa) } The complete code in next post.
Dec ’24
Reply to cannot find in scope
Did you try with the simple text1 ? As you keep posting only bits and pieces, it is impossible to understand what you are doing.   AnotherView a function? No, it is a View, like ViewDetail   Let me explain. The user(driver) enters the cost of the delivery and the amount he got paid. The program(enterp) figures out the tip, tip %, average tip, total costs, total tips, total tip % and total cash and writes it out to the screen. Using detailLine I want to print all deliveries(up to 44) and tips to the second screen. I hope this helps. No, it does not help. What would help would be to see the complete main view, with all the var declarations, all the func inside.   Can you rewrite what you wrote with more detail? No as long as you do not provide complete code as requested several time. We see nowhere a call to display ViewDetail. Where is it ? A last advice: you should start by learning SwiftUI and Swift. Looks like you are rushing to coding. That's a dead end.
Dec ’24
Reply to cannot find in scope
It is very simple so. Let's assume the view that contains enterp() is called AnotherView. Then, in AnotherView define a Binding @Binding var text1ForUpdate: String // To make it easier to understand, I've not named it text1, but you could declare detailLine inside AnotherView somewhere in ViewDetail you call AnotherView pass the text1 as parameter: AnotherView(text1ForUpdate: $text1) Change ne name in detailLine func: text1ForUpdate = "125" Tell if that works now.
Dec ’24
Reply to cannot find text1 in scope
I was asked to send the code where I call detailLine. I did that but I never got the answer. I'm still waiting. Please answer. If I remember well, I did answer (https://developer.apple.com/forums/thread/771287) that the code was not enough. Where do you call enterp() ? We need to understand how the whole code works. As you have multiple posts about essentially the same question, that makes things harder to track.
Dec ’24
Reply to cannot find text1 in scope
If I remember, you have already asked the same question several time. And it seems you have not read the answers. You should learn more about Swift to understand the basic principles. In Swift, an object has a visibility scope: it is visible inside the block where it is defined. In your case, detailLine is declared outside viewdetail (should be written ViewDetail according to Swift naming conventions). As text1 is declared inside ViewDetail, it is not visible in detailLine. Once again, please post complete code so that we understand what you want to do. It seems the architecture of your code has several issues.
Dec ’24
Reply to TOOOO LONG WAITING FOR REVIEW
Yelling in uppercase has rarely speeded things up… Did you notice the warning in Appstore Connect that reviews could suffer delays in the Dec 23 to 26 period ? Did you take care of it ? I fear you just experienced it. But it should now (27) resume a normal speed. Note that this forum is not a channel to Apple. You should have used developers support link.
Topic: App & System Services SubTopic: General Tags:
Dec ’24
Reply to can anybody fix this code
Welcome to the forum. It seems you are misunderstanding what the forum is. It can help to solve properly formatted questions, give advices. But it is not a free debugging service bureau. You should read this excellent thread: https://developer.apple.com/forums/thread/706527 To get help: express precisely what is the problem (not just say help to fix) what do you get ? what did you expect ? what are the error messages ? which line in code ? (not only a comment hidden somewhere in code)   Please also format code with code formatter and indicate the configuration, such as Xcode version.
Topic: Code Signing SubTopic: General
Replies
Boosts
Views
Activity
Dec ’24
Reply to SwiftUI From/List Issue: All Buttons Trigger Simultaneously in List View
Confirm what darkpaw said. Whenever you have multiple buttons in a list row, you need to manually set the button style to .borderless or .plain . This is because buttons “adapt” to their context. According to the documentation: So when your button is in a List, its tap target extends to fill the row and you get a highlight animation. SwiftUI isn’t smart enough to stop this side effect when you have more than 2 buttons, so you need to set buttonStyle manually. .buttonStyle(.borderless) Get details here https://stackoverflow.com/questions/70399810/buttons-in-swiftui-list-foreach-view-trigger-even-when-not-tapped
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
@robert0605 Please, STOP mixing all questions. You return to an older part of the post when you have full code available. Do you understand the answers you receive or even read them ? So, just one point left: Does the code you received in the last posts work ? (It works for me, it should for you) Then, close the the thread by marking the correct answer.
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
End of code Spacer() // Leaves a gap between the Enter & Detail buttons, and the destructive Delete button Button { delete(costa: &costa, tipa: &tipa, number: &number) } label: { Text("Delete") .font(.title2) .padding(10) .background(Color.red) .foregroundStyle(Color.white) .cornerRadius(12) } .padding(.trailing, 10) // Keeps it off the edge of the screen } Text(text1) // Just to show it is updated DO NOT KEEP THIS Divider() // Nice little divider .padding(.vertical, 20) } VStack { Grid(alignment: .center, horizontalSpacing: 6, verticalSpacing: 6) { GridRow { Text("Avg. Tip") .padding(.horizontal, 20) Text("Tip %") .padding(.horizontal, 20) Text("#") .padding(.horizontal, 20) } .gridColumnAlignment(.center) .font(.title3) GridRow { Text(tipaa) .padding(.horizontal, 20) Text(tipcc) .padding(.horizontal, 20) Text(numbc) .padding(.horizontal, 20) } .gridColumnAlignment(.center) .font(.system(size: 22, weight: .bold)) .foregroundStyle(Color.blue) } Spacer() } VStack { Grid(alignment: .center, horizontalSpacing: 6, verticalSpacing: 6) { GridRow { Text("Total Cost") .padding(.horizontal, 10) Text("Total Tips") .padding(.horizontal, 10) Text("Total Cash") .padding(.horizontal, 10) } .gridColumnAlignment(.center) .font(.title3) GridRow { Text(totalCost) .padding(.horizontal, 10) Text(totalTips) .padding(.horizontal, 10) Text(totalCash) .padding(.horizontal, 10) } .gridColumnAlignment(.center) .font(.system(size: 22, weight: .bold)) .foregroundStyle(Color.blue) } Spacer() } } } } func enterPayment() { var ttips = 0.0 var tcost = 0.0 var tipo = 0.00 costt = Double(cost) paidt = Double(paid) errorMsg = "" if(costt != nil && paidt != nil) { tipo = Double(paid)! - Double(cost)! tipa.append(tipo) costa.append(Double(cost)!) number += 1 numbc = String(number) ttips = (tipa.reduce(0, +)) tcost = (costa.reduce(0, +)) tipaa = (ttips / Double(number)).formatted(.currency(code: "USD")) totalTips = ttips.formatted(.currency(code: "USD")) totalCost = tcost.formatted(.currency(code: "USD")) tipp = tipo.formatted(.currency(code: "USD")) tipc = String(tipo / Double(cost)! * 100) tipc = String(format: "%3.0f%%", Double(tipc)!) tipcc = String(ttips / tcost * 100) tipcc = String(format: "%3.0f%%", Double(tipcc)!) totalCash = (tcost + ttips).formatted(.currency(code: "USD")) } else { errorMsg = "Enter numbers and 1 decimal point only." } } } struct ViewDetail: View { @Binding var text1InDetail: String // Binding here = "" Could be an Array of 44 String @State var tip1: String = "" @State var text23: String = "" @State var tip23: String = "" var body: some View { HStack { Text(text1InDetail) Text(tip1) Text(text23) Text(tip23) } .onAppear { text1InDetail = "125"// If array: text1InDetail[0] = 125 } } func detailLine(costa: inout [Double], tipa: inout [Double]) { // NEVER Called print(costa, tipa) text1InDetail = "125" print("detail") } } func delete(costa: inout [Double], tipa: inout [Double], number: inout Int) { print(costa, tipa) if !tipa.isEmpty && !costa.isEmpty { tipa.removeLast() costa.removeLast() number -= 1 } print(costa,tipa) }
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
So the complete code part1: struct ContentView: View { @State var text1: String = "" // <<-- Declare HERE ; could be an array of String @State private var tipa: [Double] = [] @State private var costa: [Double] = [] @State private var cost = "" @State private var costt: Double? = 0.0 @State private var paidt: Double? = 0.0 @State private var paid = "" @State private var tipp = "" @State private var tipc = "" @State private var tipaa = "" @State private var totalCost = "" @State private var totalTips = "" @State private var totalCash = "" @State private var tipcc = "" @State private var numbc = "" @State private var deletep = 0 @State private var number = 0 @State private var errorMsg = "" var body: some View { GeometryReader { g in NavigationStack { VStack { HStack { // No need to manually pad the date out with spaces, which will never be correct. // Just use an HStack and put a Spacer() in, so it goes: |<.....Spacer().....>Date| Spacer() Text(Date().formatted(date: .numeric, time: .omitted)) .foregroundStyle(Color.black) .fontWeight(.bold) .padding(.trailing, 10) } Text("Driver's Food Delivery") .font(.largeTitle) .fontWeight(.bold) Image("Screenshot 2024") VStack { Spacer() Text(errorMsg) .foregroundStyle(Color.red) // Here, put the text in one Text element, and tell SwiftUI to put it on two lines. // No need for msg/msg2 variables. Text("Enter cost and how much was paid. Enter numbers and one decimal point only, then press Enter.") .foregroundStyle(Color.blue) .lineLimit(2, reservesSpace: true) Spacer() } // Use a Grid to lay out your data; much cleaner, and SwiftUI will keep it in columns for you Grid(alignment: .center, horizontalSpacing: 6, verticalSpacing: 6) { GridRow { Text("Cost") .gridColumnAlignment(.leading) Text("Paid") .gridColumnAlignment(.leading) Text("Tip") .gridColumnAlignment(.trailing) Text("Tip %") .gridColumnAlignment(.trailing) } .font(.headline) GridRow { TextField("Cost", text: $cost) .padding(10) .background(Color.brown) .cornerRadius(12) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.leading) TextField("Paid", text: $paid) .padding(10) .background(Color.brown) .cornerRadius(12) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.leading) Text(tipp) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.trailing) Text(tipc) .frame(width: g.size.width * 0.2) .gridColumnAlignment(.trailing) } } .padding(.vertical, 20) HStack { Button { enterPayment() } label: { Text("Enter") .font(.title2) .padding(10) .background(Color.green) .foregroundStyle(Color.white) .cornerRadius(12) } .padding(.leading, 10) // Keeps it off the edge of the screen NavigationLink(destination: ViewDetail(text1InDetail: $text1)) { Text("Detail") .font(.title2) .padding(10) .background(Color.blue) .foregroundStyle(Color.white) .cornerRadius(12) }
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
Fist problem is that func detailLine(costa: inout [Double], tipa: inout [Double]) { is never called how should it get costa and tips ? When do you want to call ? When you tap Detail ? If so, here is the fix, but I do not understand the logic here: struct ViewDetail: View { @State var text1: String = "" @State var tip1: String = "" @State var text23: String = "" @State var tip23: String = "" var body: some View { HStack { Text(text1) Text(tip1) Text(text23) Text(tip23) } .onAppear { text1 = "125" } } func detailLine(costa: inout [Double], tipa: inout [Double]) { // NEVER Called print(costa, tipa) text1 = "125" print("detail") } } Second problem How do you want to use text1 in ContentView ? It never appears. If you want, here is how to do with Binding Thrid problem in: func delete(costa: inout [Double], tipa: inout [Double], number: inout Int) { print(costa, tipa) tipa.removeLast() // Crash here as tipa is empty There is a simple fix: func delete(costa: inout [Double], tipa: inout [Double], number: inout Int) { print(costa, tipa) if !tipa.isEmpty && !costa.isEmpty { tipa.removeLast() costa.removeLast() number -= 1 } print(costa,tipa) } The complete code in next post.
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
Did you try with the simple text1 ? As you keep posting only bits and pieces, it is impossible to understand what you are doing.   AnotherView a function? No, it is a View, like ViewDetail   Let me explain. The user(driver) enters the cost of the delivery and the amount he got paid. The program(enterp) figures out the tip, tip %, average tip, total costs, total tips, total tip % and total cash and writes it out to the screen. Using detailLine I want to print all deliveries(up to 44) and tips to the second screen. I hope this helps. No, it does not help. What would help would be to see the complete main view, with all the var declarations, all the func inside.   Can you rewrite what you wrote with more detail? No as long as you do not provide complete code as requested several time. We see nowhere a call to display ViewDetail. Where is it ? A last advice: you should start by learning SwiftUI and Swift. Looks like you are rushing to coding. That's a dead end.
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
Can I do this if I'm gonna have 44 Texts(text1 thru text44)? I'll have 44 arguments to pass in. Enterp is in some view. How do I call it? Put the 44 text in an array. It will be the State var and that is what you'll pass for Binding.
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find in scope
It is very simple so. Let's assume the view that contains enterp() is called AnotherView. Then, in AnotherView define a Binding @Binding var text1ForUpdate: String // To make it easier to understand, I've not named it text1, but you could declare detailLine inside AnotherView somewhere in ViewDetail you call AnotherView pass the text1 as parameter: AnotherView(text1ForUpdate: $text1) Change ne name in detailLine func: text1ForUpdate = "125" Tell if that works now.
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find text1 in scope
I was asked to send the code where I call detailLine. I did that but I never got the answer. I'm still waiting. Please answer. If I remember well, I did answer (https://developer.apple.com/forums/thread/771287) that the code was not enough. Where do you call enterp() ? We need to understand how the whole code works. As you have multiple posts about essentially the same question, that makes things harder to track.
Replies
Boosts
Views
Activity
Dec ’24
Reply to Decode errors, even on "Hello, world!" - Mac
Could you post the code where the error occurs ? Do you call some decode (either userDefaults or JSON ?)
Topic: Community SubTopic: Apple Developers Tags:
Replies
Boosts
Views
Activity
Dec ’24
Reply to cannot find text1 in scope
If I remember, you have already asked the same question several time. And it seems you have not read the answers. You should learn more about Swift to understand the basic principles. In Swift, an object has a visibility scope: it is visible inside the block where it is defined. In your case, detailLine is declared outside viewdetail (should be written ViewDetail according to Swift naming conventions). As text1 is declared inside ViewDetail, it is not visible in detailLine. Once again, please post complete code so that we understand what you want to do. It seems the architecture of your code has several issues.
Replies
Boosts
Views
Activity
Dec ’24
Reply to Is Swift Assist delayed or cancelled? 9 days before 2024 ends.
You will not get an answer here. Those who know can't tell, those who tell don't know. Usually you only get the information when a release (or beta) is officially announced.
Replies
Boosts
Views
Activity
Dec ’24
Reply to TOOOO LONG WAITING FOR REVIEW
Yelling in uppercase has rarely speeded things up… Did you notice the warning in Appstore Connect that reviews could suffer delays in the Dec 23 to 26 period ? Did you take care of it ? I fear you just experienced it. But it should now (27) resume a normal speed. Note that this forum is not a channel to Apple. You should have used developers support link.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Dec ’24
Reply to Is Settings.bundle deprecated? What required-reason API code to use?
I filed a bug report: Dec 27, 2024 at 9:37 AM – FB16175635
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Dec ’24