Serenity Operating System
1endpoint WindowServer = 2
2{
3 Greet() => (i32 client_id, Gfx::Rect screen_rect, i32 system_theme_buffer_id)
4
5 CreateMenubar() => (i32 menubar_id)
6 DestroyMenubar(i32 menubar_id) => ()
7
8 CreateMenu(String menu_title) => (i32 menu_id)
9 DestroyMenu(i32 menu_id) => ()
10
11 AddMenuToMenubar(i32 menubar_id, i32 menu_id) => ()
12 SetApplicationMenubar(i32 menubar_id) => ()
13
14 SetSystemMenu(i32 menu_id) => ()
15
16 AddMenuItem(
17 i32 menu_id,
18 i32 identifier,
19 i32 submenu_id,
20 String text,
21 bool enabled,
22 bool checkable,
23 bool checked,
24 String shortcut,
25 i32 icon_buffer_id,
26 bool exclusive) => ()
27
28 AddMenuSeparator(i32 menu_id) => ()
29
30 UpdateMenuItem(i32 menu_id, i32 identifier, i32 submenu_id, String text, bool enabled, bool checkable, bool checked, String shortcut) => ()
31
32 CreateWindow(
33 Gfx::Rect rect,
34 bool has_alpha_channel,
35 bool modal,
36 bool minimizable,
37 bool resizable,
38 bool fullscreen,
39 bool show_titlebar,
40 float opacity,
41 Gfx::Size base_size,
42 Gfx::Size size_increment,
43 i32 type,
44 String title) => (i32 window_id)
45
46 DestroyWindow(i32 window_id) => ()
47
48 SetWindowTitle(i32 window_id, String title) => ()
49 GetWindowTitle(i32 window_id) => (String title)
50
51 SetWindowRect(i32 window_id, Gfx::Rect rect) => ()
52 GetWindowRect(i32 window_id) => (Gfx::Rect rect)
53
54 InvalidateRect(i32 window_id, Vector<Gfx::Rect> rects, bool ignore_occlusion) =|
55 DidFinishPainting(i32 window_id, Vector<Gfx::Rect> rects) =|
56
57 SetGlobalCursorTracking(i32 window_id, bool enabled) => ()
58 SetWindowOpacity(i32 window_id, float opacity) => ()
59
60 SetWindowBackingStore(i32 window_id, i32 bpp, i32 pitch, i32 shared_buffer_id, bool has_alpha_channel, Gfx::Size size, bool flush_immediately) => ()
61 GetClipboardContents() => (i32 shared_buffer_id, i32 content_size, String content_type)
62 SetClipboardContents(i32 shared_buffer_id, i32 content_size, String content_type) => ()
63
64 WM_SetActiveWindow(i32 client_id, i32 window_id) =|
65 WM_SetWindowMinimized(i32 client_id, i32 window_id, bool minimized) =|
66 WM_StartWindowResize(i32 client_id, i32 window_id) =|
67 WM_PopupWindowMenu(i32 client_id, i32 window_id, Gfx::Point screen_position) =|
68 WM_SetWindowTaskbarRect(i32 client_id, i32 window_id, Gfx::Rect rect) =|
69
70 SetWindowHasAlphaChannel(i32 window_id, bool has_alpha_channel) => ()
71 MoveWindowToFront(i32 window_id) => ()
72 SetFullscreen(i32 window_id, bool fullscreen) => ()
73 PopupMenu(i32 menu_id, Gfx::Point screen_position) => ()
74 DismissMenu(i32 menu_id) => ()
75
76 AsyncSetWallpaper(String path) =|
77 SetResolution(Gfx::Size resolution) => ()
78 SetWindowIconBitmap(i32 window_id, i32 icon_buffer_id, Gfx::Size icon_size) => ()
79
80 GetWallpaper() => (String path)
81 SetWindowOverrideCursor(i32 window_id, i32 cursor_type) => ()
82
83 StartDrag(String text, String data_type, String data, i32 bitmap_id, Gfx::Size bitmap_size) => (bool started)
84
85 SetSystemTheme(String theme_path, String theme_name) => (bool success)
86
87 SetWindowBaseSizeAndSizeIncrement(i32 window_id, Gfx::Size base_size, Gfx::Size size_increment) => ()
88}