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-371GitHub issuePublicFixed

Emoji picker (SUPER+CTRL+E) fails to insert into browsers; works in terminals

Reported by AndrijaSkontra · filed Sep 18, 2026 · open at source

Partly in the audited area (menu) — decided by agents · verified. Not validated yet.

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?
AreaPartly in the audited areamenu· 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?
Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. So far: partly in the audited area (menu) — decided by agents · verified; matches no known issue — decided by agents · verified. The outcome (valid, duplicate, not a bug, …) is not decided yet. See the decision.

Original report

Emoji picker (SUPER+CTRL+E) fails to insert into browsers; works in terminalsrevision 1 · captured 2026-09-28 21:23 UTC via poll

System details

Intel Core i5-10400, Intel UHD 630, Omarchy 4.0.0-1, Hyprland 0.56.2, Chromium 151 / Zen Browser (Wayland native)

What's wrong?

Selecting an emoji from the emoji overlay (SUPER + CTRL + E → omarchy.emojis → Enter) inserts correctly into terminals (Ghostty/etc.), but often does nothing in browser text fields (Chromium, Zen/Firefox).

Steps to reproduce
1. Focus a text field in Chromium or Zen
2. Press SUPER + CTRL + E
3. Select an emoji and press Enter
4. Observe: emoji does not appear in the browser field
5. Repeat the same flow focused in a terminal → emoji inserts as expected

Expected
Emoji is pasted into whatever app had focus before the overlay opened.

Actual
Insert works in terminals; browsers stay unchanged (emoji may still be briefly on the clipboard).

Root cause
omarchy-menu-emoji-insert always pastes with wtype + Shift+Insert:

wtype -M shift -k Insert -m shift

That matches terminal paste bindings, but browsers expect Ctrl+V. Omarchy already teaches this distinction for SUPER + V in default/hypr/bindings/clipboard.lua (terminals → Shift+Insert, otherwise → Ctrl+V via send_key_state). The emoji/clipboard paste helpers never did.

The same Shift+Insert-only path is used by omarchy-clipboard-paste-text / omarchy-clipboard-paste-file, so the clipboard manager has the same browser gap.

Diagnostics
- omarchy-debug --no-sudo --print written to /tmp/omarchy-debug.log on this machine
- Active browser windows are Wayland-native (xwayland=false) with chromium-based-browser* / firefox-based-browser* tags; terminals carry terminal*

Fix
PR incoming: add omarchy-cmd-send-paste that mirrors SUPER + V (terminal tag → Shift+Insert, else Ctrl+V; prefer Hyprland send_key_state, fall back to wtype) and call it from the emoji/clipboard paste helpers.

View raw text
### System details
Intel Core i5-10400, Intel UHD 630, Omarchy 4.0.0-1, Hyprland 0.56.2, Chromium 151 / Zen Browser (Wayland native)

### What's wrong?
Selecting an emoji from the emoji overlay (`SUPER + CTRL + E` → `omarchy.emojis` → Enter) inserts correctly into terminals (Ghostty/etc.), but often does nothing in browser text fields (Chromium, Zen/Firefox).

**Steps to reproduce**
1. Focus a text field in Chromium or Zen
2. Press `SUPER + CTRL + E`
3. Select an emoji and press Enter
4. Observe: emoji does not appear in the browser field
5. Repeat the same flow focused in a terminal → emoji inserts as expected

**Expected**
Emoji is pasted into whatever app had focus before the overlay opened.

**Actual**
Insert works in terminals; browsers stay unchanged (emoji may still be briefly on the clipboard).

**Root cause**
`omarchy-menu-emoji-insert` always pastes with `wtype` + `Shift+Insert`:

```bash
wtype -M shift -k Insert -m shift
```

That matches terminal paste bindings, but browsers expect `Ctrl+V`. Omarchy already teaches this distinction for `SUPER + V` in `default/hypr/bindings/clipboard.lua` (terminals → Shift+Insert, otherwise → Ctrl+V via `send_key_state`). The emoji/clipboard paste helpers never did.

The same Shift+Insert-only path is used by `omarchy-clipboard-paste-text` / `omarchy-clipboard-paste-file`, so the clipboard manager has the same browser gap.

**Diagnostics**
- `omarchy-debug --no-sudo --print` written to `/tmp/omarchy-debug.log` on this machine
- Active browser windows are Wayland-native (`xwayland=false`) with `chromium-based-browser*` / `firefox-based-browser*` tags; terminals carry `terminal*`

**Fix**
PR incoming: add `omarchy-cmd-send-paste` that mirrors `SUPER + V` (terminal tag → Shift+Insert, else Ctrl+V; prefer Hyprland `send_key_state`, fall back to `wtype`) and call it from the emoji/clipboard paste helpers.

Also reported as

This defect is tracked under R-371 (filed Sep 18, 2026). 1 other report describes the same defect.

Earliest report of this defect: R-963 (filed Sep 4, 2026).

  1. Sep 18, 2026R-371 · this report— tracked here
  2. ·Decided by agents · verified

    Open upstream.

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

  • Related PRpr/6892· confirmed
  • Related PRpr/8573· confirmed
  • Fixed bypr/12377· confirmed

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.

  • Decided by agents · verified: partly in the audited area (menu)
  • Decided by agents · verified: matches no known issue

The outcome (valid, duplicate, not a bug, …) is not decided yet.