Skip to content

Commit cf9d63b

Browse files
committed
Serialize window maximize state in WindowSettings
1 parent 3ffe1ed commit cf9d63b

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

crates/egui-winit/src/lib.rs

+4
Original file line numberDiff line numberDiff line change
@@ -1014,6 +1014,7 @@ pub fn update_viewport_info(
10141014
}
10151015

10161016
viewport_info.fullscreen = Some(window.fullscreen().is_some());
1017+
viewport_info.maximized = Some(window.is_maximized());
10171018
viewport_info.focused = Some(window.has_focus());
10181019
}
10191020

@@ -1824,6 +1825,9 @@ pub fn apply_viewport_builder_to_window(
18241825
let pos = PhysicalPosition::new(pixels_per_point * pos.x, pixels_per_point * pos.y);
18251826
window.set_outer_position(pos);
18261827
}
1828+
if let Some(maximized) = builder.maximized {
1829+
window.set_maximized(maximized);
1830+
}
18271831
}
18281832
}
18291833

crates/egui-winit/src/window_settings.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ pub struct WindowSettings {
1313

1414
fullscreen: bool,
1515

16+
maximized: bool,
17+
1618
/// Inner size of window in logical pixels
1719
inner_size_points: Option<egui::Vec2>,
1820
}
@@ -38,6 +40,7 @@ impl WindowSettings {
3840
outer_position_pixels,
3941

4042
fullscreen: window.fullscreen().is_some(),
43+
maximized: window.is_maximized(),
4144

4245
inner_size_points: Some(egui::vec2(
4346
inner_size_points.width,
@@ -80,7 +83,8 @@ impl WindowSettings {
8083
if let Some(inner_size_points) = self.inner_size_points {
8184
viewport_builder = viewport_builder
8285
.with_inner_size(inner_size_points)
83-
.with_fullscreen(self.fullscreen);
86+
.with_fullscreen(self.fullscreen)
87+
.with_maximized(self.maximized);
8488
}
8589

8690
viewport_builder

0 commit comments

Comments
 (0)