fix(cua-driver): bind rootless XWayland browser windows - #3295
Draft
injaneity wants to merge 1 commit into
Draft
Conversation
injaneity
marked this pull request as ready for review
August 20, 2026 18:15
f-trycua
force-pushed
the
fix/linux-rootless-xwayland-activation
branch
from
August 20, 2026 18:18
57c82dd to
52264ac
Compare
f-trycua
marked this pull request as draft
August 20, 2026 18:19
f-trycua
force-pushed
the
fix/linux-rootless-xwayland-activation
branch
2 times, most recently
from
August 20, 2026 18:53
1a2549f to
79eec36
Compare
injaneity
marked this pull request as ready for review
August 20, 2026 19:04
f-trycua
approved these changes
Aug 20, 2026
f-trycua
force-pushed
the
fix/linux-rootless-xwayland-activation
branch
from
August 20, 2026 21:33
79eec36 to
019a594
Compare
f-trycua
marked this pull request as draft
August 20, 2026 22:22
Resolve reparented ICCCM clients when EWMH client lists are absent or empty, and prefer exact PID-owned X11 identities before native-Wayland heuristics in mixed sessions. Refs #2206
f-trycua
force-pushed
the
fix/linux-rootless-xwayland-activation
branch
from
August 20, 2026 23:23
019a594 to
0e7470a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
_NET_WM_PID, a title, andWM_STATE. Browser binding checks PID-owned X11 identities before native-Wayland adapters, which restores exact embedded Chromium binding and trusted CDP input.Related work
Refs #2206
#1991 addresses the distinct Xauthority connection failure reported in #1978. This PR neither supersedes nor reimplements that contribution; it handles missing EWMH client lists after the X11 connection succeeds.
RFC: not required. This is a Linux implementation correction and does not change a public SDK, CLI, MCP, protocol, compatibility, permission, or cross-component contract.
Compatibility and risk
WM_STATEevidence. Traversal is limited to eight levels and 4,096 discovered windows. Exceeding that budget fails closed instead of returning a partial list that could be mistaken for singleton ownership. Reverting this PR restores the previous EWMH-only behavior.Validation
019a594b0bb4369eb51e12e3d3bfc218c8311a38, rebased ontoorigin/mainat9a61050e3474fc9488d7adc85184299f02514d0e.cargo fmt --all -- --check; Linux containercargo test -p platform-linux --lib --locked x11::tests -- --nocapture(7 passed); Linux containercargo test -p platform-linux --lib --locked browser_platform::tests::exact_x11_identity_wins_in_mixed_display_sessions -- --exact --nocapture(1 passed); live Xvfbcargo test -p platform-linux x11::tests::live_nested_client_fallback_lists_reparented_client --locked -- --ignored --exact --nocapture --test-threads=1(1 passed).event.isTrusted=trueto an accessibility-hidden custom control, and opened the native GTK picker. An Xvfb and Openbox comparison retained exact 900x650 Electron discovery and mutation-enabled binding.ETXTBSY(Text file busy); the full representative desktop matrix remains deferred for final pre-merge certification.Contributor and release checks
no-releaselabel is applied. This is a releasing bug fix, so the label does not apply.