How to disable window decorations in Cinnamon

cinnamonwindow-decorations

I'm using Cinnamon, but would like to remove all window decorations — I never use them, they only cost screen estate, and moving / resizing can be conveniently done with alt-mouse1 and alt-mouse2.

Is there a way to achieve this?

EDIT: Clarification.

I am using Ubuntu 12.04 with a custom ppa providing Cinnamon. I switched from the default Unity/Compiz combo because Compiz in 12.04 is a painful regression, plagued by bugs, compared to the 10.04 version (see for example this bug). I got impatient waiting for correction of this and other bugs. I achieved the desired effect previously and on my 10.04 workstation with Compiz.

However, as I understand it, Cinnamon is using libmuffin, and not Compiz (correct me if I'm wrong).

I am quite happy with the Cinnamon interface, in especially as the effect I got used to (equivalent to the "scale" plugin in Compiz) works without glitches. Also, I would not like to change the distribution, as I got used to Ubuntu and was very happy with the 10.04 LTS. Getting rid of window decorations is the only thing that is still missing.

Best Answer

Cinnamon cannot disable or remove window decorations, according to this issue on GitHub. The option to remove window decoration is yet to be implemented.

User may instead use any of the workarounds as follows.

Workaround 1 (easy)

Use the smallest font size for window title. Go to System Settings > Appearance - Fonts. Then under Font Selection - Window title font: change the font size from the default 10 to the smallest value 1, then click Select to finish.

Using the smallest window title font in Cinnamon

Assuming the screenshot is pixel-perfect regardless of screen resolution, the height of window decoration was reduced by: 14 pixels in Cinnamon 2.2; 17 pixels in Cinnamon 3.8.

Mint-Y and Mint-X themes compared as a result

Window decoration in Cinnamon seems to use Metacity theme with Mutter/Muffin support; traditional themes do not seem to work. Different combination of themes for window borders and controls may affect the result. Some themes do not reduce the height of window decoration as much as other themes. For example, Mint-Y had worse result than Mint-X.

Limitation: This workaround is theme dependent. Known themes that work well with this workaround are very few: Mint-X, BlueMenta, Greybird.

Workaround 2

Use any utility tool like Devil's Pie or Devilspie2, which can remove window decorations for EWMH-compliant window managers. This will require user configuration to remove window decoration.

For Devilspie2, open a text editor and type the following code.

if (get_window_type()=="WINDOW_TYPE_NORMAL") then
    undecorate_window();
end

Save as file in $HOME/.config/devilspie2 with any name followed by .lua in the filename. Run devilspie2 to see the result. To make the changes persistent at reboot, add the command devilspie2 to Settings > Preferences - Startup Applications.

Undecorate window for Nemo in Cinnamon

With above configuration, all running applications with normal window type will have no window decoration at all. This related post has my answer with details on how to use Devil's Pie and Devilspie2 to remove window decoration by application name instead.

Limitation: This workaround will not work against applications with the client-side decoration a.k.a header bar in GNOME; thus modifying the theme may be the only alternative.

Workaround 3

Modify the theme. Cinnamon window manager, Muffin, supports Xfwm4 and Metacity themes for its window decorations: check /usr/share/themes/THEMENAME directory and look for either metacity-1 or xfwm4 subdirectory.

This answer on Ask Ubuntu had suggested to edit the XML file of the currently used theme:

[...] You can edit

/usr/share/themes/Mint-X/metacity-1

and set all non-zero value properties in the metacity-theme-1.xml (of course you need sudo, to edit something there. A backup is useful.) [...]

The filename may vary depending on which theme in use.

Perhaps theme modification is the only "reliable" way to remove window decoration. The known limitations in other two workarounds seem redundant, except this is a tedious workaround.

Disclaimer: I don't use Cinnamon on daily basis and just explored again recently for experience. I did not verify the third workaround because that will take some time to test.

Tested with Cinnamon 2.2 in Linux Mint 17 (Live) and Cinnamon 3.8 in Linux Mint Debian Edition 3.

Related Question