diff --git a/Userland/Services/WindowServer/Screen.cpp b/Userland/Services/WindowServer/Screen.cpp index fc7497db0d..f8bb2ad8dc 100644 --- a/Userland/Services/WindowServer/Screen.cpp +++ b/Userland/Services/WindowServer/Screen.cpp @@ -319,8 +319,8 @@ void ScreenInput::on_receive_keyboard_data(::KeyEvent kernel_event) void Screen::flush_display(const Gfx::IntRect& flush_region) { FBRect rect { - .x = static_cast(flush_region.x()) * scale_factor(), - .y = static_cast(flush_region.y()) * scale_factor(), + .x = (static_cast(flush_region.x()) - m_virtual_rect.left()) * scale_factor(), + .y = (static_cast(flush_region.y()) - m_virtual_rect.top()) * scale_factor(), .width = static_cast(flush_region.width()) * scale_factor(), .height = static_cast(flush_region.height() * scale_factor()) };