egmde: updated features
While egmde is still not ready for use as a lightweight desktop, I’ve been experimenting with using it for development to see what issues are encountered. As a result, I’ve made a few updates to egmde recently:
- Keyboard shortcuts to dock window to left or right
- Keyboard shortcut to disable all keyboard shortcuts
- Slow exit when apps are open
- Optional support for workspaces
- Optional support for “shell components”
These are available in the snap or by building master. They work slightly better with the development version of Mir on this snap’s edge
channel, but can be used with the current Mir release on the snap’s beta
channel.
Keyboard shortcuts to dock window to left or right
Ctrl-Alt-Left
/Ctrl-Alt-Right
There’s a new feature to dock the active window to the left or right of the screen. If you press Ctrl-Alt-Left
the current window will be docked to the left (and with Ctrl-Alt-Right
it will be docked to the right). If the window is already docked then it will alternate between 1/2, 1/3 and 2/3 of the available display area.
Keyboard shortcut to disable all keyboard shortcuts
Ctrl-Alt-Del
When experimenting with developing egmde and Mir on egmde I would often run egmde on egmde and then discover that keyboard shortcuts were processed by the host shell and not the shell I was testing. I implemented a way to disable (or re-enable) all keyboard shortcuts. Ctrl-Alt-Del
will stop the host shell processing any keyboard shortcuts (window switching, app launcher, etc.) until it is pressed again.
Slow exit when apps are open
Ctrl-Alt-BkSp
When experimenting with developing egmde and Mir on egmde I would often run egmde or miral-shell on egmde and press Ctrl-Alt-BkSp
intending to close the shell I was testing only to close the host shell (and the session with all the apps I was running). While disabling all keyboard shortcuts (above) is a partial solution, it’s also too easy to exit with other apps running.
The solution I’ve implemented is that Ctrl-Alt-BkSp
works immediately if there are no apps running, but you need to keep the key pressed if there are apps running.
Optional support for workspaces
Being able to switch between workspaces containing different sets of applications has long been a feature of the Linux desktop. And is easy to implement with Mir. Egmde now has support for this, just add the following line to the configuration file:
$ grep no-of-workspaces ~/.config/egmde.config
no-of-workspaces=4
You can choose any number of workspaces from 1 to 32, but 4 seems sensible to me.
To cycle back and forth through your workspaces: Ctrl-Alt-Up
& Ctrl-Alt-Down
Optional support for “shell components”
It is common practice to run programs as part of a shell that have access to features that normal applications should not be using. With Wayland these features come as specialized extensions and, while Mir implement some specialised extensions, they are not enabled by default. ( See Waybar on Mir for an example).
Egmde now implements a configuration option that allows “shell components” to be configured. These are granted access to specialized extensions and launched automatically when the shell starts up.
If, for example, you have Waybar installed (and, ideally, configured as in the linked article), you just need to tell egmde it is a shell component for all this goodness to happen:
grep shell-extensions ~/.config/egmde.config
shell-extensions=waybar
You can have multiple shell extensions: shell-extensions
will accept a colon separated list.