I was able to catch the menu selection bug in the act. It doesn’t happen every time — just enough times a day to be annoying. Again, it happens to me only in Sonoma — but on three different machines with two different Magic Mouses.

I’m navigating the menu by holding down my index finger until I get to the item I want. I pull my finger off — and that’s when the pointer jumps to select the item one below.

I’m sure some amount of jiggle is normal — but earlier versions of macOS handled it.

Apple’s menu tracking is something I’ve never, ever had to think about. It’s been the best since forever — it’s one of the things that make a Mac a Mac.

And now I have to pay extra attention, which is weird. It’s like having to think about my nose as I’m breathing.

@brentsimmons there is something very wrong there, I wonder if it has some tangential relationship to @siracusa's mouse polling windowserver bug

@stroughtonsmith @brentsimmons More likely it’s related to the old “Carbon” (derived) menu manager being replaced with a “Cocoa” one in Sonoma, right?

@brentsimmons @stroughtonsmith I’m pretty sure it’s something that happened, but of course I can’t recall where I read about it.

Follow

@siracusa @brentsimmons @stroughtonsmith

this definitely happened, and you can (unless they've removed it since 14.2) revert to the Carbon-based implementation with `defaults write -g NSEnableAppKitMenus -bool false` (reboot or quit the relevant apps)

restore default behavior with `defaults delete -g NSEnableAppKitMenus`

· · Web · 2 · 1 · 13

@a @siracusa @brentsimmons @stroughtonsmith This could explain why a menu that I have assigned to a button in my app no longer appears in Sonoma. Building the app with Xcode 15 and running it on Venture works fine. But no menu appears in Sonoma. I’ll try this defaults command to see if it fixes it! Not a good solution to tell customers though! I’ll file a bug.

@a @siracusa @brentsimmons @stroughtonsmith Reverting to the Carbon-based menu manager did fix my issue with the menu attached to a button not appearing when the button is clicked.

Does anyone know if there is a plist entry that can be set in the app’s plist to always use the Carbon-based menu manager? This defaults write solution works, but makes the change system wide which seems a little aggressive to do on a user's machine.

@platkus @siracusa @brentsimmons @stroughtonsmith not sure if it'll work, but setting it in the specific app's domain (defaults write com.the.apps.CFBundleIdentifier) worth a try?

@a @siracusa @brentsimmons @stroughtonsmith
I wasn't hopeful that this was going to work but holy cow it did! This resolves my compatibility issues in Sonoma now.

I added this line to my app when it starts up and it sets the NSEnableAppKitMenus key to FALSE in the app's preferences plist file and the next time the app launches the menus work:

// Disable AppKit Menus
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"NSEnableAppKitMenus"];

Sign in to participate in the conversation
Amy's $30 Mastodon Instance

Just for personal use. Please click here if you're looking for my website.