summaryrefslogtreecommitdiff
path: root/legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp
diff options
context:
space:
mode:
authorJihoon Kim <imfine98@gmail.com>2012-02-07 10:30:57 +0000
committerJihoon Kim <imfine98@gmail.com>2012-02-07 10:30:57 +0000
commit15ea121e01052f5299736b9fb02af915cb0a806b (patch)
tree8c06a3ee50e22a573dd54a427a39a8dec45043ef /legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp
parentcf42822ea50ba2f11414f3b66026a2db4b4d725c (diff)
Support ecore_imf_context_input_panel_show/hide in SCIM module
SVN revision: 67728
Diffstat (limited to '')
-rw-r--r--legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp b/legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp
index e7c00d0369..ee230f8bb0 100644
--- a/legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp
+++ b/legacy/ecore/src/modules/immodules/scim/scim_imcontext.cpp
@@ -926,6 +926,9 @@ isf_imf_context_focus_in(Ecore_IMF_Context *ctx)
926 926
927 _panel_client.send(); 927 _panel_client.send();
928 } 928 }
929
930 if (ecore_imf_context_input_panel_enabled_get(ctx))
931 ecore_imf_context_input_panel_show(ctx);
929} 932}
930 933
931/** 934/**
@@ -968,6 +971,9 @@ isf_imf_context_focus_out(Ecore_IMF_Context *ctx)
968 _panel_client.send(); 971 _panel_client.send();
969 _focused_ic = 0; 972 _focused_ic = 0;
970 } 973 }
974
975 if (ecore_imf_context_input_panel_enabled_get(ctx))
976 ecore_imf_context_input_panel_hide(ctx);
971} 977}
972 978
973/** 979/**
@@ -1391,6 +1397,32 @@ isf_imf_context_filter_event(Ecore_IMF_Context *ctx, Ecore_IMF_Event_Type type,
1391 return ret; 1397 return ret;
1392} 1398}
1393 1399
1400EAPI void
1401isf_imf_context_input_panel_show(Ecore_IMF_Context *ctx)
1402{
1403 SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
1404
1405 EcoreIMFContextISF *ic = (EcoreIMFContextISF*)ecore_imf_context_data_get(ctx);
1406 if (ic == NULL || ic->impl == NULL)
1407 return;
1408
1409 ecore_x_e_virtual_keyboard_state_set
1410 (ic->impl->client_window, ECORE_X_VIRTUAL_KEYBOARD_STATE_ON);
1411}
1412
1413EAPI void
1414isf_imf_context_input_panel_hide(Ecore_IMF_Context *ctx)
1415{
1416 SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
1417
1418 EcoreIMFContextISF *ic = (EcoreIMFContextISF*)ecore_imf_context_data_get(ctx);
1419 if (ic == NULL || ic->impl == NULL)
1420 return;
1421
1422 ecore_x_e_virtual_keyboard_state_set
1423 (ic->impl->client_window, ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF);
1424}
1425
1394/* Panel Slot functions */ 1426/* Panel Slot functions */
1395static void 1427static void
1396panel_slot_reload_config(int context __UNUSED__) 1428panel_slot_reload_config(int context __UNUSED__)