#include #include endpoint WindowServer { create_menu(i32 menu_id, [UTF8] String menu_title) =| destroy_menu(i32 menu_id) =| add_menu(i32 window_id, i32 menu_id) =| add_menu_item( i32 menu_id, i32 identifier, i32 submenu_id, [UTF8] String text, bool enabled, bool checkable, bool checked, bool is_default, [UTF8] String shortcut, Gfx::ShareableBitmap icon, bool exclusive) =| add_menu_separator(i32 menu_id) =| update_menu_item(i32 menu_id, i32 identifier, i32 submenu_id, [UTF8] String text, bool enabled, bool checkable, bool checked, bool is_default, [UTF8] String shortcut) =| create_window( i32 window_id, Gfx::IntRect rect, bool auto_position, bool has_alpha_channel, bool modal, bool minimizable, bool resizable, bool fullscreen, bool frameless, bool forced_shadow, bool accessory, float opacity, float alpha_hit_threshold, Gfx::IntSize base_size, Gfx::IntSize size_increment, Gfx::IntSize minimum_size, Optional resize_aspect_ratio, i32 type, [UTF8] String title, i32 parent_window_id, Gfx::IntRect launch_origin_rect) =| destroy_window(i32 window_id) => (Vector destroyed_window_ids) set_window_title(i32 window_id, [UTF8] String title) =| get_window_title(i32 window_id) => ([UTF8] String title) set_window_progress(i32 window_id, Optional progress) =| set_window_modified(i32 window_id, bool modified) =| is_window_modified(i32 window_id) => (bool modified) set_window_rect(i32 window_id, Gfx::IntRect rect) => (Gfx::IntRect rect) get_window_rect(i32 window_id) => (Gfx::IntRect rect) set_window_minimum_size(i32 window_id, Gfx::IntSize size) =| get_window_minimum_size(i32 window_id) => (Gfx::IntSize size) get_applet_rect_on_screen(i32 window_id) => (Gfx::IntRect rect) start_window_resize(i32 window_id) =| is_maximized(i32 window_id) => (bool maximized) set_maximized(i32 window_id, bool maximized) =| invalidate_rect(i32 window_id, Vector rects, bool ignore_occlusion) =| did_finish_painting(i32 window_id, Vector rects) =| set_global_cursor_tracking(i32 window_id, bool enabled) =| set_global_mouse_tracking(bool enabled) =| set_window_opacity(i32 window_id, float opacity) =| set_window_alpha_hit_threshold(i32 window_id, float threshold) =| set_window_backing_store(i32 window_id, i32 bpp, i32 pitch, IPC::File anon_file, i32 serial, bool has_alpha_channel, Gfx::IntSize size, bool flush_immediately) => () set_window_has_alpha_channel(i32 window_id, bool has_alpha_channel) =| move_window_to_front(i32 window_id) =| set_fullscreen(i32 window_id, bool fullscreen) =| set_frameless(i32 window_id, bool frameless) =| set_forced_shadow(i32 window_id, bool shadow) =| popup_menu(i32 menu_id, Gfx::IntPoint screen_position) =| dismiss_menu(i32 menu_id) =| set_wallpaper(String path) =| set_background_color(String background_color) =| set_wallpaper_mode(String mode) =| set_screen_layout(::WindowServer::ScreenLayout screen_layout, bool save) => (bool success, String error_msg) get_screen_layout() => (::WindowServer::ScreenLayout screen_layout) save_screen_layout() => (bool success, String error_msg) show_screen_numbers(bool show) =| apply_virtual_desktop_settings(u32 rows, u32 columns, bool save) => (bool success) get_virtual_desktop_settings() => (u32 rows, u32 columns, u32 max_rows, u32 max_columns) set_window_icon_bitmap(i32 window_id, Gfx::ShareableBitmap icon) =| get_wallpaper() => (String path) set_window_cursor(i32 window_id, i32 cursor_type) =| set_window_custom_cursor(i32 window_id, Gfx::ShareableBitmap cursor) =| start_drag([UTF8] String text, HashMap mime_data, Gfx::ShareableBitmap drag_bitmap) => (bool started) set_system_theme(String theme_path, [UTF8] String theme_name) => (bool success) get_system_theme() => ([UTF8] String theme_name) refresh_system_theme() =| apply_cursor_theme(String name) =| get_cursor_theme() => (String name) set_system_fonts(String default_font_query, String fixed_width_font_query) => (bool success) set_window_base_size_and_size_increment(i32 window_id, Gfx::IntSize base_size, Gfx::IntSize size_increment) =| set_window_resize_aspect_ratio(i32 window_id, Optional resize_aspect_ratio) =| enable_display_link() =| disable_display_link() =| set_global_cursor_position(Gfx::IntPoint position) =| get_global_cursor_position() => (Gfx::IntPoint position) set_mouse_acceleration(float factor) =| get_mouse_acceleration() => (float factor) set_scroll_step_size(u32 step_size) =| get_scroll_step_size() => (u32 step_size) get_screen_bitmap(Optional rect, Optional screen_index) => (Gfx::ShareableBitmap bitmap) get_screen_bitmap_around_cursor(Gfx::IntSize size) => (Gfx::ShareableBitmap bitmap) pong() =| set_double_click_speed(int speed) =| get_double_click_speed() => (int speed) get_desktop_display_scale(u32 screen_index) => (int desktop_display_scale) set_flash_flush(bool enabled) =| set_window_parent_from_client(i32 client_id, i32 parent_id, i32 child_id) =| get_window_rect_from_client(i32 client_id, i32 window_id) => (Gfx::IntRect rect) add_window_stealing_for_client(i32 client_id, i32 window_id) =| remove_window_stealing_for_client(i32 client_id, i32 window_id) =| remove_window_stealing(i32 window_id) =| }