ubuntu / ubuntu/Tiling-Assistant

Drag-to-tile stops working after suspend; keyboard shortcuts keep working

Open
#468 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
JavaScript
Stars
1.3k
Forks
78
PR merge metrics
No merged PRs in 30d

Description

Describe the bug

After resuming from suspend, dragging a window to a screen edge or corner no
longer triggers tiling. The preview never appears and the window simply stays
where it is dropped.

Keyboard shortcuts (<Super>Left / <Super>Right) continue to work normally,
so the extension is still running and still handling input — only the
drag/pointer path is dead.

Disabling and re-enabling the extension does not fix it. Logging out and
back in does.

Steps to reproduce
  1. Boot, log in, confirm drag-to-tile works.
  2. Close the lid (suspend) or lock the screen, then resume.
  3. Drag a window to a screen edge.
Expected behaviour

Drag-to-tile works after resume, as it does after a fresh login.

Actual behaviour

No preview, no tiling. Keyboard shortcuts unaffected.

Diagnostics

The extension itself reports as healthy after resume:

$ gnome-extensions info tiling-assistant@ubuntu.com
Version: 54
Enabled: Yes
State: ACTIVE

org.gnome.mutter edge-tiling is false, which is expected — the extension
overrides it and records the original in overridden-settings:

$ gsettings get org.gnome.shell.extensions.tiling-assistant overridden-settings
{'org.gnome.mutter.edge-tiling': <@mb nothing>,
'org.gnome.mutter.keybindings.toggle-tiled-left': <@mb nothing>,
'org.gnome.mutter.keybindings.toggle-tiled-right': <@mb nothing>}

Key data point: with the extension still enabled and in this broken state,
setting org.gnome.mutter edge-tiling true restores Mutter's own drag-to-tile
immediately, and it works correctly. So pointer tracking and drag handling in
Mutter are fine after resume — the failure is confined to the extension's own
drag path.

dconf watch /org/gnome/mutter/ during a lock/unlock cycle shows the expected
override being removed and reapplied (unsetfalse), i.e. the extension is
correctly re-initialising its settings. It is only the drag behaviour that does
not come back.

The journal contains one possibly related error:

JS ERROR: TypeError: can't access property "get_transition", this.actor is null

System information
  • Ubuntu 26.04.1 LTS (clean install)
  • Wayland session (26.04 is Wayland-only)
  • GNOME Shell 50.1
  • Extension: Ubuntu Tiling Assistant (tiling-assistant@ubuntu.com) version 54,
    bundled, no separate deb package
  • Hardware: Lenovo ThinkPad X1 2-in-1 Gen 11 (convertible, touchscreen + pen),
    Intel Core Ultra 7 355, kernel 7.0.0-31-generic
  • Single internal display, 1920x1200, scaling 100%
  • Input: touchpad (also reproducible with TrackPoint)
  • suspend-then-hibernate configured; reproducible after plain suspend as well
Possibly related

The convertible aspect may matter: this machine reports SW_TABLET_MODE and has
a working accelerometer, so the shell handles device-mode transitions that a
regular laptop does not. I have not yet isolated whether the trigger is suspend
itself or a tablet-mode transition around it — happy to test that if useful.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file, test, or entry point is named in the report. Start by tracing the extension's drag/pointer lifecycle across suspend, resume, lock, and tablet-mode transitions, then inspect the journal error about a null actor. Done means the drag preview and tiling return after resume while keyboard shortcuts continue working.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, linux
Domain
desktop, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.