diff options
author | Jihoon Kim <jihoon48.kim@samsung.com> | 2013-08-13 15:27:29 +0900 |
---|---|---|
committer | Jihoon Kim <jihoon48.kim@samsung.com> | 2013-08-13 15:27:29 +0900 |
commit | fe05d358eae261fedb4c9af9b532a9df2df15e6a (patch) | |
tree | 9d8a2c53911d06c63818ab52a7e361b3e3d75855 /src/lib | |
parent | 3e5bd813d3978558c5e164c7819b18f51e810ec2 (diff) |
Add ecore_imf_context_input_panel_on_demand_set/get API
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/ecore_imf/Ecore_IMF.h | 21 | ||||
-rw-r--r-- | src/lib/ecore_imf/ecore_imf_context.c | 26 | ||||
-rw-r--r-- | src/lib/ecore_imf/ecore_imf_private.h | 1 |
3 files changed, 48 insertions, 0 deletions
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 | */ |
1524 | EAPI void ecore_imf_context_candidate_panel_geometry_get(Ecore_IMF_Context *ctx, int *x, int *y, int *w, int *h); | 1524 | EAPI 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 | */ | ||
1535 | EAPI 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 | */ | ||
1545 | EAPI 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 | ||
1210 | EAPI void | ||
1211 | ecore_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 | |||
1223 | EAPI Eina_Bool | ||
1224 | ecore_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 | ||
65 | struct _Ecore_IMF_Module | 66 | struct _Ecore_IMF_Module |