91

Downloaded Ubuntu tweak and set window controls to the right side. Only some programs follow the rule. Pidgin as an example has window controls on the right. But Chrome, Thunderbird, Geany, still have controls on the left.

How can I move ALL window controls(close/min/max) to the right (or left)?

Braiam
  • 67,791
  • 32
  • 179
  • 269
Matt Kaye
  • 1,019

12 Answers12

69

14.04

Short answer:

It seems that Canonical went the totalitarian way and ordered that users should not be allowed to change the buttons position (you can find more technical details of this change on the bottom of this post).

As for now the only way to have windows buttons on the right side in 14.04 is to switch from Unity to the Gnome Flashback session (what I personally recommend). More details on how to do that are presented below.

Switching to Gnome Flashback:

Open terminal and run the following commands:

sudo add-apt-repository universe
sudo apt-get update
sudo apt-get install gnome-session-flashback

Next logout and select Gnome Flashback session in login manager.

enter image description here

You can select between Metacity and Compiz managers. Metacity is more lightweight, however it lacks some effects. With Compiz you will get more similar experience to Unity. You can speed up Compiz by turning off animations plugin (use compizconfig-settings-manager).

While in Gnome Flashback session, to move buttons to the right open a terminal and enter this command:

gsettings set org.gnome.desktop.wm.preferences button-layout 'menu:minimize,maximize,close'

But I want to still use Unity:

As I wrote in technical details, Canonical hardcoded buttons position in their Unity plugin. Changing of this needs this plugin to be patched by some third-party programmers. As for now such a patch is not available. (When such a patch will be published, please edit this answer and post it here.)

Technical details of the change:

Unity uses Compiz as its window manager. They used Compiz plugin called GTK Window Decorator to draw window borders and titlebars. This plugin draws borders basing on the Metacity theme, which itself is highly configurable. That is why until 14.04 we had been changing Metacity settings in order to change buttons position [1].

Now they have resigned from using gtk-window-decorator and implemented window decoration right in their Unity Compiz plugin. They deliberately hardcoded buttons position on the left side and do not expose any position switch to the user, in order to maintain "consistent user experience", as they call it [2].

pomsky
  • 68,507
  • 14
    Why would they do this? Every single time I want to minimize or close a window I have to look around for the buttons. It's not just Windows that sets the precedent for this, it's the whole Western ltr convention. – thepeer May 29 '14 at 13:47
  • 3
    Just a note to say you can still use Compiz (and Wobbly Windows!) with Gnome Flashback. Really, the only thing you lose is the Dash. – Terence Eden Jul 22 '14 at 13:08
  • 9
    Hardcoding these buttons on the left side is bad news for regular right handed user. I like Dash functionality, and won't go back because of these buttons, but it's just yet another stupid decision toward blindly copying OSX design - copycats. – zetah Oct 27 '14 at 08:18
  • 2
    @PiotrJurkiewicz Why do you personally recommend Gnome Flashback session? I am curious because I discovered that in my case it is much much faster than Unity. Am I imagining this? Are there additional reasons to switch to Gnome Flashback session? Thanks. – Bill The Ape Jan 09 '15 at 02:21
  • thanks. with the gsettings command, i was able to shift the buttons to the right in gnome flashback. – Silver Moon Feb 05 '15 at 11:56
  • 2
    +1 for your insightful posting; minus f***ing 1000 for Canonical. – GhostCat Jul 22 '15 at 11:40
  • 1
    Any update for 16.04? – Gustavo Puma Apr 21 '16 at 21:24
  • Forcing something for "consistent user experience" is fine with me (even if I would appreciate a toggle somewhere), but then why the fuck do gedit or nautilus still have their min/max/close buttons on the right? – Benoit Duffez Jan 26 '17 at 08:43
  • Checked for 16.04 and the answer works. – infoclogged Aug 15 '17 at 19:19
  • This answer should be updated to 18.04. It seems that there is no need for GNOME Flashback -- the code works as-is. – slhck Jun 11 '18 at 13:02
49

12.04 until 13.10

from 12.04 and newer gconfeditor wont work use this:

gsettings set org.gnome.desktop.wm.preferences button-layout ':minimize,maximize,close'

14.04

@Piotr Jurkiewicz answer

Alex R
  • 929
33

For Ubuntu 12.10 and lower.

  1. Open terminal
  2. Type: gconf-editor
  3. Go to Apps -> Metacity -> General
  4. Find: button_layout
  5. Change value to: menu:minimize,maximize,close

For Ubuntu 10.10 the string needs to be menu:minimize,maximize,close, with a comma in the end of the string.

  • 1
    Protip: if you delete the colon and forget to add it back, you'll loose your menu bar and it will be really annoying/buggy behavior (the terminal doesn't show any text) until you set it back and restart. – Carrotman Feb 14 '13 at 18:40
  • This does not work in Ubuntu 17.04 either. Anybody help, please. – Alexander Christov Oct 07 '17 at 07:01
27

For 12.04 and 12.10

Unity

Run this command in a terminal:

gsettings set org.gnome.desktop.wm.preferences button-layout ":minimize,maximize,close"

Note that this will only change the position of the window controls of non-maximized windows. The maximized windows will continue to have their window controls on the left in title bar. To set the controls back to being on the left side:

gsettings set org.gnome.desktop.wm.preferences button-layout "close,minimize,maximize:"

GNOME-shell

gsettings set org.gnome.shell.overrides button-layout ":minimize,maximize,close"
jokerdino
  • 41,320
  • 4
    For those who want to move buttons to the left "close,minimize,maximize:" – Yuriy Voziy Oct 23 '12 at 11:18
  • Thank you so much! That makes GNOME Shell SO much more usable for me :D (just moving the 'close' to the left) Now I can close a program and get straight to Activities... – Ads20000 Apr 24 '14 at 20:43
14

You can also download Ubuntu Tweak, which has an easy GUI option to switch the window buttons to the right. It's found under the Windows Manager Settings option, under the Desktop category. Just select the "Right" radio button and you're done.

5

Ubuntu 14.04:

Far more easy than I thought (or remember it was in previous versions)

  1. Install the unity tweak tool
    sudo apt-get install unity-tweak-tool
  1. Open System Tools -> Preferences -> Unity Tweak Tool

  2. On the tab "Window Controls" (last tab) you can now choose between Left or Right.

davidkonrad
  • 731
  • 9
  • 15
  • Thanks +1. That said, unless I use exclusively the command line, I prefer sticking with the tools provided by the GUI environment to which I am sticking. So, another way to install the unity tweak tool: Launcher > Search: tweak > select: Unity Tweak Tool (2nd item in the search results). – Bill The Ape Jan 09 '15 at 02:29
  • No longer works in 16.04, see this bug – Dan Dascalescu Sep 20 '16 at 23:05
  • @DanDascalescu, I believe you already commented that and downvoted 10 days ago. I have specifically and clearly stated Ubuntu 14.04 above, and it will work with ubuntu 14..04 forever. If you for some mysterious reason got the impression that the answer was intended to be a generic solution that should work with any prior and future version of ubuntu, from 4.10 to 22.04 in jan 2021, then I cant help that. – davidkonrad Sep 21 '16 at 00:22
  • Oh, sorry, didn't realize. My vote is locked, but happy to revert it if you make an edit to the post. – Dan Dascalescu Sep 21 '16 at 02:43
  • Didn't work for me. Unity tweak simply doesn't save. – userfuser Feb 03 '17 at 01:02
  • I have the same issue as @userfuser I can open the unity-tweak-tool, and I can choose the "Right", but there is not "save" button, and when I close unity-tweak-tool and reopen it, the option is still the "Left". I'm on Ubuntu 14.04. – ollydbg23 Aug 02 '18 at 01:47
3
gsettings set org.gnome.shell.overrides button-layout :close,minimize,maximize

Try the above command in the terminal (Ctrl+Alt+T). This will work. It actually follows the principle of slicing in Python. You can give close,minimize,maximize: to move the keys to left. Further u can interchange the positions of close,minimize and maximize :)

Anwar
  • 76,649
  • I got an error: No such schema 'org.gnome.shell.overrides'. Would this work in 15.10? – yaakov May 23 '16 at 18:09
  • This is the same answer as jokerdino's but with a syntax error (misses quotes around ":close,minimize,maximize". Also, it no longer works in 16.04 even if you add the quotes. I'd delete the answer if it were mine. – Dan Dascalescu Sep 09 '16 at 22:53
3

For ubuntu 17.10 simply type in terminal:

gsettings set org.gnome.desktop.wm.preferences button-layout 'close,maximize,minimize:'
jazeb007
  • 191
  • Also works in 18.04. It would be better if someone could update the existing highest-voted answer. – slhck Jun 11 '18 at 13:00
2

System>Preferences>Appearance Change the theme to something other than Radiance/Ambiance.

Isaiah
  • 59,344
  • I don't want to change the theme! – User Jul 31 '10 at 17:40
  • 1
    @Shubhkarman If you are using the default theme, and switch the button layout, it will look like crap, because the buttons are designed to be in a certain order. To fix that you could install Ambiance_R (or Radiance_R) http://gnome-look.org/content/show.php?content=123927 – Isaiah Jul 31 '10 at 17:59
  • 3
    Wait... Pynt, it doesn't do that anymore. It used to (early in development) but it was fixed with a patch to Metacity. Now you can put the buttons any order you want, and it'll still look good. – dieki Aug 01 '10 at 01:28
1

I found that the gconf-editor suggestion just reversed the order of the buttons. They remained on the right hand side of the window. To switch buttons to the left hand upper corner, I used System Settings > Ubuntu Tweak > Tweaks > Window. Window Control

Mark D
  • 463
1

Some applications do not adhere to the global window decorations, and Chrome is an example of this behaviour. Right-click its window border and choose "use system window decoration". Pretty much every major application other than Chrome uses the default, system-wide kind, so peobably this is all you will have to do.

Also, I strongly recommend you leave the button order as it is, because this change did not come out of nowhere. For instance, in Unity, maximized windows have their buttons in the top-left corner as well, and this tweak won't change that.

  • I had to restart Chromium for the buttons on the left to show up after switching to "Use system title bar and borders" ([v34] it had no title bar or borders after the switch, so I had to quit it from Launcher). – ᴠɪɴᴄᴇɴᴛ Jul 21 '14 at 14:21
-1

In dconfig Editor go to org>gnome>desktop>wm>preferences>button-layout and change it to :minimize,maximize,close and hit enter.

Be sure that you include the colon before minimize.

I have two laptops using the gnome desktop environment. One I upgraded from 12.10 to 14.04 and the other was a fresh install of 14.04. The upgrade kept the old setting I checked it against the fresh install. It worked when I changed the fresh install.

Prem
  • 11