1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 04:07:44 +00:00

WindowServer: Add Optional<Gfx::IntRect> argument to get_screen_bitmap()

This way, we can optionally specify a region of the display to capture.
Defaults to entire screen if no rectangle is given.
This commit is contained in:
Valtteri Koskivuori 2021-05-09 22:26:02 +03:00 committed by Linus Groh
parent cb74f7992a
commit 4864ef9440
4 changed files with 10 additions and 4 deletions

View file

@ -863,8 +863,12 @@ void ClientConnection::did_become_responsive()
set_unresponsive(false);
}
Messages::WindowServer::GetScreenBitmapResponse ClientConnection::get_screen_bitmap()
Messages::WindowServer::GetScreenBitmapResponse ClientConnection::get_screen_bitmap(Optional<Gfx::IntRect> const& rect)
{
if (rect.has_value()) {
auto bitmap = Compositor::the().front_bitmap_for_screenshot({}).cropped(rect.value());
return bitmap->to_shareable_bitmap();
}
auto& bitmap = Compositor::the().front_bitmap_for_screenshot({});
return bitmap.to_shareable_bitmap();
}