static bool _need_wl_im_init = false;
static struct _wl_im *_wl_im_ctx = NULL;
+static int _ecore_wl_init_count = 0;
#define WAYLAND_MODULE_CLIENT_ID (0)
#define MAX_PREEDIT_BUFSIZE 4000
LOGD ("");
if (!_scim_initialized) {
- ecore_wl_init (NULL);
+ _ecore_wl_init_count = ecore_wl_init (NULL);
initialize ();
_scim_initialized = true;
isf_wsc_input_panel_init ();
isf_wsc_input_panel_shutdown ();
finalize ();
- ecore_wl_shutdown ();
+
+ if (_ecore_wl_init_count > 0) {
+ ecore_wl_shutdown ();
+ _ecore_wl_init_count = 0;
+ }
}
}