srdusr
aboutsummaryrefslogtreecommitdiffstats
path: root/docs/IMPLEMENTATION_STATUS.md
diff options
context:
space:
mode:
authorsrdusr <[email protected]>2025-09-14 23:04:00 +0200
committersrdusr <[email protected]>2025-09-14 23:04:00 +0200
commitb46dfa56504f62ecf969914dfed106bf587c4c4a (patch)
treeaaeb47404ad0f5771198ac84ae1fb5afe34d1a99 /docs/IMPLEMENTATION_STATUS.md
parentb219797e2143ea84cf527fbf48afb22cc35fe9a5 (diff)
downloadsrdwm-b46dfa56504f62ecf969914dfed106bf587c4c4a.tar.gz
srdwm-b46dfa56504f62ecf969914dfed106bf587c4c4a.zip
Docs: master TODO/DEFAULTS/status updates, feature-gap survey, lockfile
docs/TODO.md is this shift's single consolidated pending-work list (see its own header for why it exists alongside PANEL_SUPPORT_TODO.md/ SESSION_HANDOFF.md rather than replacing them) - every commit in this batch has its own dated entry there with the full root-cause/ verification narrative. docs/DEFAULTS.md corrected against the real config engine and extended for every new general.* key this shift added (aspect_ratio rule action, phone_mode). docs/FEATURE_GAP.md is a new survey against niri/Hyprland/sway, requested directly. docs/ IMPLEMENTATION_STATUS.md and docs/PRIOR_ART.md updated to match. Cargo.lock reflects the new resvg/usvg/tiny-skia dependencies (real icon-theme SVG rendering).
Diffstat (limited to 'docs/IMPLEMENTATION_STATUS.md')
-rw-r--r--docs/IMPLEMENTATION_STATUS.md16
1 files changed, 14 insertions, 2 deletions
diff --git a/docs/IMPLEMENTATION_STATUS.md b/docs/IMPLEMENTATION_STATUS.md
index 6fe207b..d9362aa 100644
--- a/docs/IMPLEMENTATION_STATUS.md
+++ b/docs/IMPLEMENTATION_STATUS.md
@@ -1,7 +1,8 @@
# Implementation status
-This mirrors the style of the legacy C++ project's own status doc (now at
-`legacy-cpp/docs/IMPLEMENTATION_STATUS.md`), but for the Rust rewrite.
+This mirrors the style of the project's own earlier C++ status doc (that
+codebase has since been removed - see `docs/PRIOR_ART.md` for what it was
+and why it was replaced; git history still has it if anyone needs it).
"Verified" means: built with `cargo test --workspace` (0 warnings under
`cargo clippy --workspace`) and, where applicable, actually run and observed
doing the thing described - not just "the code compiles and looks right."
@@ -71,6 +72,17 @@ doing the thing described - not just "the code compiles and looks right."
translated from Lua combo strings via a hand-maintained keysym table
(`crates/x11/src/keysyms.rs`, letters/digits/navigation/F-keys/media keys;
not a full xkbcommon keymap).
+- Right-click titlebar window menu (minimize/maximize/fullscreen/floating/
+ always-on-top/move-to-workspace/close), same row set as the Wayland
+ backend's own (`srdwm_core::context_menu`, shared between both) --
+ drawn into a small override-redirect popup window with a root-window
+ pointer grab for "click anywhere else dismisses" (`crates/x11/src/
+ platform/context_menu.rs`). Live-verified under an isolated Xvfb
+ instance.
+- `_NET_WM_STRUT`/`_NET_WM_STRUT_PARTIAL` read from any mapped window
+ (including override-redirect bars/docks), shrinking each monitor's own
+ usable rect the same way the Wayland backend's layer-shell exclusive
+ zones already do (`crates/x11/src/platform/struts.rs`).
- **Verified live**: run under Xephyr with the shipped example config, an
`xterm` client was correctly reparented (frame at the exact
`SmartPlacement`-computed position, client offset by exactly