Enable IBus integration
[profile/ivi/weekeyboard.git] / src / wkb-ibus.h
index 8d04acf..8a2512d 100644 (file)
 extern "C" {
 #endif
 
+struct wl_input_method_context;
+
+/* Events */
+extern int WKB_IBUS_CONNECTED;
+extern int WKB_IBUS_DISCONNECTED;
+
 int wkb_ibus_init(void);
-void wkb_ibus_shutdown(void);
+Eina_Bool wkb_ibus_shutdown(void);
 
 Eina_Bool wkb_ibus_connect(void);
 void wkb_ibus_disconnect(void);
 
 Eina_Bool wkb_ibus_is_connected(void);
 
-/* Panel */
+/* IBus Input Context */
+void wkb_ibus_input_context_create(struct wl_input_method_context *wl_ctx);
+void wkb_ibus_input_context_destroy(void);
+void wkb_ibus_input_context_process_key_event(const char *key);
+void wkb_ibus_input_context_set_surrounding_text(const char *text, unsigned int cursor, unsigned int anchor);
+unsigned int wkb_ibus_input_context_serial(void);
+void wkb_ibus_input_context_set_serial(unsigned int serial);
+
+/* IBus Panel */
 Eldbus_Service_Interface * wkb_ibus_panel_register(Eldbus_Connection *conn);
 
-/* Config */
-Eldbus_Service_Interface * wkb_ibus_config_register(Eldbus_Connection *conn);
+/* IBus Config */
+Eldbus_Service_Interface * wkb_ibus_config_register(Eldbus_Connection *conn, const char *path);
 void wkb_ibus_config_unregister(void);
 
 #ifdef __cplusplus