From e22b2b5476f0c8597c09b93fc1310d6548b66bf5 Mon Sep 17 00:00:00 2001 From: Sungmin Kwak Date: Thu, 23 Jul 2015 20:23:58 +0900 Subject: [PATCH] Show IME Selector notification when more than one IME are enabled Change-Id: I095676f5e1ffad290b0cb34c17e96a5a1ae3f37c --- ism/extras/efl_panel/isf_panel_efl.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/ism/extras/efl_panel/isf_panel_efl.cpp b/ism/extras/efl_panel/isf_panel_efl.cpp index 8c03dda..a33b6ee 100644 --- a/ism/extras/efl_panel/isf_panel_efl.cpp +++ b/ism/extras/efl_panel/isf_panel_efl.cpp @@ -3806,12 +3806,16 @@ static void slot_set_candidate_style (int portrait_line, int mode) } } -static unsigned int get_ise_size (TOOLBAR_MODE_T mode) +static unsigned int get_ise_count (TOOLBAR_MODE_T mode, bool valid_helper) { unsigned int ise_count = 0; for (unsigned int i = 0; i < _ime_info.size (); i++) { - if (mode == _ime_info[i].mode) - ise_count++; + if (mode == _ime_info[i].mode) { + if (mode == TOOLBAR_KEYBOARD_MODE || !valid_helper) + ise_count++; + else if (_ime_info[i].is_enabled) + ise_count++; + } } return ise_count; @@ -3848,7 +3852,7 @@ static void slot_update_factory_info (const PanelFactoryInfo &info) if (old_ise != ise_name) { if (TOOLBAR_KEYBOARD_MODE == mode) { char noti_msg[256] = {0}; - unsigned int keyboard_ise_count = get_ise_size (TOOLBAR_KEYBOARD_MODE); + unsigned int keyboard_ise_count = get_ise_count (TOOLBAR_KEYBOARD_MODE, false); if (keyboard_ise_count == 0) { LOGD ("the number of keyboard ise is %d\n", keyboard_ise_count); return; @@ -5915,7 +5919,7 @@ static Eina_Bool x_event_window_property_cb (void *data, int ev_type, void *even vconf_set_int (VCONFKEY_ISF_INPUT_PANEL_STATE, VCONFKEY_ISF_INPUT_PANEL_STATE_SHOW); if (_panel_agent->get_current_toolbar_mode () == TOOLBAR_HELPER_MODE) { - if (get_ise_size (TOOLBAR_HELPER_MODE) >= 2) { + if (get_ise_count (TOOLBAR_HELPER_MODE, true) >= 2) { ecore_x_event_mask_set (efl_get_quickpanel_window (), ECORE_X_EVENT_MASK_WINDOW_PROPERTY); #ifdef HAVE_NOTIFICATION String ise_name; -- 2.7.4