#ifndef DIYA_SHELL_H #define DIYA_SHELL_H #include #include #include #include "base.h" #define DIYA_TYPE_SHELL (diya_shell_get_type()) G_DECLARE_DERIVABLE_TYPE(DiyaShell, diya_shell, DIYA, SHELL, DiyaObject) #define DIYA_TYPE_WAYLAND (diya_wayland_get_type ()) G_DECLARE_FINAL_TYPE (DiyaWayland, diya_wayland, DIYA, WAYLAND, DiyaShellObject) #define DIYA_TYPE_VIRTUAL_KEYBOARD (diya_virtual_keyboard_get_type ()) G_DECLARE_FINAL_TYPE (DiyaVirtualKeyboard, diya_virtual_keyboard, DIYA, VIRTUAL_KEYBOARD, DiyaShellObject) struct wl_registry; typedef void (*wl_protocol_manager_register_t)(struct wl_registry*, uint32_t,DiyaShell*); struct _DiyaShellClass { DiyaObjectClass parent_class; wl_protocol_manager_register_t foreign_register; wl_protocol_manager_register_t virtual_keyboard_register; void (*monitor_changed_handle)(GListModel* /*list*/,guint /*position*/, guint /*removed*/,guint /*added*/, gpointer); void (*startup_handle)(DiyaShell*); void (*active_handle)(DiyaShell*); }; DiyaWayland * diya_shell_get_wayland(DiyaShell* shell); GtkApplication* diya_shell_get_application(DiyaShell* shell); const char* diya_shell_get_name(DiyaShell* shell); DiyaVirtualKeyboard* diya_shell_get_virtual_keyboard(DiyaShell* shell); int diya_shell_run(DiyaShell* shell, int argc, char **argv); #endif