mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:17:45 +00:00
WindowsServer+LibGUI: Avoid getting color under cursor outside screen
This patch fixes a crash in ColorPicker caused by the ColorSelectOverlay trying to request the color for a pixel outside the screen rect.
This commit is contained in:
parent
8515d7d5ab
commit
b46ea5158d
3 changed files with 9 additions and 4 deletions
|
@ -1080,8 +1080,11 @@ Messages::WindowServer::GetColorUnderCursorResponse ClientConnection::get_color_
|
|||
// manual translation to avoid sampling the color on the actual cursor itself.
|
||||
auto cursor_location = ScreenInput::the().cursor_location().translated(-1, -1);
|
||||
auto& screen_with_cursor = ScreenInput::the().cursor_location_screen();
|
||||
auto color = Compositor::the().color_at_position({}, screen_with_cursor, cursor_location);
|
||||
return color;
|
||||
|
||||
if (!screen_with_cursor.rect().contains(cursor_location))
|
||||
return Optional<Color> {};
|
||||
|
||||
return { Compositor::the().color_at_position({}, screen_with_cursor, cursor_location) };
|
||||
}
|
||||
|
||||
Messages::WindowServer::IsWindowModifiedResponse ClientConnection::is_window_modified(i32 window_id)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue