Makes Gnome's OnScreen Keyboard more usable.
Features:
- Includes additional buttons: Arrow keys, Esc, Tab, Ctrl, Alt, F1-12
- Supports key combinations like
Ctrl + C
,Alt + Tab
,Ctrl + Shift + C
, etc. - Configurable keyboard size (landscape/portrait)
- Statusbar indicator to toggle keyboard
- Works in Gnome password modals
Currently, the following layouts have extended keys: CH+FR, CH, DE, ES, FR, IT, RU, UA, US.
This extension is a fork of SebastianLuebke/improved-osk-gnome-ext.
https://extensions.gnome.org/extension/4413/improved-osk/
Clone the repo, change into its root directory, run package-extension.sh
,
install and enable the extension:
git clone https://github.com/nick-shmyrev/improved-osk-gnome-ext.git
cd ./improved-osk-gnome-ext
./package-extension.sh
gnome-extensions install [email protected]
gnome-extensions enable [email protected]
After enabling extension, log out and back in to reload Gnome Shell.
If the layout you're using does not have the extended keys, let me know, and I'll add them. Or, feel free to modify it yourself (see /src/data/osk-layouts dir) and make a PR.
You'll need to follow the manual installation process from README,
but before running package-extension.sh
you'll have to make changes to your preferred layout
(see osk-layouts), then continue with the installation process.
To install the extension on an unsupported Gnome version, you can either add desired version number to metadata.json
file and proceed with a manual installation,
or disable extension version check and then install from extensions.gnome.org:
gsettings set org.gnome.shell disable-extension-version-validation true
Here are some of the test cases:
- OSK shows up when you click/tap text inputs and/or terminal window
- OSK can type lowercase chars
- Tapping "Shift" switches OSK to uppercase layer
- OSK can type uppercase chars
- After typing an uppercase char, OSK switches back to lowercase layer
- Once switched to Numbers layer, it stays latched until user switches to another layer
- Long-pressing characters like "1" shows a popup with additional chars, typing those chars works
- Tapping "Ctrl", "Alt", "Shift" adds highlight to those buttons
- "Ctrl" and/or "Alt" remain latched when "Shift" is toggled on/off
- Key combinations like "Ctrl + C", "Ctrl + X", "Ctrl + V", "Ctrl + A", "Ctrl + Z", "Ctrl + Shift + Z", "Ctrl + Shift + V" (in terminal), "Alt + Tab" work as expected
- Esc, F1-12 keys work as expected
- OSK works in Gnome password modal
- OSK works on lock-screen
- OSK settings for landscape/portrait height work
By default, the keyboard will pop up on touch input events. You can use "Force touch-input" option in extension preferences to force the OSK to appear on non-touch events.
Gnome's default on-screen keyboard, on which this extension is based on,
uses ibus
package, make sure you have it installed.
The keyboard uses unicode characters, try installing ttf-symbola
on archlinux (AUR)
or ttf-ancient-fonts-symbola
on ubuntu/debian