Present Perfect


Picture Gallery
Present Perfect

Gnome panels and xinerama

Filed under: GNOME — Thomas @ 11:58


I plugged in a second monitor, smaller and to the right of my big primary monitor, and the desktop just nicely expanded. So far so good.

The panels however travelled to the new smaller monitor, which is not my primary monitor.

I can see how that might make sense to want in some cases, maybe. But I think the typical use case when you plug in a new monitor is that you just want more display area, not that all your stuff automatically moves. Principle of least surprise no ? It's also much more likely you plugged in a smaller screen than a bigger screen than the first monitor you had.

Just spent an hour trying to figure out how the hell to move those panels back, painful. No amount of Ctrl/Shift/Alt/left/middle click drag would make it work (never mind that I had to remove a bunch of stuff just to have clickable panel area - still don't get why for example the applications panel applet doesn't give up the space around the logo to be panel area, looks like such an obvious area to release to me...). It was not locked_down in GConf, there was nothing in the right click menu to move it (except for top/bottom/left/right, all confined to monitor 2).

Hunting around I saw Lennart had the reverse problem in Fedora, and I tried all of the remedies in there. The only one that worked however is to dive into gconf-editor, go apps>panel>toplevels, and change monitor from 0 to 1 in bottom_panel and top_panel. Not sure why my primary is 1 and secondary is 0, but there you go...

I might be bothered to do something about this if I could figure out how the magic works when you plug in a second screen, but Xinerama is such a minefield of different preferences between different users, and I promised myself to not go too deep yak shaving so I get somewhere...


  1. This does sound unpleasant, I agree. But I’d just take issue with your “typical case” above. Surely, many people that use extra monitors are laptop users. When they plug their massive TFT panel into their laptop, it’ll probably be bigger. Maybe that’s something to do with why the primary and secondary monitors are the wrong way round for you: the laptop user probably wants the new panel to be the primary one…

    Or maybe I’ve completely misunderstood! Sadly, I don’t have a spare monitor to play with…

    Comment by Rupert — 2010-12-08 @ 12:24

  2. This was recently fixed for GNOME 3: https://bugzilla.gnome.org/show_bug.cgi?id=588041#c8

    Maybe there’s a pointer there somewhere how you might work around this in GNOME 2.

    Comment by Robin — 2010-12-08 @ 12:42

  3. I usually use ‘xrandr –output VGA –primary’ to cause my panels to shift to my bigger external monitor.

    The internal laptop display is usually called LVDS1. In any case, you can find out the list of connected displays by running xrandr -q


    Comment by nucco — 2010-12-08 @ 12:48


    This is only good explanation I have.

    Comment by Baptiste Mille-Mathias — 2010-12-08 @ 13:30

  5. ‘It’s also much more likely you plugged in a smaller screen than a bigger screen than the first monitor you had.’

    Think about laptop users – they have a very small screen on the laptop – and plugs in a much bigger screen when they “dock”.

    Comment by Anders — 2010-12-08 @ 15:38

  6. “It’s also much more likely you plugged in a smaller screen than a bigger screen than the first monitor you had.”

    unless you’re on a laptop of course…

    Comment by Søren Hauberg — 2010-12-08 @ 16:16

  7. You probably need to set the primary display in xrandr:
    xrandr –output –primary

    Comment by Alex — 2010-12-08 @ 17:05

  8. Seems to have eaten my comment, you want something like:
    xrandr –output DVI-0 –primary
    see man xrandr for more.

    Comment by Alex — 2010-12-08 @ 17:07

  9. Xinerama is dead, long live RANDR. Unless you use NVidia proprietary binary drivers.

    GNOME panels try to stay on the primary screen. The video driver driver makes a guesses which one should be primary; sometimes it guesses wrong. You can override the guess by running

    xrandr # to see the names of outputs — VGA1 and LVDS1 is what ‘intel’ uses today
    xrandr –output VGA1 –primary # use external VGA on my laptop with intel graphics
    xrandr –output LVDS1 –primary # use the internal laptop panel again

    The panels migrate automatically when you issue those commands. Or you could alt-drag, if you can find an empty area. (Oops, I accidentally dragged it to the left side and now I have no blank spaces where I could grab it… gconf time for me.)

    I agree completely that staying on the same monitor would make more sense than jumping around. I disagree that new monitors are likely to be smaller; my feeling is that the most common case is plugging an external screen to a laptop, and laptop screens are generally smaller than desktop monitors.

    Comment by Marius Gedminas — 2010-12-08 @ 17:53

  10. aside from some old 1024*768 projectors, when do you EVER plug in a SMALLER ‘monitor’?

    Comment by mike — 2010-12-08 @ 17:53

  11. I’ve been filing bugs about this and an assortment of other horrible bugs with the multi-monitor behavior in GNOME. I can’t easily put just how frustrating using two monitors is without using a slew of bad words. I’ve actually just gotten to the point where I disable the secondary monitor unless I actually need it.

    In particular, I can’t stop windows from opening on the secondary monitor. It’s a secondary monitor. I have to turn my head to look at it. I have a specific set of apps/windows I want there, and nothing else, period, ever. It’s just obnoxious.

    Nautilus does silly things too, as in wanting to move icons over to the left monitor’s desktop instead of leaving them on the primary monitor.

    And then there’s GDM, which will sometimes randomly move the greeter and/or the panel to the secondary monitor. Yes, “or” as in the greeter shows up on one monitor and the greeter on the other.

    Comment by Sean — 2010-12-08 @ 18:05

  12. I actually filed a bug about primary vs secondary screens, not long ago: https://bugzilla.gnome.org/show_bug.cgi?id=636216

    I’ve been told this is already fixed for 3.0.

    Comment by jeff — 2010-12-09 @ 03:54

  13. To move panels you need to set them to not expanded, then drag them to the other screen, then set them to re-expanded. Generally speaking they will at least stay on the screen you put them on(at least on my workstation with fixed number of screens). There are several things lacking in the current panel though: no ability to drag while expanded, no ability to script (or API AFAIK) the position, and perhaps the most annoying: when you remove the other screen you end up with it’s panels cramming your other screen.

    Comment by Andy O'Neill — 2010-12-09 @ 06:51

  14. The current plug&play behaviour is TOTALLY IDIOTIC!!!

    It should ASK the user what to do and it should be possible that the user disables monitor autoconfiguration at all! (And Yes, this is an excellent example of the “we know better that the user what is good for him” arrogance… PLEASE, STOP IT IN GNOME [And Yes, I am shouting…])

    Comment by xurpcha — 2010-12-10 @ 00:53

RSS feed for comments on this post. TrackBack URL

Leave a comment