Files
omarchy-pkgs/pkgbuilds
Spencer BullandCodex XHigh a2c3571672 Rebase the Cua Hyprland plugin on Driver 0.32.0 for Hyprland 0.56.2-4 (#772)
* Rebase the Cua Hyprland plugin on Driver 0.32.0 source

Driver 0.31.0 took the independent agent keymaps and Num Lock handling from #473 upstream, so independent-keymaps.patch goes. Upstream also added an up-front check that every key the KEY command can press types the US keysym, modifier keys included, which refuses all foreground typing under ctrl:swapcaps, compose:ralt, altwin:swap_alt_win or compose:102. foreground-remaps.patch makes that check run the per-chord check every key already passes over exactly the chords Driver types text with, with Num Lock off and on, so a string is still admitted or refused before its first key and other remaps are left to the per-chord check.

0.32.0 also gives agent keyboards a real repeat rate, which stops single-seat clients like imv crashing on an agent seat (trycua/cua#4257).

cua-driver-bin stays at 0.28.2, which speaks the same input protocol v3: Driver 0.28.3 through 0.32.0 refuse desktop capture on Hyprland with more than one output or with one away from the origin (trycua/cua#4161).

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Keep restarting fcitx5 from crashing Hyprland under the Cua plugin

With plugin input enabled, fcitx5 requests an input method for each of the three seats, and when it exits Hyprland 0.56.2 can still hold an input-method popup that is mapped although its wl_surface is gone: the popup's surface-destroy handler emits unmap but never clears m_mapped. Tearing down the input method then updates every popup, CInputPopup::updateBox dereferences the missing surface and Hyprland restarts in safe mode. Omarchy's omarchy-restart-xcompose reaches this in normal use.

The plugin now hooks CInputPopup::updateBox and CInputPopup::shouldBeRendered so a popup whose getSurface() is empty is neither placed nor rendered, reports the guard in cua:status, and removes the hooks on unload. The guard is compiled into the module only, so the mock-based tests are unchanged. foreground-remaps.patch becomes downstream.patch now that it carries both changes.

* Pin the Cua Hyprland plugin to Arch's hyprland 0.56.2-4 rebuild

Arch rebuilt Hyprland 0.56.2 against vulkan-sdk 1.4.363 and glslang. The executable and two headers change, so the plugin's exact compositor pin and hashes would block hyprland upgrades for anyone with it installed, and Cua's kit has no profile for it (trycua/cua#4216). The release, compiler and runtime are unchanged, so the derivation now also takes the re-measured compositor executable and header inventory; the build's verifier checks both against the installed package.

* Qualify the Cua plugin README on its input-method guard

The guard is installed best effort, so the README promises the fix only while it is active, and the activation checklist now asks for ime_popup_guard: true. 'No hooks' meant package-manager hooks, which the plugin's new function hooks made ambiguous.

Co-Authored-By: Codex XHigh <noreply@openai.com>

---------

Co-authored-by: Codex XHigh <noreply@openai.com>
2026-10-03 22:37:44 -05:00
..
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-09-15 01:26:53 +00:00
2026-10-04 01:23:03 +00:00
2026-09-15 01:26:53 +00:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-09-27 15:09:14 +00:00
2026-09-27 23:57:21 -05:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-09-27 15:09:14 +00:00
2026-10-04 01:23:03 +00:00
2026-10-02 15:56:54 +01:00
2026-09-28 05:36:36 +00:00
2026-09-10 20:59:14 +00:00
2026-09-03 16:33:12 +00:00
2026-09-07 14:36:02 -04:00
2026-09-15 01:26:53 +00:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-08-04 10:42:32 -07:00
2026-08-07 03:03:18 -07:00
2026-10-04 01:23:03 +00:00
2026-05-08 01:04:51 -04:00
2026-05-08 01:04:50 -04:00
2026-09-20 18:47:21 -04:00
2026-08-07 04:29:12 -07:00
2026-10-04 01:23:03 +00:00
2026-10-04 01:23:03 +00:00
2026-09-27 15:09:14 +00:00
2026-09-04 12:29:12 +02:00
2026-09-15 17:10:15 +00:00
2026-10-04 01:23:03 +00:00
2026-09-06 20:32:10 +00:00
2026-09-21 02:36:15 -04:00
2026-09-27 15:09:14 +00:00
2026-05-08 01:07:21 -04:00
2026-10-04 01:23:03 +00:00