OS X 10.3.3 breaks SystemTrayIconComponent


On OS X 10.3.3 the bounds of the system tray owner component are (0,0,0,0). The reason is that frameChanged in the SystemTrayViewClass is never called after the NSStatusItem has been created. I assume previous versions of OS X called frameChanged at least once.

The fix is simple, after the creation of the NSStatusItem call frameChanged manually once:

statusItem = [[[NSStatusBar systemStatusBar] statusItemWithLength: NSSquareStatusItemLength] retain];
[statusItem setView: view];

SystemTrayViewClass::frameChanged(view, nil, nullptr);

Jules, do you think this could be added?



10.3! Wow..

But sure, that change is simple enough that I'm happy to add it. Can't guarantee that our future changes won't break 10.3 though!


Ooops. I ment to say 10.10.3. Sorry about that :-)


Ah, that makes more sense! Thanks!