Skip to content

Commit

Permalink
Don't call set_maximize each frame on Linux
Browse files Browse the repository at this point in the history
Added by @konkitoman in #3172

I'm not sure what the hack is supposed to solve, but calling it
every frame is a bad idea, as @ItsEthra reported in
#3628 (comment)

* Closes #3620
* Closes #3628
  • Loading branch information
emilk committed Nov 27, 2023
1 parent 43e7b16 commit a6cb5a5
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions crates/egui-winit/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -204,12 +204,6 @@ impl State {

self.egui_input.time = Some(self.start_time.elapsed().as_secs_f64());

// TODO remove this in winit 0.29
// This hack make the window outer_position and size to be valid, X11 Only
// That was happending because winit get the window state before the compositor adds decorations!
#[cfg(all(feature = "x11", target_os = "linux"))]
window.set_maximized(window.is_maximized());

// On Windows, a minimized window will have 0 width and height.
// See: https://github.com/rust-windowing/winit/issues/208
// This solves an issue where egui window positions would be changed when minimizing on Windows.
Expand Down Expand Up @@ -1403,6 +1397,12 @@ pub fn apply_viewport_builder_to_new_window(window: &Window, builder: &ViewportB
log::warn!("set_cursor_hittest failed: {err}");
}
}

// TODO remove this in winit 0.29
// This hack make the window outer_position and size to be valid, X11 Only
// That was happending because winit get the window state before the compositor adds decorations!
#[cfg(all(feature = "x11", target_os = "linux"))]
window.set_maximized(builder.maximized.unwrap_or(false));
}

// ---------------------------------------------------------------------------
Expand Down

0 comments on commit a6cb5a5

Please sign in to comment.