mirror of
https://github.com/RGBCube/serenity
synced 2025-05-20 06:05:07 +00:00
WindowServer: Fixed Menubar resize issue
The menubar bar wasn't being resized correctly, as the underlying Window was never being resized when `DisplayProperties` was chaning the resolution while the system was running. `m_window` now gets the correct window size when it's been updated, so a reboot isn't required.
This commit is contained in:
parent
f37cf5ea4a
commit
d0c11bbcc3
3 changed files with 19 additions and 3 deletions
|
@ -196,6 +196,7 @@ const Font& WSWindowManager::app_menu_font() const
|
|||
void WSWindowManager::set_resolution(int width, int height)
|
||||
{
|
||||
WSCompositor::the().set_resolution(width, height);
|
||||
m_menu_manager.set_needs_window_resize();
|
||||
WSClientConnection::for_each_client([&](WSClientConnection& client) {
|
||||
client.notify_about_new_screen_rect(WSScreen::the().rect());
|
||||
});
|
||||
|
@ -421,7 +422,7 @@ void WSWindowManager::start_window_drag(WSWindow& window, const WSMouseEvent& ev
|
|||
if (window.is_maximized()) {
|
||||
auto width_before_resize = window.width();
|
||||
window.set_maximized(false);
|
||||
window.move_to(m_drag_origin.x() - (window.width() * ((float) m_drag_origin.x() / width_before_resize)), m_drag_origin.y());
|
||||
window.move_to(m_drag_origin.x() - (window.width() * ((float)m_drag_origin.x() / width_before_resize)), m_drag_origin.y());
|
||||
}
|
||||
m_drag_window_origin = window.position();
|
||||
invalidate(window);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue