Note: See update for GNOME 3.3/3.4 at the end of this post.
I’ve already expressed some disappointment in the default multi-monitor behavior in GNOME 3 on the dev’s blog (read: I posted an angry rant in the comments).
Basically, in GNOME 3, for some reason, they decided the typical use case was for the secondary monitor to stay fixed when switching workspaces, which is the complete wrong setup for someone using dual monitors.
Luckily, as Pascal points out in the blog’s comments, there’s a setting for this, and the other (ie correct) behavior is actually mutter’s default.
Luckily, the fix is pretty simple, and will allow workspaces to switch on multiple monitors again!
- Download gconf-editor – this is probably available in your distribution’s package manager.
- Start gconf-editor – the “Run Command” menu is still available in GNOME 3 by pressing Alt-F2.
- In the tree on the left, navigate to /desktop/gnome/shell/windows
- UNCHECK the box next to workspaces_only_on_primary
You’ll need to log out or restart to see the changes, and some commenters in the above post seem to note some small issues with the setup, but all-in-all this has been completely functional for me; and best of all, I can use both monitors again!
Update for GNOME 3.3/3.4
Cedric Briner emailed me to let me know that for GNOME 3.3/3.4, the command has been updated. The new command is (instead of gconf-editor):
gsettings set org.gnome.shell.overrides workspaces-only-on-primary false

Thanks for the info!
Wow, excellent. It was driving me nuts at work fighting with my IDE and VM constantly not being on the workspace I wanted them to be. Can’t thank you enough for this!
umm, is it bad if I don’t see any of those options in the list?
Strange default is P in da A. Thanks a lot for workaround!
I’ve got better – I see those, but after changing to off, nothing really changes at all, still only primary monitor has desktop and secondary only a wallpaper
Thanks for posting the workaround.
Is there a way I can also see the preview of the second monitor pressing Alt-F1?
Yes, thanks for this tip! This issue was driving me nuts too. Sometimes hard to know what keywords to search for, but I found your site and gconf-editor did the trick. Now on to figure out why my audio doesn’t work in FC-15 while it worked perfectly in 14 ..
Hi Greg,
Can you give more information about how exactly did you achieve this? When I uncheck the parameter, Gnome still sees my second monitor as an extension of primary workspace. Is there any other necessary setting on how to enable another workspace for the second monitor?
This is to restore the default behavior that existed in GNOME 2, which was basically a big workspace. If you want two different sets of workspaces, you’ll need to configure two X displays in your video card or X11.conf – note that some quick research seems to show reports of this crashing with GNOME 3, but I’m not sure if that’s been fixed.
Uhm, yeah. No. This use-case — dual screens (i.e. :0.0 and :0.1 such that each has their own workspaces and can be changed independent of the other) doesn’t actually work and is not even being considered important enough for anyone to fix.
Yet another reason why GNOME 3 is unusable.
~sigh~
Gracias, Thanks
I actually LIKE the new screen mode!
I’ve been frantically trying to figure out how to make this work on prev Gnone.
It is actually strange for me how one can like it any other way.
I have one monitor with my code editor (Eclipse), and I use the other monitor for various random things (Web browser, various terminal windows, email, etc). I love it that I can switch workspaces on the “Misc stuff” monitor and keep my Eclipse with my code in front of me.
Likewise, I may have firefox open on one of the Monitors and then switch workspaces on the other without loosing my Firefox.
You can use dual monitors a LOT better then just pretending you have a huge monitor (which is also broken, because you have a huge ‘hole’ in hte middle).
You can accomplish this in previous iterations of GNOME by right clicking a window border and selecting “Always on Visible Workspace”
How about one step even better? Workspaces on each monitor that are independently switchable?
Sound good doesn’t it? Keep on wishing
Pingback: General Failure
Thank you so much for this fix.
The default behavior has been driving me nuts since i started using the gnome 3 beta.
You made my day
Thank you,
that drove me insane!
anyway to fix window overview displaying all apps from various workspaces on the 2nd monitor?
I quite hate it when things come down to gconf-editor. It reminds me of Windows Registry and of all the stuff I hated Windows for and which made me to switch to Linux. Gnome3 now seems to be heading the “Windows” path …
I would prefer either nice GUI for that or simple old-style text configuration I can tweak.
End of Gnome3 bashing.
Very helpful, thanx. I do agree that the default desktop configuration is not good for dual monitors.
Infelizmente no meu eu não achei a pasta “/desktop/gnome/shell/windows” e continua a luta para fazer os dois monitores funcionarem adequadamente.
(Editor: English: Unfortunately I did not think in my folder “/ desktop / gnome / shell / windows” and continues to struggle to do both monitors work properly.)
Well this is my issue, but it really does not totally fix it. I need to pin the open window to a workspace. They move when you right click the titlebar and move to another workspace. However, they do not stay on the workspace you move them to? I run a lot of open windows “tsclient” to virtual machines and I need to “pair” the windows to each other on workspaces across BOTH monitors.
Thanks
Thanks, a handy tip.
there is a bug to get this into gnome-tweak-tool, but they dont want to implement it until various bugs fixed with linked work spaces.
https://bugzilla.gnome.org/show_bug.cgi?id=646912
there is also some discussion at https://live.gnome.org/GnomeShell/DesignerPlayground/MultipleMonitors
Hi,
I just updated my notebook, and now the fix is not working. Any ideas about that?
In gconf-editor the key workspaces_only_on_primay has the “This key has no schema”
Help please
Thanks
fast and cool solution. Thank you!
Hi, thanks for the tip, totally worked for me.
To Silvio, are you using Gconf-editor or Dconf-editor? Because with the dconf-edirot your will not be able to see the necessary keys.
Regards,
I notice that comments on the dev’s blog for the entry where the dev announces he “broke” multi-monitor support on purpose are disabled. Thanks for this info. I can’t tell you how irritated I was to discover when I upgraded to Linux Mint 12 (which uses Gnome 3) that my second monitor didn’t switch when I switched workspaces. Thanks again for helping restore sane functionality.
Pingback: Gnome 3 sucks on dual screens. | Securitron GNU/Linux Blog.
Thanks for the info how to change it when necessary.
But I disagree with you: using multiple workspaces on the second monitor isn’t essential for users who prefer dual monitor settings. Even if I configured the second screen always with multiple workspaces in the past myself, I hardly used more than one on the second screen.
Having the second screen fixed now makes my system faster and I need less memory.
So, at the moment, I am really satisfied with this standard setting.
But thanks for showing anyhow.
Very helpful, great! I’ve linked it on my personal blog with your credits.
This is why I switched to KDE.
This how to works perfectly for me!!!! Tks a lot!!!
my brain knows where to look for things again! Thanks
Thank you _SO_ much. Just FYI, life isn’t any better in the land of KDE. Worse, actually. Anyway, thank you!!
Thanks a bunch, If it wasn’t for you I would have to go back to fluxbox! Which is not at all a bad alternative but since we are living in 2012 I figured I had to convert to something a little bit more modern.
Nice!
Do you know how to set the second monitor as a workspace but not a extended of primay monitor.
Regarding your update for Gnome 3.3/3.4, that setting can still be changed graphically by using dconf-editor instead.
Works great on Mint12. Thanks!
Thanks.
But there is no need to log out and in again, simply restart the gnome shell with Alt-F2, r, enter
Pingback: GNOME 3 multimonitor trouble | kepica Blog
>> “Basically, in GNOME 3, for some reason, they decided the typical use case was for the secondary monitor to stay fixed when switching workspaces, which is the complete wrong setup for someone using dual monitors.”
Actually this is exactly the behaviour I want from my dual monitor setup. People have different needs, you see. But nice tutorial, though. I hate how gnome hides these settings from the actual settings center
Thanks!! I was going crazy about this.
Pingback: Fedora 17 Tweaks « linux-well
Anyone know if this is possible on Unity?
Thanks!
awesome post! thanks! was driving me nutz as well
Just an update for all following this thread, Using Gnome 3.4.0 and Configuration Editor 3.0.1 now does not have /desktop/gnome/shell/windows
use instead the dconf editor and drill down to /org/gnome/shell/overides and uncheck workspaces_only_on_primary there. Works like a charm.
DM
Dale Muhlethaler! Thanks for this one i was looking for shell also and it wasnt there. Thanks a lot
dconf-editor
/org/gnome/shell/overides and uncheck workspaces_only_on_primary there.
Note that this also works for Gnome version 3.6 on ubuntu.
thanks
J
I did not find “workspaces_only_on_primary” anywhere in gconf-editor. I found it in gnome-tweak-tool, “advanced settings”, under “shell”. There is also a “Dynamic workspaces” switch under “shell”.
hmm.. how about having independent workspaces on different screens? like you jump in between workspaces on each screen separately? does gnome have something like this? I think KDE does…
I actually like switching between the 2 options, so I created a keyboard shortcut to be able to do just that. Someone should really create an extension to do this. I might do it once I get some free time.
Here is the script I created to switch between turning the option on and off in gsettings.
http://pastebin.com/ZgRY8pFr
For my PC, I make this executable and create a keyboard shortcut to toggle it on and off. Enjoy!
I have to admit, I expected James’ comment to be an April Fool’s joke… but it’s not. Nice work and thanks for sharing.
-thanks very much for the solution
// add info:
-execute command as a normal user NOT as a root!