Posts

Post not yet marked as solved
1 Replies
951 Views
Hi As of right now, the only template available in Xcode for creating a macOS screen saver is Objective-C only, and creates a plug-in (a .saver file). Can we expect in a later Xcode seed a proper target to create an .appex screen saver as an extension ? There are many benefits to switching from insecure plug-ins to app extensions, so that would be quite welcome. Currently there are many limitations since Catalina with the way the old plugins (.saver) works as they are inheriting their entitlements from legacyScreenSaver.appex. Also according to documentation, the screen saver API is now available in "Mac Catalyst 14" and I'm not exactly sure what that entails ? At the very top of the documentation, it still says in the "Overview" section : Screen Effects modules need to be written in Objective-C with their user interface implemented using Cocoa. According to a previous post on this forum, Swift screen saver seem to be supported since 10.14.4, and also the Cocoa part may need to be updated for Catalyst support, if that's not a wrongly placed support tag. Can we get a bit of clarification on this ? Thanks !
Posted
by C_Wiz.
Last updated
.
Post not yet marked as solved
0 Replies
949 Views
With macOS 10.15 (19A471t), I'm seeing a fairly weird new crash that I have a hard time debugging.This happens with loadNibNamed when passing an owner. Without an owner (my controller class), I can load the nib fine and show it. If I specify the owner though instead of nil, the calling thread seems to abruptly quit with no warning when debugging under Xcode.Here's a snippet of what no longer works : let bundle = Bundle.main var topLevelObjects: NSArray? = NSArray() bundle.loadNibNamed(NSNib.Name(nibName), owner: preferencesWindowController, topLevelObjects: &topLevelObjects) return topLevelObjects! as [AnyObject]I've checked that the owner is correctly initialized, it is. Also, no change reported in API https://developer.apple.com/documentation/foundation/bundle/1402909-loadnibnamedWhen compiled and running (this is a screensaver), I get this crash log in console for that issue :Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_INSTRUCTION (SIGILL) Exception Codes: 0x0000000000000001, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY Termination Signal: Illegal instruction: 4 Termination Reason: Namespace SIGNAL, Code 0x4 Terminating Process: exc handler [6316] Application Specific Information: dyld3 mode Crashing on exception: launch path not accessible Application Specific Signatures: Aerial Application Specific Backtrace 1: 0 CoreFoundation 0x00007fff2e5d4c63 __exceptionPreprocess + 250 1 libobjc.A.dylib 0x00007fff63a9d06b objc_exception_throw + 48 2 Foundation 0x00007fff30be81a0 -[NSConcreteTask launchWithDictionary:error:] + 5073 3 Aerial 0x00000001104f1181 Aerial + 516481 4 Aerial 0x00000001104ee964 Aerial + 506212 5 Aerial 0x00000001104ecb5c Aerial + 498524 6 Aerial 0x00000001104a6e9d Aerial + 212637 7 Aerial 0x00000001104ab4db Aerial + 230619 8 AppKit 0x00007fff2b8a9ce5 -[NSIBObjectData nibInstantiateWithOwner:options:topLevelObjects:] + 1540 9 AppKit 0x00007fff2b8a7d17 loadNib + 401 10 AppKit 0x00007fff2b8a72ce +[NSBundle(NSNibLoading) _loadNibFile:nameTable:options:withZone:ownerBundle:] + 693Anyone encoutering the same issue ? Any tip on how I could track it down further ?Thanks !
Posted
by C_Wiz.
Last updated
.