Post

Replies

Boosts

Views

Activity

Reply to What is the proper way to copy layer references into presentation layer?
I'm seeing this is NOT a good pattern. Found a case where layer.mySublayer.presentation()! in context of init(layer: Any). With that said I still am not quite sure what the correct behavior should be... does it make sense for the presentation layer to hold references to model layers? So for example replace the above with: override init(layer: Any) {         let layer = layer as! MyLayer         mySublayer = layer.mySublayer         super.init(layer: layer) }
Dec ’21
Reply to NSTextCheckingClient example code?
I've made progress on getting NSTextCheckingClient to work. Still not sure that my Implementation is right, but at least some things work. Would be great to get some expert eyes on this code so there will be a good Swift implementation of NSTextInputClient and NSTextCheckingClient for developers to find.
Mar ’22
Reply to Xcode 15 post archive script permission problems
Thanks for your response. It inspired me to start over and create a demo project so that I could give you a simple example of exactly what was happening... and of course the demo project is working fine... dmgs are created and notarized by the post archive script without requiring that Xcode has full disk access. I'm now in slow process of trying to figure what in the world is different between my real project and demo. Will report back when I figure more what is going on. What is /Volumes/Bike in this context? I'm pretty sure it's something that hdiutil create is doing. My guess (without much actual knowledge) is that: My post archive script has access to /tmp, because it's able to create file/directories there hdiutil create creates an empty Bike.dmg file (I see this temporary show in the finder) hdiutil create then mounts that Bike.dmg file as Volumes/Bike When hdiutil create tries to copy content to that volume it fails because my script doesn't have access to that mounted volume?
Sep ’23
Reply to CloudKit sync refresh problem when change from iOS to macOS
After two days if trying all the CloudKit demo apps that I could find and seeing same behavior... things just started to work. Now I see instant updates in both directions: edit on iPhone > see on Mac edit on Mac > see on iPhone My test apps are all using different containers, but I'm doing the testing using the same user account. If anyone has insite into this change in behavior please let me know.
Jun ’24
Reply to CloudKit sync refresh problem when change from iOS to macOS
Odd... for and hour or so all my examples started to work. Sync was fast in both directions, but then it reverted to previous behavior... changes from Mac to iOS are fast... changes from iOS to Mac don't show until put Mac app in background and reactive. Sometimes even that doesn't work and I need to restart Mac app to see changes. I find it very odd that even when the Mac version fails to see changes... if I add an item in the Mac version it still instantly shows up on iOS version.
Jun ’24
Reply to CloudKit sync refresh problem when change from iOS to macOS
Thanks for your reply and sorry that I didn't reply sooner. I don't think that is really a bug because CloudKit was designed to synchronize only when it determines appropriate. I think from end users experience perspective it would definitely be considered a bug. Please see this movie that I've made showing users experience: https://vimeo.com/957328976 https://github.com/jessegrosjean/sample-cloudkit-sync-engine (my code) To me it feels broken. Especially since changes are able to go from macOS to iOS fast... it's just changes from iOS to macOS that don't refresh until Mac app goes into background. In the production environment, that may not be a real issue, because people typically don't put their devices side by side to see the synchronization. While it's maybe true that users don't use Mac and iPhone at same time, there are two times when I expect this bug would be particularly problematic: Sync is often buggy and users don't trust it. So when they first get an app they will test to see if this app can actually sync well. And they do this by opening up the same document on two computer and expect consistent results. CloudKit supports data sharing with other users. Sometimes both users are editing data at same time. It will be very weird if one user (on iOS) is seeing macOS changes almost instantly, while the macOS user is seeing no changes from the iOS user.
Jun ’24