Skip to content

Commit

Permalink
fix(wayland): fix issue with tiled and maximized window
Browse files Browse the repository at this point in the history
Potential fix for #6262
  • Loading branch information
aliaksandr-trush committed Jan 3, 2025
1 parent d8f4cb3 commit b83a4fa
Showing 1 changed file with 1 addition and 27 deletions.
28 changes: 1 addition & 27 deletions window/src/os/wayland/window.rs
Original file line number Diff line number Diff line change
Expand Up @@ -914,8 +914,8 @@ impl WaylandWindowInner {
self.surface_factor = factor;
}
}
self.refresh_frame();
}
self.refresh_frame();
self.do_paint().unwrap();
}
}
Expand Down Expand Up @@ -1243,7 +1243,6 @@ impl WaylandState {
.window_by_id(window_id)
.expect("Inner Window should exist");

let is_frame_hidden = window_inner.borrow().window_frame.is_hidden();
let p = window_inner.borrow().pending_event.clone();
let mut pending_event = p.lock().unwrap();

Expand Down Expand Up @@ -1280,31 +1279,6 @@ impl WaylandState {
state |= WindowState::MAXIMIZED;
}

// For MAXIMIZED and FULL_SCREEN window configure contains Windowed size.
// Replacing it with Wayland suggested bounds.
if state.intersects(WindowState::MAXIMIZED | WindowState::FULL_SCREEN) {
if let Some((w, h)) = configure.suggested_bounds {
pending_event.configure.replace((w, h));
}
} else if configure
.state
.contains(SCTKWindowState::TILED_TOP | SCTKWindowState::TILED_BOTTOM)
&& is_frame_hidden
{
// Tiled window without borders will take exactly half of the screen.
if let Some((w, h)) = configure.suggested_bounds {
pending_event.configure.replace((w / 2, h));
}
} else if configure
.state
.contains(SCTKWindowState::TILED_LEFT | SCTKWindowState::TILED_RIGHT)
&& is_frame_hidden
{
// Tiled window without borders will take exactly half of the screen.
if let Some((w, h)) = configure.suggested_bounds {
pending_event.configure.replace((w, h / 2));
}
}
log::debug!(
"Config: self.window_state={:?}, states: {:?} {:?}",
pending_event.window_state,
Expand Down

0 comments on commit b83a4fa

Please sign in to comment.