diff options
| author | srdusr <[email protected]> | 2024-08-09 09:36:00 +0200 |
|---|---|---|
| committer | srdusr <[email protected]> | 2024-08-09 09:36:00 +0200 |
| commit | 31de54096243fb000fa6e7008a914861293482a5 (patch) | |
| tree | 13ec4c5ae351994f35c90180e07988b5dffdb3f5 /crates/core/src/manager/mod.rs | |
| parent | 52b0b8927fa56f42ad6b39fb45bbed5a2d392dce (diff) | |
| download | srdwm-31de54096243fb000fa6e7008a914861293482a5.tar.gz srdwm-31de54096243fb000fa6e7008a914861293482a5.zip | |
Fix a misleading workspace comment and drop four dead config keys
visible_windows' doc comment claimed windows show "on the active
workspace of whichever monitor they're assigned to" - the code never
reads w.monitor at all; current_workspace is one flat value shared by
every monitor, not per-output. Documented that explicitly on both the
field and the method, since this is a real behavioral difference from
Hyprland worth a reader actually seeing, not just an inaccurate comment
to fix quietly.
monitor.primary_workspace/monitor.workspace_count describe a per-
monitor-workspace design that doesn't exist; workspace.auto_switch/
workspace.persistent were never wired to any behavior. All four were
seeded into default_config() and documented in DEFAULTS.md, so
srd.set()/srd.get() on them silently succeeded while doing nothing --
removed from both, matching the precedent already set by general.
rounded_corners' deliberate absence from default_config for a
different reason (backend-dependent default rather than unbuilt).
Diffstat (limited to 'crates/core/src/manager/mod.rs')
| -rw-r--r-- | crates/core/src/manager/mod.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/crates/core/src/manager/mod.rs b/crates/core/src/manager/mod.rs index 91df887..609b87f 100644 --- a/crates/core/src/manager/mod.rs +++ b/crates/core/src/manager/mod.rs @@ -41,6 +41,11 @@ pub struct WindowManager { focused: Option<WindowId>, monitors: Vec<Monitor>, workspaces: Vec<Workspace>, + /// One flat value shared by every monitor - not per-output. Unlike + /// Hyprland, srdwm has no notion of an independent workspace set per + /// monitor; switching workspace changes what's visible on every screen + /// at once. See `visible_windows`'s doc comment for the filter this + /// actually drives. current_workspace: WorkspaceId, /// Whichever workspace was current immediately before the current one /// became current - see `switch_workspace`'s doc comment. |