The initial Slint problem was larger than thought. Hopefully a more universal fix.
This commit is contained in:
1 parent
d0fdce7285
commit
1c12bc6636
10 files changed
+294
-6
No files matched your search
@@ -79,3 +79,33 @@ ready to replace the reader.
|
||||
|
||||
Preserve a fresh log if lag or a missing announcement remains, with the time
|
||||
and the key or update that triggered it. Debug logs can contain private text.
|
||||
|
||||
## Window frame geometry
|
||||
|
||||
GTK can report the window manager's enclosing frame while X11's active client
|
||||
reports only its content area. Slint/i3 exposed this as an active, showing
|
||||
1916×994 accessible frame at (0,0) rejected against a 1912×974 client at (2,18).
|
||||
Missing or stale `_NET_FRAME_EXTENTS` can make the advertised outer bounds
|
||||
identical to those client bounds.
|
||||
|
||||
Foreground matching also accepts the actual immediate enclosing X11 frame.
|
||||
It must contain the client, have bounded decoration edges, and contain no other
|
||||
managed client. The desktop root, a parent that is itself a managed client,
|
||||
and shared containers are excluded. Existing process, active/showing state,
|
||||
iconification, foreground epoch and same-process sibling checks still apply.
|
||||
This covers frame/client discrepancies across applications; arbitrary incorrect
|
||||
AT-SPI geometry still requires diagnosis. Rejected activation diagnostics now
|
||||
include `x_frame_bounds` alongside client and advertised outer bounds.
|
||||
|
||||
```sh
|
||||
python3 tests/native_test_session.py env CTHULHU_NATIVE_FRAME_FOREGROUND=1 CTHULHU_NATIVE_GRAB_FOREGROUND=1 go test ./internal/platform/xorg -run '^TestNative(ReparentedFrameForeground|InputOnlyGrabForeground)$' -count=1 -v
|
||||
```
|
||||
|
||||
The frame fixture covers missing, zero and stale extents, borders, moving,
|
||||
resizing, switching to a sibling frame, shared containers and empty workspaces.
|
||||
On Slint, listen while switching between two windows from one application,
|
||||
another application's window, dialogs and menus. Move and resize them, switch
|
||||
away to an empty workspace and return, and check preferences again. Confirm
|
||||
speech and Braille follow the foreground control and background activity does
|
||||
not take focus. Keep the first rejected activation from a fresh debug log if a
|
||||
window remains silent; private X11 results do not prove affected-host acceptance.
|
||||
Reference in new issue
Block a user