The spelling-suggestion tooltip currently renders on wlroots compositors (Hyprland, Sway — via wlr-layer-shell) and X11 (override-redirect). On GNOME and KDE Wayland the popup crate is a no-op, so the feature silently degrades to the keyboard accept-chord with no visible list — near-useless until a backend exists. The engine side works everywhere; this is purely a "how do we draw an unfocused overlay" problem.
This is a research issue first: the deliverable is a written recommendation (or a prototype), not necessarily a full backend.
Directions worth evaluating:
- KDE: KWin implements the layer-shell protocol — verify which version/features it exposes to third-party apps and whether our anchor math (output-local coordinates, transforms) carries over. If it just works, KDE might be a small PR, and the "GNOME/KDE" gap statement splits in half.
- GNOME: no layer-shell for third-party apps, and no compositor-agnostic way to position an override surface. Candidates: a companion GNOME Shell extension the app talks to over D-Bus (precedent: several on-screen-display projects), or accepting an xdg-popup-shaped compromise, or declaring GNOME out of scope with a documented reason.
- Whatever the surface, it must never take keyboard focus (that's the whole point of the tooltip) and should reuse the existing anchor chain (AT-SPI caret → window bottom-centre → screen edge).
Where to look: crates/poltertype-popup/ (backend trait + wlroots/X11 implementations), docs/PLAN.md for the anchor-chain design.
The spelling-suggestion tooltip currently renders on wlroots compositors (Hyprland, Sway — via
wlr-layer-shell) and X11 (override-redirect). On GNOME and KDE Wayland the popup crate is a no-op, so the feature silently degrades to the keyboard accept-chord with no visible list — near-useless until a backend exists. The engine side works everywhere; this is purely a "how do we draw an unfocused overlay" problem.This is a research issue first: the deliverable is a written recommendation (or a prototype), not necessarily a full backend.
Directions worth evaluating:
Where to look:
crates/poltertype-popup/(backend trait + wlroots/X11 implementations),docs/PLAN.mdfor the anchor-chain design.