WindowServer+LibGUI: Coalesce multiple client paints into GMultiPaintEvents.

This allows GWindow to paint up to 32 separate rects before telling the
WindowServer to flip the buffers. Quite a bit smoother. :^)
This commit is contained in:
Andreas Kling 2019-04-20 17:37:28 +02:00
commit 7234900f61
Notes: sideshowbarker 2024-07-19 14:38:23 +09:00
6 changed files with 54 additions and 18 deletions

View file

@ -515,7 +515,8 @@ void WSClientConnection::handle_request(const WSAPIDidFinishPaintingNotification
return;
}
auto& window = *(*it).value;
WSWindowManager::the().invalidate(window, request.rect());
for (auto& rect : request.rects())
WSWindowManager::the().invalidate(window, rect);
}
void WSClientConnection::handle_request(const WSAPIGetWindowBackingStoreRequest& request)