What other systems does this work for? I assume LXDE and XFCE for sure, but I would like to in future make this a guide less exclusive to MATE. Thanks in advance for the input!
There are other posts which highlight some aspects of this guide but the intent of this post is to put it all together in a way which enables a third-party interface feature.
Work was performed on Manjaro MATE 20.0.1 — A community-developed variant of Manjaro. If trying to perform the operations in this guide on other Arch systems with GTK2 / GTK3 environments without a native hot corners feature, your mileage may vary and thus, I may be unable to assist you.
If coming from a previous system which had Compiz, or Mac OS X where you had hot corners and Exposé and are dedicating yourself to the MATE desktop, you may be missing some beloved features. You might not even want the bloat which comes with Compiz and its complementing packages, rather instead just wanting this particular feature. The aim of this article is to enable the capability of not just having a Exposé-like feature, but also having it enabled by moving the cursor to a display corner.
Some systems may have the software exhibited in this guide. You should check to see if you already have this software using the following commands:
whereis skippy-xd whereis brightside
Some software comes from the Arch User Repository. Have AUR enabled before reading this.
To install the relevant software for the features explained above, use the following commands:
sudo pacman -S skippy-xd pamac build brightside
Not all systems have
pamac, but most Manjaro systems do. If these instructions are not valid for your system and you know better, then perform as such to install
For Pacman, simply accept the transaction. Pamac will ask a few questions — Just say no to editing build files and yes to commiting transaction. Input your account password when requested.
For an initial run to test, these two commands are all that you need. Run them any way you wish:
skippy-xd --start-daemon brightside
The only thing you need to touch is Brightside's properties which, well, is accessible from
brightside-properties and also from Brightside's context menu which shows in your system tray as Screen Actions. To make it so
skippy-xd executes, follow this procedure:
- Edit Screen Corners actions
- Enable one of the four corners
- Select for target corner Custom action...
On entering region
On leaving region
Terminate above application
- On entering region
Then give it a test. If you see a generic gears icon with a timer bar in your desktop's OSD, then you've failed to modify the custom action properly. Otherwise,
skippy-xd should let you pick a window you wish to interact with.
Once you confirm everything is working, then add to
$HOME/.config/autostart launchers for each program, or use
mate-session-properties to create launchers which will execute automatically. For each, simply use the actions used previous to start the two applications which will run in tandem to provide exposé-like functionality.
Bonus: Lock session and turn off the display
Since you can enable any corner to do anything, choose another corner you don't engage with too often and use the following command for entering that region:
sh -c 'sleep 1s && mate-screensaver-command -al && xset dpms force off'
Mild disorientation may occur if you are using
skippy-xd for the first time — it will always snap to the middle of the last active window and always snap to middle on any selected window. After a slight breaking-in period, you should grow familiar and comfortable with this functionality.
This software also crashed on me once — Don't go too fast with it, and it seems to be fine. You can re-enable the software again simply by executing
skippy-xd --start-daemon as it would usually from autostart.
Added sleep to the bonus command since for many people having it act instantly would be an issue, and it coincides nicely with the timer bar
brightside produces in the OSD.
Also changed "Progress bar" to "Timer bar" because that's exactly what it is.
My previous guide about this concept for Ubuntu MATE
Where I read about Skippy originallly