summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--ChangeLog4
-rw-r--r--NEWS1
-rw-r--r--src/lib/ecore_imf/Ecore_IMF.h21
-rw-r--r--src/lib/ecore_imf/ecore_imf_context.c26
-rw-r--r--src/lib/ecore_imf/ecore_imf_private.h1
5 files changed, 53 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 4be775c02a..8d50d5192c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
12013-08-13 Jihoon Kim
2
3 * Ecore_IMF: add ecore_imf_context_input_panel_on_demand_set/get()
4
12013-08-09 Cedric Bail 52013-08-09 Cedric Bail
2 6
3 * Edje: add edje_object_mmap_set(). 7 * Edje: add edje_object_mmap_set().
diff --git a/NEWS b/NEWS
index 0790089c06..6da6d0ee2c 100644
--- a/NEWS
+++ b/NEWS
@@ -141,6 +141,7 @@ Additions:
141 - Add ecore_imf_input_panel_hide API 141 - Add ecore_imf_input_panel_hide API
142 - Add ecore_imf_context_input_panel_event_callback_call, clear API 142 - Add ecore_imf_context_input_panel_event_callback_call, clear API
143 - Add ECORE_IMF_INPUT_PANEL_LAYOUT_DATETIME layout 143 - Add ECORE_IMF_INPUT_PANEL_LAYOUT_DATETIME layout
144 - Add ecore_imf_context_input_panel_on_demand_set/get API
144 * Eio: 145 * Eio:
145 - Add eio_eet_sync symbols. 146 - Add eio_eet_sync symbols.
146 147
diff --git a/src/lib/ecore_imf/Ecore_IMF.h b/src/lib/ecore_imf/Ecore_IMF.h
index 669e39a9e0..df37a4dc01 100644
--- a/src/lib/ecore_imf/Ecore_IMF.h
+++ b/src/lib/ecore_imf/Ecore_IMF.h
@@ -1523,6 +1523,27 @@ EAPI void ecore_imf_context_input_panel_language_locale
1523 */ 1523 */
1524EAPI void ecore_imf_context_candidate_panel_geometry_get(Ecore_IMF_Context *ctx, int *x, int *y, int *w, int *h); 1524EAPI void ecore_imf_context_candidate_panel_geometry_get(Ecore_IMF_Context *ctx, int *x, int *y, int *w, int *h);
1525 1525
1526/**
1527 * Set whether the Input Method Context should request to show the input panel in case of only an user's explicit Mouse Up event.
1528 * It doesn't request to show the input panel even though the Input Method Context has focus.
1529 *
1530 * @param ctx An #Ecore_IMF_Context.
1531 * @param ondemand If true, the input panel will be shown in case of only Mouse up event. (Focus event will be ignored.)
1532 * @ingroup Ecore_IMF_Context_Group
1533 * @since 1.8.0
1534 */
1535EAPI void ecore_imf_context_input_panel_show_on_demand_set(Ecore_IMF_Context *ctx, Eina_Bool ondemand);
1536
1537/**
1538 * Get whether the Input Method Context should request to show the input panel in case of only an user's explicit Mouse Up event.
1539 *
1540 * @param ctx An #Ecore_IMF_Context.
1541 * @return @c EINA_TRUE if the input panel will be shown in case of only Mouse up event.
1542 * @ingroup Ecore_IMF_Context_Group
1543 * @since 1.8.0
1544 */
1545EAPI Eina_Bool ecore_imf_context_input_panel_show_on_demand_get(Ecore_IMF_Context *ctx);
1546
1526/* The following entry points must be exported by each input method module 1547/* The following entry points must be exported by each input method module
1527 */ 1548 */
1528 1549
diff --git a/src/lib/ecore_imf/ecore_imf_context.c b/src/lib/ecore_imf/ecore_imf_context.c
index 272a04be66..6b243d6447 100644
--- a/src/lib/ecore_imf/ecore_imf_context.c
+++ b/src/lib/ecore_imf/ecore_imf_context.c
@@ -1207,3 +1207,29 @@ ecore_imf_context_candidate_panel_geometry_get(Ecore_IMF_Context *ctx, int *x, i
1207 ctx->klass->candidate_panel_geometry_get(ctx, x, y, w, h); 1207 ctx->klass->candidate_panel_geometry_get(ctx, x, y, w, h);
1208} 1208}
1209 1209
1210EAPI void
1211ecore_imf_context_input_panel_show_on_demand_set(Ecore_IMF_Context *ctx, Eina_Bool ondemand)
1212{
1213 if (!ECORE_MAGIC_CHECK(ctx, ECORE_MAGIC_CONTEXT))
1214 {
1215 ECORE_MAGIC_FAIL(ctx, ECORE_MAGIC_CONTEXT,
1216 "ecore_imf_context_input_panel_show_on_demand_set");
1217 return;
1218 }
1219
1220 ctx->input_panel_show_on_demand = ondemand;
1221}
1222
1223EAPI Eina_Bool
1224ecore_imf_context_input_panel_show_on_demand_get(Ecore_IMF_Context *ctx)
1225{
1226 if (!ECORE_MAGIC_CHECK(ctx, ECORE_MAGIC_CONTEXT))
1227 {
1228 ECORE_MAGIC_FAIL(ctx, ECORE_MAGIC_CONTEXT,
1229 "ecore_imf_context_input_panel_show_on_demand_get");
1230 return EINA_FALSE;
1231 }
1232
1233 return ctx->input_panel_show_on_demand;
1234}
1235
diff --git a/src/lib/ecore_imf/ecore_imf_private.h b/src/lib/ecore_imf/ecore_imf_private.h
index b63500afec..5c62cfd291 100644
--- a/src/lib/ecore_imf/ecore_imf_private.h
+++ b/src/lib/ecore_imf/ecore_imf_private.h
@@ -60,6 +60,7 @@ struct _Ecore_IMF_Context
60 Eina_Bool input_panel_enabled : 1; 60 Eina_Bool input_panel_enabled : 1;
61 Eina_Bool input_panel_return_key_disabled : 1; 61 Eina_Bool input_panel_return_key_disabled : 1;
62 Eina_Bool input_panel_caps_lock_mode : 1; 62 Eina_Bool input_panel_caps_lock_mode : 1;
63 Eina_Bool input_panel_show_on_demand : 1;
63}; 64};
64 65
65struct _Ecore_IMF_Module 66struct _Ecore_IMF_Module