Skip to content

Empty scratchpad forwards keyboard input to the underlying window #9437

Description

@JoNil

What's wrong?

When the scratchpad is shown while it contains no windows, keyboard input can still be delivered to the tiled window underneath it. For example, pressing Escape affects the underlying application while the empty scratchpad remains visible.

Steps to reproduce

  1. Make sure special:scratchpad contains no windows.
  2. Focus a tiled application that reacts visibly to Escape.
  3. Press Super + S to show the scratchpad.
  4. Press Escape.
  5. Observe that the underlying tiled application receives the key and the empty scratchpad remains shown.

Expected behavior

When the scratchpad is empty and visible, pressing Escape should dismiss it instead of being forwarded to the underlying tiled window.

This behavior should be limited to the empty state. If the scratchpad contains a focused window, Escape should continue to be delivered normally to that window.

More generally, showing an empty scratchpad should not cause keyboard input to interact unexpectedly with an obscured underlying window.

Possibly relevant

The stock Super + S binding directly invokes hl.dsp.workspace.toggle_special("scratchpad"). There does not appear to be any empty-state input handling that can intercept Escape and hide the special workspace.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions