Positioning Synergy on Menu Bar?

  1. Diomedes

    Is there a way to control where the Synergy buttons appear on the menu bar? I've moved it all the way to the top in the Startup items under the Account preference pane, but it always winds as the leftmost set of icons in my menu bar. I have some other third party menu bar items, such as iSeek, WeatherMenu, and Salling Clicker that launch at startup.

  2. Greg Hurrell

    Synergy is an NSStatusItem which means you can't drag it around by holding the command key like you can with NSMenuExtras.

    All NSStatusItems always appear to the left of all NSMenuExtras.

    The order of NSStatusItems is determined by their launch order, with each subsequently launched item being placed to the left of the previously launched items. Note that when I say "launch" here I don't just mean "open" or "double-click"; I actually mean "open and wait for the NSStatusItem to appear in the menu bar".

    I don't use any of the other apps you mention, but if they are NSMenuExtras then there is no way that you can get Synergy to be anything but to the left of them. If they are NSStatusItems then they are beating Synergy to the menu bar and you'll need to find a way of delaying them.

    Life would be much easier if Apple allowed third-party developers to use the NSMenuExtra API, or if they gave similar functionality (the ability to command-drag) the NSStatusItem API. Unfortunately, the only way to circumvent this limitation is to engage in hackery, which I am not going to do for Synergy. Any third party app which does it risks being broken when Apple brings out Tiger (or sooner, if they please).

    (When I wrote WinSwitch, I decided that I would go down the path of "hackery" because it just wasn't feasible to write a Fast User Switching menu replacement without it being the right-most... But Synergy is a different story.)

  3. Magnetikal

    Do you know if Apple is doing anything to remedy the NSStatusItem situation in 10.4? Or will be still be the same? I always assume they'd eventually merge the two APIs or provide the same functionality to 3rd party developers.

  4. anonymous

    menumeters manages to do it. i don't know why you can't. this and the poorly designed floater always keep me from paying and instead using free alternatives.

  5. Greg Hurrell

    Quote: menumeters manages to do it. i don't know why you can't.

    Because Synergy is an NSStatusItem, and MenuMeters is an NSMenuExtra.

    For the record, I've never seen any NSMenuExtra that includes clickable buttons in the menu bar. Programs like MenuMeters display information in the menu bar, but they don't provide buttons; click on them and a menu drops down.

    As for whether or not I "can" do NSMenuExtras, see WinSwitch. Of course I can do it. But I've explained my reasons above for why Synergy uses NSStatusItem.

Reply

This topic is now closed.