Add a corner-activated window picker for Marco

:ubuntu_mate: Introduction

If you dislike Compiz that much, you don't wish to ever use it despite Compiz having hot corners and its own window picker, as well a whole bevy of other useful productivity features, then you'll be pleased to know there is an alternative to that if you wanted just a means of picking windows with previews which is very easy to install, and easy enough to implement.

The title is slightly misleading because two programs are in effect here, but after following this tutorial you'll have a means of assigning a window picker to a hot corner, and they'll work together seamlessly.

:book: Glossary

Since @ouroumov mentioned a need for it, may as well include this. Images to come at a later date (i.e. when I feel like it);
Window picker: Also Window chooser or Window selector, a software that allows for the selection of windows, with or without window previews.
Hot corner: A corner of your screen dedicated to activate a task on hover.

:question: Rationale for use

If you don't want to use Compiz but have something similar to Exposè, then below is a possible solution. Some people like a super-clean, super-minimal desktop, and having a means to choose windows easily with large output and image previews may be something that people looking for a minimalist setup may want.

:basketball_man: Skipping around

:warning: Special information for Eoan Ermine

You need to download a bunch of files, normally for Brightside to be installable. To avoid giving Rhonda of Ubuntu Packages any more grief, rather than sharing the files directly I will just share this archive which will contain everything you need;

I am not entirely sure when this began to become an issue, my guess is dependencey problems began after Cosmic. I will test and further append onto this later. At the moment, that archive provides:

  • brightside
  • libbonobo2-0
  • libbonobo2-common
  • libbonoboui2-0
  • libbonoboui2-common
  • libgnome2-0
  • libgnome2-bin
  • libgnome2-common
  • libgnome-2-0
  • libgnome-keyring0
  • libgnome-keyring-common
  • libgnomeui-0
  • libgnomeui-common
  • libgnomevfs2-0
  • libgnomevfs2-common
  • liborbit-2-0
  • multiarch-support

Extract the entire contents and install them. Easiest if handled in a separate directory, using x-terminal-emulator (or a terminal emulator of preference) to cd into that directory then perform sudo apt install *.deb and install them all at once.

For this, two programs are required; skippy-xd and brightside. The former is not installable by default, so add the skippy-xd repo as follows;

:arrow_up: The Ubuntu Budgie team has the latest version of skippy-xd and as such, this segment of the guide has been modified with this new information.

:heavy_dollar_sign: In x-terminal-emulator:

sudo add-apt-repository ppa:ubuntubudgie/backports
sudo apt update

Once you've added the PPA for Skippy XD, both programs can be installed;

:heavy_dollar_sign: In x-terminal-emulator:

sudo apt install skippy-xd

:install: You will already have installed Brightside using contents of the archive above.

You can add in skippy-xd --start-daemon as a command in mate-session-properties or you can make a new autostart entry as follows;

:spiral_notepad: In your preferred text editor @ ~/.config/autostart/skippy-xd.desktop

Exec=skippy-xd --start-daemon
Name[en_US]=Skippy XD
Name=Skippy XD
Comment[en_US]=Executes the Skippy XD window picker daemon.
Comment=Executes the Skippy XD window picker daemon.

When finished, save as skippy-xd.desktop in ~/.config/autostart. You can make this autostart entry appear however you like, but only the command (Exec) is what matters.

:star2: Making it shine

The last part is a GUI bit I can't avoid, so bear with my explanation;

  • Open brightside-properties
  • Enable any corner you'd like to use
  • For that enabled corner, at the dropdown menu select Custom action...
  • Upon selecting it, a dialog box will pop up.
    On entering region: skippy-xd --activate-window-picker
    On leaving region: Terminate above application

To test, run skippy-xd --start-daemon manually and go to the corner you activated to try it out. If all you see is a popup with a generic gears icon but no action, then you did it wrong. If you did it right, then next time you sign in, Skippy XD should run automatically as daemon and wait for you to put your mouse in the corner you specified for it to display the window picker.

:heavy_plus_sign: Other information

Skippy XD will position your cursor on the centre of the last window you were at. Bear that in mind; you may become slightly disoriented when first using it.

:information_source: Information sources

Thanks @Pegel for the update.


Word corrections and cleanup so I don’t look like a noob at English.

So I like looking like a noob.
What’s a window picker? What does corner-activated means? What’s a hot corner?
Do you have like, a screenshot maybe?

I've got following error after install the PPA
Err:18 bionic Release
404 Not Found [IP: 80]
any one have any idea? may bee new PPA?

I was try another method and successfully install the brightside and skippy-xd

use another PPA that still supporting skippy-xd
sudo add-apt-repository ppa:ubuntubudgie/backports
sudo apt install skippy-xd

install brightside from package core here brightside.deb

install other dependencies that brightside needed :
libbonoboui2-0 libbonoboui2-common libglade2-0 libgnome2-0 libgnome2-bin libgnomecanvas2-0 libgnomecanvas2-common libgnomeui-0 libgnomeui-common libwnck-common libwnck22


I revamped the appearance of the thread, since it seems like I had a popular link here (which I am not even sure if I removed) but after seeing the above, I am spurred on to find a solution which works to match the refreshed appearance. Expect an update to the OP soon with good information for people on 19.10 who still want this.

I have published once again the archive for this software with a different copy of libbonobo2-0 so there shouldn't be any errors associated with it. If there are, message me — I'll see what I can do then.

1 Like

Brightside isn't provided by Ubuntu Budgie in Backports — I checked their backports PPA. So I removed the extra bit about if you have Brightside because Brightside's only available in my archive following the guide.