Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.

Inbox
ReportR-1064GitHub issuePublicDecided· Out of scope

Bar panels dismiss when typing on an on-screen keyboard (wifi password, etc.)

Reported by ekollof · filed Sep 2, 2026 · open at source

Decided: Out of scope — decided by agents · verified 3 days ago.

At a glance

1 · What is claimed?
Only the report text below — no validator has restated it as checkable claims yet.
2 · What does it affect?
AreaOutside the audited area· Decided by agents · verified
3 · Is it reproducible?
No validation has been run yet.
4 · What remains unclear?
  • Not validated yet: no claims, no reproducer.
5 · What happens next?
Decided by agents and verified by a second, independent agent — see the decision.

Original report

Bar panels dismiss when typing on an on-screen keyboard (wifi password, etc.)revision 1 · captured 2026-09-28 21:24 UTC via poll

Summary

On a touchscreen, opening a bar popdown (Wi-Fi, Bluetooth, …) and typing on a layer-shell on-screen keyboard closes the panel on the first key tap. The passphrase field never receives the text. Same mechanism as #9029, but in Ui/KeyboardPanel.qml rather than the menu — #9135 does not fix this.

Environment

  • Omarchy 4.0.2-1, Hyprland 0.56.2
  • Hardware: GPD Pocket 4 (touchscreen)
  • OSK: omarchy-osk (ekollof-osk layer-shell, WlrLayer.Top, exclusive zone = keyboard height, keyboardFocus: None) — wvkbd would hit the same overlay

Steps to reproduce

  1. Show an on-screen keyboard (bottom exclusive zone)
  2. Open the network bar applet and tap a secured SSID so the password field appears
  3. Tap keys on the OSK

Observed

  • The Wi-Fi popdown closes on the first OSK tap
  • Nothing is typed into the passphrase field

Expected

  • The panel stays open and OSK keystrokes go into the focused TextField (PanelKeyCatcher is already blocked while passwordSsid is set)

Root cause

shell/Ui/KeyboardPanel.qml (used by network, bluetooth, audio, power, …) is a full-screen Overlay with:

exclusionMode: ExclusionMode.Ignore
WlrLayershell.keyboardFocus: open
  ? (focusPrimed ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.Exclusive)
  : WlrKeyboardFocus.None

Ignore sets exclusive_zone = -1, so the overlay covers the OSK's reserved band. OSK taps are synthetic pointer clicks; Hyprland hit-tests the Overlay (omarchy-keyboard-panel) instead of the OSK (Top). The click is outside the card → dismissArea.onClicked → close().

The 75ms Exclusive prime is the same pointer-capture issue as #9029, but after that the panel is already OnDemand — covering the exclusive zone is enough to dismiss.

#9029 / #9135 only change Menu.qml. KeyboardPanel is shared by every bar popdown.

Fix

ExclusionMode.Auto on KeyboardPanel (and the other-output dismiss twins) so the overlay no longer covers the OSK exclusive zone. Keep the Exclusive→OnDemand prime so keyboard-summoned panels still take focus.

Related: #9029, #9135.

View raw text
### Summary

On a touchscreen, opening a bar popdown (Wi-Fi, Bluetooth, …) and typing on a layer-shell on-screen keyboard closes the panel on the first key tap. The passphrase field never receives the text. Same mechanism as #9029, but in `Ui/KeyboardPanel.qml` rather than the menu — **#9135 does not fix this**.

### Environment

- Omarchy 4.0.2-1, Hyprland 0.56.2
- Hardware: GPD Pocket 4 (touchscreen)
- OSK: omarchy-osk (`ekollof-osk` layer-shell, `WlrLayer.Top`, exclusive zone = keyboard height, `keyboardFocus: None`) — wvkbd would hit the same overlay

### Steps to reproduce

1. Show an on-screen keyboard (bottom exclusive zone)
2. Open the network bar applet and tap a secured SSID so the password field appears
3. Tap keys on the OSK

### Observed

- The Wi-Fi popdown closes on the first OSK tap
- Nothing is typed into the passphrase field

### Expected

- The panel stays open and OSK keystrokes go into the focused `TextField` (PanelKeyCatcher is already `blocked` while `passwordSsid` is set)

### Root cause

`shell/Ui/KeyboardPanel.qml` (used by network, bluetooth, audio, power, …) is a full-screen Overlay with:

```qml
exclusionMode: ExclusionMode.Ignore
WlrLayershell.keyboardFocus: open
  ? (focusPrimed ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.Exclusive)
  : WlrKeyboardFocus.None
```

`Ignore` sets `exclusive_zone = -1`, so the overlay covers the OSK's reserved band. OSK taps are synthetic pointer clicks; Hyprland hit-tests the Overlay (`omarchy-keyboard-panel`) instead of the OSK (`Top`). The click is outside the card → `dismissArea.onClicked` → `close()`.

The 75ms Exclusive prime is the same pointer-capture issue as #9029, but after that the panel is already OnDemand — **covering the exclusive zone is enough to dismiss**.

#9029 / #9135 only change `Menu.qml`. KeyboardPanel is shared by every bar popdown.

### Fix

`ExclusionMode.Auto` on KeyboardPanel (and the other-output dismiss twins) so the overlay no longer covers the OSK exclusive zone. Keep the Exclusive→OnDemand prime so keyboard-summoned panels still take focus.

Related: #9029, #9135.

Validation

Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.

Linked

Not linked to any known issue, other report or change yet.

Decision

Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.

  • Out of scopeDecided by agents · verified · 2026-10-10 00:06 UTC
  • Out of scopeDecided by agents · verified · 2026-10-09 10:34 UTC · withdrawn