Post

Replies

Boosts

Views

Activity

How to download and install old macOS versions
I haven‘t yet found an official Apple website that lists older macOS versions. Fortunately, I have kept the installers on a separate external storage after each major upgrade, but when launching them from a macOS version newer that the installer itself, macOS shows an error that it‘s not possible to install it. What is the official way of installing older macOS versions so that I can test my App Store apps?
4
0
3.5k
Nov ’21
Setting UITextView text color after text change causes caret rect to jump up and down
It seems that when typing inside a textview that has insets and padding, the caret keeps jumping up and down on most keystrokes. Is there a solution to this? class ViewController: UIViewController, UITextViewDelegate {     @IBOutlet weak var textView: TextView!     override func viewDidLayoutSubviews() {         let h = textView.bounds.size.height / 2         textView.textContainerInset = UIEdgeInsets(top: h, left: 0, bottom: h, right: 0)         textView.textContainer.lineFragmentPadding = 200     }     func textViewDidChange(_ textView: UITextView) {         textView.textStorage.addAttribute(.foregroundColor, value: UIColor.red, range: NSRange(location: 0, length: 1))     } } class TextView: UITextView {     override func caretRect(for position: UITextPosition) -> CGRect {         let r = super.caretRect(for: position)         print(r)         return r     } } A complete project can be found here: https://www.icloud.com/iclouddrive/0yEBQZPUCZQH1o3HiL8_6q_gQ#problem_copia
Topic: UI Frameworks SubTopic: UIKit Tags:
0
0
645
Nov ’21
Xcode thinks iPad is not connected when deploying
Every now and then (say at least once a week, but possibly many times within a day) when I try to deploy to my iPad Xcode shows a sheet reading "iPad is not connected", even if it was working a minute earlier. I have reported this already several months ago, but apparently there is no fix for this yet. Usually, restarting Mac and/or iPad solves the issue, but it's really annoying when I have to do this repeatedly. Is there an easier workaround?
0
0
363
Nov ’21
Why does Apple not mark solved bugs as solved?
I keep noticing that some bugs that I reported or features that I suggested have been corrected or added to the latest OS. For one of these I replied asking why I wasn't notified and never got an answer. Isn't Apple interested in closing as many feedbacks as possible? Now I cannot even say that perhaps I formulated them in such a way that they don't understand, because they don't seem to reply altogether.
2
0
614
Nov ’21
Xcode projects do not build anymore after uploading them to Feedback Assistant
For many months now, projects that I download from most of the feedbacks I submit don't build anymore: some settings in the Xcode project get changed for some reason at some stage so that the directory structure is wrong. The top level folder named after the project is highlighted in red and the only compiler error is about the missing entitlements file, even though all the files are in the project folder. I already reported this months ago but this is still happening. What's the problem and why is there no solution to this yet?
0
0
498
Nov ’21
Import Image from SwiftUI even if project already declares an internal Image type
I have this code in my project #if os(macOS) import Cocoa typealias Image = NSImage #elseif os(iOS) import UIKit typealias Image = UIImage #endif Because of this, in a file with import SwiftUI I would have to use SwiftUI.Image to disambiguate. Is it possible to declare that whenever I use Image in that file, it should not use my internal declaration but the SwiftUI type instead?
2
0
1.3k
Nov ’21
Handoff with iCloud document-based app doesn't work
When tapping the Handoff icon of my app on the Mac or on the iPad, Xcode logs this error: [default personal] [ERROR] +[NSURL(BRAdditions) br_documentURLFromBookmarkableString:error:]: (passed to caller) error: Error Domain=BRCloudDocsErrorDomain Code=8 "Not Entitled" UserInfo={NSDescription=Not Entitled} When setting a breakpoint at NSApplicationDelegate.application(_:continue:restorationHandler:), I can see that userInfo.activityType is the one specified with the key NSUbiquitousDocumentUserActivityType under the Info.plist Document Types, but userActivity.userInfo is empty, so the document url is apparently not sent. Is there something else I have to set up?
1
0
1.7k
Nov ’22
Swipe gesture to navigate back and forth between files doesn't always work
Often performing the swipe right gesture in order to show the previously opened file doesn't work immediately. When this happens, which it does countless times a day, I have to repeat it exactly 3 times before it works. I submitted a bug report in May 2018, 3.5 years ago, and it is still marked as "Similar reports: None" and "Resolution: Open". I asked for updates a couple of times and never received a response. This makes me angry. My brain has been rewired so that when (if) this issue is finally solved I will probably continue swiping 3 times for another 2 years. At the same time, it makes me extremely sad. How can the engineers at Apple possibly leave me in the dark about if they could reproduce the issue, are working on it, or just find it unnecessary to fix it?
0
0
1k
Dec ’21
Creating SCNGeometryElement with SCNGeometryPrimitiveType.polygon always causes error
I'm using this code to create a rectangle (that will eventually be a more complex shape): let vertices = [simd_float3(x: 1, y: 1, z: 0), simd_float3(x: 1, y: -1, z: 0), simd_float3(x: -1, y: -1, z: 0), simd_float3(x: -1, y: 1, z: 0)] let vertexSource = SCNGeometrySource(data: Data(bytes: vertices, count: MemoryLayout<simd_float3>.size * vertices.count), semantic: .vertex, vectorCount: vertices.count, usesFloatComponents: true, componentsPerVector: 3, bytesPerComponent: MemoryLayout<Float>.size, dataOffset: 0, dataStride: MemoryLayout<simd_float3>.stride) let indices: [Int32] = Array(0..<Int32(vertices.count)) let element = SCNGeometryElement(data: Data(bytes: indices, count: MemoryLayout<Int32>.size * indices.count), primitiveType: .polygon, primitiveCount: 1, bytesPerIndex: MemoryLayout<Int32>.size) let geometry = SCNGeometry(sources: [vertexSource], elements: [element]) which logs this error in the Xcode console: [SceneKit] Error: SCNGeometryElement initialization - Invalid polygon edge count (0) There also doesn't seem to be any documentation about how to use this .polygon mode. When using .triangleStrip with a primitiveCount of 2, no error is logged.
2
0
1.9k
May ’22
Store Swift closures and cast them back to their original type
I'm trying to create a class that can save different closures (or methods) with an argument of a specific subtype of Decodable that should be called later. This way I can predefine what actions, or methods, can be called on that class in response to some input. For example, the line addCallback(setOption(_:), SetOptionRequest.self) should result in the subsequent call to try! performCallback("setOption", JSONEncoder().encode(SetOptionRequest()) to call setOption(data) where the argument data has type SetOptionRequest. Here is the code I have so far (I took the bit about DecodableWrapper from here). The problem is that at runtime the cast callback.callback as! (ActionRequest) throws -> Void fails, since the type of the closure is not (ActionRequest) throws -> Void but (SetOptionRequest) throws -> Void. But I have no idea if and how I can cast the closure back to its original type. I considered using Selectors but I would like to keep the compile-time check that I'm binding methods with their correct argument type. struct DecodableWrapper: Decodable { static var baseType: ActionRequest.Type! var base: ActionRequest init(from decoder: Decoder) throws { self.base = try DecodableWrapper.baseType.init(from: decoder) } } open class Server { private var actionCallbacks = [String: (callback: Any, dataType: ActionRequest.Type)]() open func setup() { addCallback(setOption, action: SetOptionRequestResponse.self) } public func addCallback<T: ActionRequest>(_ callback: @escaping (_ data: T) throws -> Void, action: T.Type) { actionCallbacks[T.action] = (callback, T.self) } private func performCallback(action: String, data: Data) throws { let callback = actionCallbacks[action]! DecodableWrapper.baseType = callback.dataType let data = try! JSONDecoder().decode(DecodableWrapper.self, from: data).base try (callback.callback as! (ActionRequest) throws -> Void)(data) } private func setOption(_ data: SetOptionRequest) { } } protocol ActionRequest { static var action: String } struct Request: SetOptionRequest { }
2
0
645
Jan ’22
Undoing changes in Xcode doesn't remove compiler errors
It often happens that after a successful build I do some small changes that cause some compiler errors, but undoing those changes with Cmd-Z still leave the errors there. Building also doesn't remove them. Only cleaning the project and building again (which is very time consuming) or doing a small edit on the line that Xcode still thinks is wrong (such as adding a whitespace and immediately undoing it) finally gives a successful compilation again. I filed a bug report in September 2018, more than 3 years ago, and never got a response. Can it really be that I'm the only one experiencing this and why does it take so long to fix such annoying bugs and why does nobody care to give some reassurance that somebody is working on this?
0
0
410
Jan ’22
How to download and install old macOS versions
I haven‘t yet found an official Apple website that lists older macOS versions. Fortunately, I have kept the installers on a separate external storage after each major upgrade, but when launching them from a macOS version newer that the installer itself, macOS shows an error that it‘s not possible to install it. What is the official way of installing older macOS versions so that I can test my App Store apps?
Replies
4
Boosts
0
Views
3.5k
Activity
Nov ’21
Setting UITextView text color after text change causes caret rect to jump up and down
It seems that when typing inside a textview that has insets and padding, the caret keeps jumping up and down on most keystrokes. Is there a solution to this? class ViewController: UIViewController, UITextViewDelegate {     @IBOutlet weak var textView: TextView!     override func viewDidLayoutSubviews() {         let h = textView.bounds.size.height / 2         textView.textContainerInset = UIEdgeInsets(top: h, left: 0, bottom: h, right: 0)         textView.textContainer.lineFragmentPadding = 200     }     func textViewDidChange(_ textView: UITextView) {         textView.textStorage.addAttribute(.foregroundColor, value: UIColor.red, range: NSRange(location: 0, length: 1))     } } class TextView: UITextView {     override func caretRect(for position: UITextPosition) -> CGRect {         let r = super.caretRect(for: position)         print(r)         return r     } } A complete project can be found here: https://www.icloud.com/iclouddrive/0yEBQZPUCZQH1o3HiL8_6q_gQ#problem_copia
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
0
Boosts
0
Views
645
Activity
Nov ’21
Xcode thinks iPad is not connected when deploying
Every now and then (say at least once a week, but possibly many times within a day) when I try to deploy to my iPad Xcode shows a sheet reading "iPad is not connected", even if it was working a minute earlier. I have reported this already several months ago, but apparently there is no fix for this yet. Usually, restarting Mac and/or iPad solves the issue, but it's really annoying when I have to do this repeatedly. Is there an easier workaround?
Replies
0
Boosts
0
Views
363
Activity
Nov ’21
Why does Apple not mark solved bugs as solved?
I keep noticing that some bugs that I reported or features that I suggested have been corrected or added to the latest OS. For one of these I replied asking why I wasn't notified and never got an answer. Isn't Apple interested in closing as many feedbacks as possible? Now I cannot even say that perhaps I formulated them in such a way that they don't understand, because they don't seem to reply altogether.
Replies
2
Boosts
0
Views
614
Activity
Nov ’21
Xcode projects do not build anymore after uploading them to Feedback Assistant
For many months now, projects that I download from most of the feedbacks I submit don't build anymore: some settings in the Xcode project get changed for some reason at some stage so that the directory structure is wrong. The top level folder named after the project is highlighted in red and the only compiler error is about the missing entitlements file, even though all the files are in the project folder. I already reported this months ago but this is still happening. What's the problem and why is there no solution to this yet?
Replies
0
Boosts
0
Views
498
Activity
Nov ’21
Import Image from SwiftUI even if project already declares an internal Image type
I have this code in my project #if os(macOS) import Cocoa typealias Image = NSImage #elseif os(iOS) import UIKit typealias Image = UIImage #endif Because of this, in a file with import SwiftUI I would have to use SwiftUI.Image to disambiguate. Is it possible to declare that whenever I use Image in that file, it should not use my internal declaration but the SwiftUI type instead?
Replies
2
Boosts
0
Views
1.3k
Activity
Nov ’21
UITextView.becomeFirstResponder() triggers scroll animation to selection even when disabling view animations
Here is the code: UIView.setAnimationsEnabled(false) let _ = textView.becomeFirstResponder() UIView.setAnimationsEnabled(true) Is there a way I can make the text view first responder without triggering an animation, so that I can set a custom scroll offset at the same time?
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
1
Boosts
0
Views
592
Activity
Nov ’21
Hiding the "language switcher / dictation" button in the lower right corner of textview when hardware keyboard is connected
Is it possible?
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
0
Boosts
0
Views
404
Activity
Nov ’21
Handoff with iCloud document-based app doesn't work
When tapping the Handoff icon of my app on the Mac or on the iPad, Xcode logs this error: [default personal] [ERROR] +[NSURL(BRAdditions) br_documentURLFromBookmarkableString:error:]: (passed to caller) error: Error Domain=BRCloudDocsErrorDomain Code=8 "Not Entitled" UserInfo={NSDescription=Not Entitled} When setting a breakpoint at NSApplicationDelegate.application(_:continue:restorationHandler:), I can see that userInfo.activityType is the one specified with the key NSUbiquitousDocumentUserActivityType under the Info.plist Document Types, but userActivity.userInfo is empty, so the document url is apparently not sent. Is there something else I have to set up?
Replies
1
Boosts
0
Views
1.7k
Activity
Nov ’22
How to create UIFont with a specific weight
On Mac we can with NSFontManager.shared.font(withFamily:traits:weight:size:), but I couldn't find any way on iOS, not even with UIFontDescriptor.
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
0
Boosts
0
Views
423
Activity
Dec ’21
Swipe gesture to navigate back and forth between files doesn't always work
Often performing the swipe right gesture in order to show the previously opened file doesn't work immediately. When this happens, which it does countless times a day, I have to repeat it exactly 3 times before it works. I submitted a bug report in May 2018, 3.5 years ago, and it is still marked as "Similar reports: None" and "Resolution: Open". I asked for updates a couple of times and never received a response. This makes me angry. My brain has been rewired so that when (if) this issue is finally solved I will probably continue swiping 3 times for another 2 years. At the same time, it makes me extremely sad. How can the engineers at Apple possibly leave me in the dark about if they could reproduce the issue, are working on it, or just find it unnecessary to fix it?
Replies
0
Boosts
0
Views
1k
Activity
Dec ’21
Scrolling NSScrollView without flashing scrollers
I'm using NSView.scroll(_:) but then the scrollers flash. Is there a way to scroll without making them flash, like when using UIView.contentOffset?
Topic: UI Frameworks SubTopic: AppKit Tags:
Replies
0
Boosts
0
Views
431
Activity
Dec ’21
Creating SCNGeometryElement with SCNGeometryPrimitiveType.polygon always causes error
I'm using this code to create a rectangle (that will eventually be a more complex shape): let vertices = [simd_float3(x: 1, y: 1, z: 0), simd_float3(x: 1, y: -1, z: 0), simd_float3(x: -1, y: -1, z: 0), simd_float3(x: -1, y: 1, z: 0)] let vertexSource = SCNGeometrySource(data: Data(bytes: vertices, count: MemoryLayout<simd_float3>.size * vertices.count), semantic: .vertex, vectorCount: vertices.count, usesFloatComponents: true, componentsPerVector: 3, bytesPerComponent: MemoryLayout<Float>.size, dataOffset: 0, dataStride: MemoryLayout<simd_float3>.stride) let indices: [Int32] = Array(0..<Int32(vertices.count)) let element = SCNGeometryElement(data: Data(bytes: indices, count: MemoryLayout<Int32>.size * indices.count), primitiveType: .polygon, primitiveCount: 1, bytesPerIndex: MemoryLayout<Int32>.size) let geometry = SCNGeometry(sources: [vertexSource], elements: [element]) which logs this error in the Xcode console: [SceneKit] Error: SCNGeometryElement initialization - Invalid polygon edge count (0) There also doesn't seem to be any documentation about how to use this .polygon mode. When using .triangleStrip with a primitiveCount of 2, no error is logged.
Replies
2
Boosts
0
Views
1.9k
Activity
May ’22
Store Swift closures and cast them back to their original type
I'm trying to create a class that can save different closures (or methods) with an argument of a specific subtype of Decodable that should be called later. This way I can predefine what actions, or methods, can be called on that class in response to some input. For example, the line addCallback(setOption(_:), SetOptionRequest.self) should result in the subsequent call to try! performCallback("setOption", JSONEncoder().encode(SetOptionRequest()) to call setOption(data) where the argument data has type SetOptionRequest. Here is the code I have so far (I took the bit about DecodableWrapper from here). The problem is that at runtime the cast callback.callback as! (ActionRequest) throws -> Void fails, since the type of the closure is not (ActionRequest) throws -> Void but (SetOptionRequest) throws -> Void. But I have no idea if and how I can cast the closure back to its original type. I considered using Selectors but I would like to keep the compile-time check that I'm binding methods with their correct argument type. struct DecodableWrapper: Decodable { static var baseType: ActionRequest.Type! var base: ActionRequest init(from decoder: Decoder) throws { self.base = try DecodableWrapper.baseType.init(from: decoder) } } open class Server { private var actionCallbacks = [String: (callback: Any, dataType: ActionRequest.Type)]() open func setup() { addCallback(setOption, action: SetOptionRequestResponse.self) } public func addCallback<T: ActionRequest>(_ callback: @escaping (_ data: T) throws -> Void, action: T.Type) { actionCallbacks[T.action] = (callback, T.self) } private func performCallback(action: String, data: Data) throws { let callback = actionCallbacks[action]! DecodableWrapper.baseType = callback.dataType let data = try! JSONDecoder().decode(DecodableWrapper.self, from: data).base try (callback.callback as! (ActionRequest) throws -> Void)(data) } private func setOption(_ data: SetOptionRequest) { } } protocol ActionRequest { static var action: String } struct Request: SetOptionRequest { }
Replies
2
Boosts
0
Views
645
Activity
Jan ’22
Undoing changes in Xcode doesn't remove compiler errors
It often happens that after a successful build I do some small changes that cause some compiler errors, but undoing those changes with Cmd-Z still leave the errors there. Building also doesn't remove them. Only cleaning the project and building again (which is very time consuming) or doing a small edit on the line that Xcode still thinks is wrong (such as adding a whitespace and immediately undoing it) finally gives a successful compilation again. I filed a bug report in September 2018, more than 3 years ago, and never got a response. Can it really be that I'm the only one experiencing this and why does it take so long to fix such annoying bugs and why does nobody care to give some reassurance that somebody is working on this?
Replies
0
Boosts
0
Views
410
Activity
Jan ’22