feat(agent): Wayland scroll via portal NotifyPointerAxisDiscrete (VA-83) #88
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/VA-83-wayland-scroll-axis"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Mouse-wheel scrolling did nothing on a Wayland host: the portal input path's scroll branch in
run_desktopwas an empty stub, so wheel deltas were silently dropped (XTEST buttons 4/5 do not reach Wayland-native clients on GNOME/KDE).Add
PortalSession::pointer_axis_discretewrapping ashpd RemoteDesktopNotifyPointerAxisDiscrete, plus a freepointer_axis_discreteconvenience and a re-exportedScrollAxisso the agent does not take a direct ashpd dependency. The no-feature stub module gains matching no-op shims so the headless build still compiles.Wire the Wayland scroll branch to call it via a new pure helper
scroll_delta_to_axis_steps: the SPA sends a signed +/-120-per-notch delta (positive = up, same sense as the X11 ScrollUp button); portal discrete steps follow the wl_pointer convention (positive = down), so the sign is inverted and the magnitude is one step per notch (never zero). A unit test pins the sign, scaling, and i16::MIN safety. The X11 XTEST scroll path is unchanged.#VA-83