diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2025-09-02 08:07:22 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-10-15 09:04:16 +0300 |
| commit | e1fad994da9565b43c7fb139cb2fb7bf404cc320 (patch) | |
| tree | 305fa0714d66ad2b4346b3aee6eb785099b29fa1 /src/window/unmapped.rs | |
| parent | e5d4e7c1b1a0b61770b6711a53fe41920d56452d (diff) | |
| download | niri-e1fad994da9565b43c7fb139cb2fb7bf404cc320.tar.gz niri-e1fad994da9565b43c7fb139cb2fb7bf404cc320.tar.bz2 niri-e1fad994da9565b43c7fb139cb2fb7bf404cc320.zip | |
Implement maximize-to-edges (true Wayland maximize)
Diffstat (limited to 'src/window/unmapped.rs')
| -rw-r--r-- | src/window/unmapped.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/window/unmapped.rs b/src/window/unmapped.rs index 6ca11b50..d1918f5a 100644 --- a/src/window/unmapped.rs +++ b/src/window/unmapped.rs @@ -21,6 +21,9 @@ pub enum InitialConfigureState { NotConfigured { /// Whether the window requested to be fullscreened, and the requested output, if any. wants_fullscreen: Option<Option<Output>>, + + /// Whether the window requested to be maximized. + wants_maximized: bool, }, /// The window has been configured. Configured { @@ -64,6 +67,13 @@ pub enum InitialConfigureState { /// Workspace to open this window on. workspace_name: Option<String>, + + /// Whether the window should be maximized. + /// + /// This corresponds to the window having the Maximized toplevel state. However, if the + /// window is also pending fullscreen, then it has the Fullscreen toplevel state, so we + /// need to store pending maximized elsewhere, hence this field. + is_pending_maximized: bool, }, } @@ -74,6 +84,7 @@ impl Unmapped { window, state: InitialConfigureState::NotConfigured { wants_fullscreen: None, + wants_maximized: false, }, activation_token_data: None, } |
