1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-28 13:47:46 +00:00

LibGUI/WindowServer: Add set_maximized IPC call

Add an IPC call to enable the client to manually maximize it's own
window.
This commit is contained in:
Marcus Nilsson 2021-06-06 21:50:06 +02:00 committed by Andreas Kling
parent a00d154522
commit 2f7dc29ab7
5 changed files with 18 additions and 0 deletions

View file

@ -332,6 +332,16 @@ Messages::WindowServer::IsMaximizedResponse ClientConnection::is_maximized(i32 w
return it->value->is_maximized();
}
void ClientConnection::set_maximized(i32 window_id, bool maximized)
{
auto it = m_windows.find(window_id);
if (it == m_windows.end()) {
did_misbehave("SetMaximized: Bad window ID");
return;
}
it->value->set_maximized(maximized);
}
void ClientConnection::set_window_icon_bitmap(i32 window_id, Gfx::ShareableBitmap const& icon)
{
auto it = m_windows.find(window_id);

View file

@ -104,6 +104,7 @@ private:
virtual void set_window_title(i32, String const&) override;
virtual Messages::WindowServer::GetWindowTitleResponse get_window_title(i32) override;
virtual Messages::WindowServer::IsMaximizedResponse is_maximized(i32) override;
virtual void set_maximized(i32, bool) override;
virtual void start_window_resize(i32) override;
virtual Messages::WindowServer::SetWindowRectResponse set_window_rect(i32, Gfx::IntRect const&) override;
virtual Messages::WindowServer::GetWindowRectResponse get_window_rect(i32) override;

View file

@ -68,6 +68,7 @@ endpoint WindowServer
start_window_resize(i32 window_id) =|
is_maximized(i32 window_id) => (bool maximized)
set_maximized(i32 window_id, bool maximized) =|
invalidate_rect(i32 window_id, Vector<Gfx::IntRect> rects, bool ignore_occlusion) =|
did_finish_painting(i32 window_id, Vector<Gfx::IntRect> rects) =|