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

WindowServer+LibGUI: Allow arbitrary number of rects in messages.

To get truly atomic updates, add a mechanism for passing arbitrary amounts
of extra data along with WindowServer messages. This allows us to pass all
the rects in a single message.
This commit is contained in:
Andreas Kling 2019-04-22 01:15:47 +02:00
parent f9d3abf5d0
commit 9f122bff5a
12 changed files with 167 additions and 60 deletions

View file

@ -21,7 +21,7 @@ public:
static WSClientConnection* from_client_id(int client_id);
static void for_each_client(Function<void(WSClientConnection&)>);
void post_message(const WSAPI_ServerMessage&);
void post_message(const WSAPI_ServerMessage&, const ByteBuffer& = { });
int client_id() const { return m_client_id; }
WSMenuBar* app_menubar() { return m_app_menubar.ptr(); }
@ -39,6 +39,8 @@ public:
void notify_about_new_screen_rect(const Rect&);
void post_paint_message(WSWindow&);
void did_misbehave();
private:
virtual void event(CEvent&) override;