feat(gnome): keep OSK from covering terminals #105

Open
lost-rob0t wants to merge 6 commits from agent/gnome-osk-workarea into master
lost-rob0t commented 2026-08-22 16:09:06 +00:00 (Migrated from github.com)

What

  • add a small GNOME Shell extension for tablet mode
  • when the GNOME OSK is visible and a terminal is focused, reserve the keyboard area as workspace instead of letting it cover the terminal
  • suppress GNOME's built-in whole-window upward translation for terminal windows so maximized terminals resize against the OSK work area
  • leave non-terminal apps on GNOME's normal OSK behavior
  • install and enable the extension through Home Manager without replacing existing enabled extensions
  • enable it for unseen@logos

Verification

  • JS syntax and extension metadata validation in CI
  • unseen@logos Home Manager evaluation added to CI
  • GNOME 46/current shell internals checked for keyboardActor, chrome tracking, strut updates, and keyboard window animation hooks

A real tablet-session smoke test is still required because CI does not run a GNOME Shell compositor.

## What - add a small GNOME Shell extension for tablet mode - when the GNOME OSK is visible and a terminal is focused, reserve the keyboard area as workspace instead of letting it cover the terminal - suppress GNOME's built-in whole-window upward translation for terminal windows so maximized terminals resize against the OSK work area - leave non-terminal apps on GNOME's normal OSK behavior - install and enable the extension through Home Manager without replacing existing enabled extensions - enable it for `unseen@logos` ## Verification - JS syntax and extension metadata validation in CI - `unseen@logos` Home Manager evaluation added to CI - GNOME 46/current shell internals checked for `keyboardActor`, chrome tracking, strut updates, and keyboard window animation hooks A real tablet-session smoke test is still required because CI does not run a GNOME Shell compositor.
This pull request has changes conflicting with the target branch.
  • .github/workflows/nix.yml
  • nix/home-manager/mods/default.nix
  • nix/home-manager/systems/logos/home.nix
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin agent/gnome-osk-workarea:agent/gnome-osk-workarea
git switch agent/gnome-osk-workarea

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff agent/gnome-osk-workarea
git switch agent/gnome-osk-workarea
git rebase master
git switch master
git merge --ff-only agent/gnome-osk-workarea
git switch agent/gnome-osk-workarea
git rebase master
git switch master
git merge --no-ff agent/gnome-osk-workarea
git switch master
git merge --squash agent/gnome-osk-workarea
git switch master
git merge --ff-only agent/gnome-osk-workarea
git switch master
git merge agent/gnome-osk-workarea
git push origin master
Sign in to join this conversation.
No description provided.