summaryrefslogtreecommitdiff
path: root/Servers/WindowServer/WindowServer.ipc
blob: 5f9e9a0068b9cc88c01a9bbbc6a7acbaa5c9a15e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
endpoint WindowServer = 2
{
    Greet() => (i32 client_id, Rect screen_rect, i32 system_theme_buffer_id)

    CreateMenubar() => (i32 menubar_id)
    DestroyMenubar(i32 menubar_id) => ()

    CreateMenu(String menu_title) => (i32 menu_id)
    DestroyMenu(i32 menu_id) => ()

    AddMenuToMenubar(i32 menubar_id, i32 menu_id) => ()
    SetApplicationMenubar(i32 menubar_id) => ()

    AddMenuItem(
        i32 menu_id,
        i32 identifier,
        i32 submenu_id,
        String text,
        bool enabled,
        bool checkable,
        bool checked,
        String shortcut,
        i32 icon_buffer_id,
        bool exclusive) => ()

    AddMenuSeparator(i32 menu_id) => ()

    UpdateMenuItem(i32 menu_id, i32 identifier, i32 submenu_id, String text, bool enabled, bool checkable, bool checked, String shortcut) => ()

    CreateWindow(
        Rect rect,
        bool has_alpha_channel,
        bool modal,
        bool minimizable,
        bool resizable,
        bool fullscreen,
        bool show_titlebar,
        float opacity,
        Size base_size,
        Size size_increment,
        i32 type,
        String title) => (i32 window_id)

    DestroyWindow(i32 window_id) => ()

    SetWindowTitle(i32 window_id, String title) => ()
    GetWindowTitle(i32 window_id) => (String title)

    SetWindowRect(i32 window_id, Rect rect) => ()
    GetWindowRect(i32 window_id) => (Rect rect)

    InvalidateRect(i32 window_id, Vector<Rect> rects) =|
    DidFinishPainting(i32 window_id, Vector<Rect> rects) =|

    SetGlobalCursorTracking(i32 window_id, bool enabled) => ()
    SetWindowOpacity(i32 window_id, float opacity) => ()

    SetWindowBackingStore(i32 window_id, i32 bpp, i32 pitch, i32 shared_buffer_id, bool has_alpha_channel, Size size, bool flush_immediately) => ()
    GetClipboardContents() => (i32 shared_buffer_id, i32 content_size, String content_type)
    SetClipboardContents(i32 shared_buffer_id, i32 content_size, String content_type) => ()

    WM_SetActiveWindow(i32 client_id, i32 window_id) =|
    WM_SetWindowMinimized(i32 client_id, i32 window_id, bool minimized) =|
    WM_StartWindowResize(i32 client_id, i32 window_id) =|
    WM_PopupWindowMenu(i32 client_id, i32 window_id, Point screen_position) =|
    WM_SetWindowTaskbarRect(i32 client_id, i32 window_id, Rect rect) =|

    SetWindowHasAlphaChannel(i32 window_id, bool has_alpha_channel) => ()
    MoveWindowToFront(i32 window_id) => ()
    SetFullscreen(i32 window_id, bool fullscreen) => ()
    PopupMenu(i32 menu_id, Point screen_position) => ()
    DismissMenu(i32 menu_id) => ()

    AsyncSetWallpaper(String path) =|
    SetResolution(Size resolution) => ()
    SetWindowIconBitmap(i32 window_id, i32 icon_buffer_id, Size icon_size) => ()

    GetWallpaper() => (String path)
    SetWindowOverrideCursor(i32 window_id, i32 cursor_type) => ()

    StartDrag(String text, String data_type, String data, i32 bitmap_id, Size bitmap_size) => (bool started)
}