diff options
author | Andreas Kling <kling@serenityos.org> | 2021-01-15 12:11:22 +0100 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-01-15 13:57:00 +0100 |
commit | 0b0514d46bddf56052ca5a892d3a4b20aa8249c1 (patch) | |
tree | 11cf5c9e9304026e5e9a2e5222dd15216c597a08 /Userland/Services/WindowServer/WindowServer.ipc | |
parent | 4d97b955e60ddc8cd763e703b91a0352407bf1ef (diff) | |
download | serenity-0b0514d46bddf56052ca5a892d3a4b20aa8249c1.zip |
LibGUI+WindowServer: Use anonymous files for window backing stores :^)
This patch replaces the use of shbufs for GUI::Window backing stores
with the new anonymous files mechanism.
Backing bitmaps are now built on memory allocated with anon_create().
They are passed across the IPC socket as IPC::File. This means that
WindowServer now pledges "recvfd" and graphical clients need to pledge
"sendfd" to work.
To support the cached bitmap swapping optimization on the WindowServer
side, each backing store is assigned an incrementing serial number on
the client side. (This allows us to re-use an already mapped file.)
Diffstat (limited to 'Userland/Services/WindowServer/WindowServer.ipc')
-rw-r--r-- | Userland/Services/WindowServer/WindowServer.ipc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Userland/Services/WindowServer/WindowServer.ipc b/Userland/Services/WindowServer/WindowServer.ipc index 72399de1db..20f4d946bd 100644 --- a/Userland/Services/WindowServer/WindowServer.ipc +++ b/Userland/Services/WindowServer/WindowServer.ipc @@ -68,7 +68,7 @@ endpoint WindowServer = 2 SetGlobalCursorTracking(i32 window_id, bool enabled) => () SetWindowOpacity(i32 window_id, float opacity) => () - SetWindowBackingStore(i32 window_id, i32 bpp, i32 pitch, i32 shbuf_id, bool has_alpha_channel, Gfx::IntSize size, bool flush_immediately) => () + SetWindowBackingStore(i32 window_id, i32 bpp, i32 pitch, IPC::File anon_file, i32 serial, bool has_alpha_channel, Gfx::IntSize size, bool flush_immediately) => () WM_SetActiveWindow(i32 client_id, i32 window_id) =| WM_SetWindowMinimized(i32 client_id, i32 window_id, bool minimized) =| |