81

How can I remove the Workspace Switcher launcher from the Unity dock?

Jorge Castro
  • 71,754
mike
  • 811

8 Answers8

70
  1. To disable workspaces completely
  2. To just remove the icon but still preserve workspaces

    • Open the terminal and execute:

      gsettings get com.canonical.Unity.Launcher favorites
      

    the output will be something like,

    ['application://nautilus.desktop', 'application://chromium-browser.desktop', 'application://ubuntu-software-center.desktop', 'application://ubuntuone-installer.desktop', 'application://ubuntu-amazon-default.desktop', 'application://UbuntuOneMusiconeubuntucom.desktop', 'application://gnome-control-center.desktop', 'unity://running-apps', 'unity://expo-icon', 'unity://devices']
    

    To remove the workspaces icon from the dock you should just take out 'unity://expo-icon' from that list. Taking it out, for this case the command should be:

    gsettings set com.canonical.Unity.Launcher favorites "['application://nautilus.desktop', 'application://chromium-browser.desktop', 'application://ubuntu-software-center.desktop', 'application://ubuntuone-installer.desktop', 'application://ubuntu-amazon-default.desktop', 'application://UbuntuOneMusiconeubuntucom.desktop', 'application://gnome-control-center.desktop', 'unity://running-apps', 'unity://devices']"
    

    (Don't forget the double quotes for the list on gsettings set)

Currently I'm using eight workspaces with the help of Unity Tweak Tool. I like to have multiple workspaces, but didn't like the unremovable Unity Launcher icon that much, even more because it could only resemble four workspaces while I was using eight instead.

oblitum
  • 1,687
  • 2
  • 16
  • 27
45

For 14.04

Drag the undesirable icon on the trash can.

For 13.04

By default, the workspace-switcher is not enabled in the Launcher. This setting is toggleable via the Appearance - Behaviour tab in System Settings

Untick the option shown in the following picture to remove the workspace-switcher icon.

enter image description here

12.10

If you are prepared to work with just one virtual desktop (i.e. no additional workspaces) then the following will work for 12.10 and later.

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ hsize 1
gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ vsize 1

Before:

enter image description here

After:

enter image description here

fossfreedom
  • 172,746
  • 3
    this actually worked for me on 12.10 and seems a crap load easier than the top answer – Eric Nemchik Jan 11 '13 at 13:50
  • 8
    Your solution for 13.04 isn't exactly a solution. Disabling workspaces will completely disable them, not just remove the icon from the launcher. Some people are going to want to leave workspaces enabled without the icon in the launcher. – Seth Sep 17 '13 at 19:14
  • Agree with @Seth - if you untick the "Enable workspaces" option it seems to reset your workspace preferences (for example the number of panels you have horizontally and vertically). I'm just looking to remove the icon, since Hotcorners is enough for me. – halfer Apr 04 '14 at 07:03
  • 1
    12.10 solution gives: No such schema 'org.compiz.core' – Bryce Sep 04 '14 at 06:21
  • @Bryce the same here, how did you solve it? – Pablo Matias Gomez Oct 29 '14 at 15:56
  • 1
    Is there any way to get it back in 14.04 after dragging it to the trash can though. – xji Feb 20 '16 at 09:36
  • 1
    In 14.04, these steps do not disable the feature on my box. The short cut keys Ctrl-Alt-Left/Right Arrow still move around to different workspaces. Even after disabling it in the System Settings > Appearance. – Ed J Mar 10 '17 at 07:21
14

For Ubuntu 11.10 & Ubuntu2D

Edit the file /usr/share/unity-2d/launcher/Launcher.qml with your favorite text editor, ie:

sudo nano /usr/share/unity-2d/launcher/Launcher.qml

For Ubuntu 12.04 & Ubuntu2D

Edit the file /usr/share/unity-2d/shell/launcher/Launcher.qml with your favorite text editor, ie:

sudo nano /usr/share/unity-2d/shell/launcher/Launcher.qml

Locate these lines

    Component.onCompleted: {
        items.appendModel(bfbModel);
        items.appendModel(applications);
        items.appendModel(workspaces);
        items.appendModel(devices);
        shelfItems.appendModel(trashes);
    }

And change them to

    Component.onCompleted: {
        items.appendModel(bfbModel);
        items.appendModel(applications);
/*        items.appendModel(workspaces);*/
        items.appendModel(devices);
        shelfItems.appendModel(trashes);
    }

Ubuntu

Unfortunately the desktop switcher is hard coded to unity and cannot be removed without making source code modifications.

Make sure you have the package dpkg-dev installed

sudo apt-get install dpkg-dev

To modify the code and compile it your self you need to do the following

mkdir ~/code
cd ~/code
mkdir build
cd build
apt-get source unity
cd unity*

Open plugins/unityshell/src/LauncherController.cpp with your favorite text editor, ie:

nano plugins/unityshell/src/LauncherController.cpp

Locate the lines

num_workspaces_ = WindowManager::Default()->WorkspaceCount();
if (num_workspaces_ > 1)
{
  InsertExpoAction();
}

Change them to

/*num_workspaces_ = WindowManager::Default()->WorkspaceCount();
if (num_workspaces_ > 1)
{
  InsertExpoAction();
}*/

Build the package

sudo apt-get build-dep unity
debuild -us -uc

Wait for it to finish and install when done

cd ..
sudo dpkg -i unity*.deb libunity*.deb netbook*.deb
Rahul Virpara
  • 11,720
Bruno Pereira
  • 73,643
  • 1
    Do not use the method with Unity 2D 12.04. Afterwars you cant even start unity. I had to go into another desktop-enviroment and revert the changes. – Paul Woitaschek Jun 02 '12 at 18:57
  • sorry but, for Unity, I should warn people are better of checking the other answers. – oblitum Apr 27 '13 at 14:15
  • 1
    For what versions? What is the problem with this solutions? – Bruno Pereira Apr 27 '13 at 19:45
  • @BrunoPereira, check my answer for example, I suspect the gsettings trick work in several versions. No need for compiling stuff, and also, that's an issue with your answer because you assert there's no other way out but patching. – oblitum May 03 '13 at 16:56
  • Thanks for the solution! Other people here say it breaks Unity2D. Just make sure you did it right. The first time I tried, I broke Unity2D too because I addicently swapped the last * and /. After fixing it, it worked. (12.04) – jobukkit Sep 12 '13 at 15:02
  • Cool @Jop, you saved me the time of installing 12.04 to test an answer I wrote almost 2 years ago :) (thx) – Bruno Pereira Sep 13 '13 at 06:02
12

For Ubuntu 11.04/11.10/12.04 (does not work in Unity 2D):

  1. Install Compiz Config Settings Manager Install compizconfig-settings-manager from the Ubuntu Software Center

  2. Open Compiz Config Settings Manager from Dash

  3. Goto General Options and Desktop Size tab

  4. Change Horizontal Virtual Size to '1', the Vertical Virtual Size can be any number.

  5. Restart Unity by opening Run Command (Alt-F2) and typing unity

compizconfig

Source

Cas
  • 8,557
7

11.04

Currently there's a handy little bug in unity that allows you to do this. Open a up a terminal and run 'gnome-panel'. Once gnome panel is running, add the 'workspace switcher' applet to the panel. Open up the workspace switcher preferences and select 1 column and 4 rows. Log out and back into unity, and viola! The workspace switcher is missing now.

Yes I know, it's a somewhat annoying way of removing it if you use workspaces, but it's the only way i know of right now..

enter image description here

To get the Unity launcher switcher back, simply open the gnome-panel in terminal again, and go back to a 2 X 2 grid. Logout and log back in.

Danny
  • 87
2

12.04

This is now easy, thanks to an addition to Isaac Joseph's lovely Unity Revamped (also brings back dodge-windows and dodge-active-window and gives a few other options).

Add the repository with your software manager of choice or:

sudo add-apt-repository ppa:ikarosdev/unity-revamped

This is now an alternative source of unity, that'll report itself as just slightly ahead of the canonical one in version. Upgrade and you'll have this new version:

apt-fast update && apt-fast dist-upgrade

Or if you don't use apt-fast, then:

sudo apt-get update && sudo apt-get dist-upgrade

Or just use the software updater.

Log out and in, and go to ccsm. The Ubuntu Unity Plugin will now have, on the "experimental" tab an option labelled 'Show "Expo Icon" in the launcher', that's enabled by default. Disable this and the icon is gone.

Disabling the icon doesn't disable the Super+S binding, should that be your preferred way of switching workspaces.

Jon Hanna
  • 763
1

12.04

Install MyUnity from Software Center.

Open it, go to Desktop, decrease (move the bar to the left) for H Desktop and V Desktop, both to minimal.

Restart.

0

For 14.04 and newer LTS releases with Unity.

Launch Settings->Appearance and check the boxes as shown below. workspaces

The launcher icon to acces the switcher via mouse looks like this:

enter image description here

Elder Geek
  • 36,023
  • 25
  • 98
  • 183