forked from enlightenment/efl
ecore_imf: Add ecore_imf_input_panel_hide() API
This commit is contained in:
parent
373fb30096
commit
58d7c5c1dc
|
@ -1,3 +1,7 @@
|
|||
2013-04-13 Jihoon Kim
|
||||
|
||||
* Ecore_IMF: Add ecore_imf_input_panel_hide () API
|
||||
|
||||
2013-04-10 Rafael Antognolli
|
||||
|
||||
* Ecore: Add support for double and triple click on Wayland.
|
||||
|
|
4
NEWS
4
NEWS
|
@ -90,7 +90,9 @@ Additions:
|
|||
* Ecore:
|
||||
- notify systemd that we are ready as soon as the main loop is running.
|
||||
- automatically support Watchdog.
|
||||
* ecore_imf: Add ecore_imf_context_input_panel_layout_variation_set/get API
|
||||
* ecore_imf:
|
||||
- Add ecore_imf_context_input_panel_layout_variation_set/get API
|
||||
- Add ecore_imf_input_panel_hide API
|
||||
* Add edje_object_part_text_input_panel_layout_variation_set/get API
|
||||
* Evil:
|
||||
- Add mkdtemp.
|
||||
|
|
|
@ -535,6 +535,14 @@ EAPI int ecore_imf_shutdown(void);
|
|||
|
||||
EAPI void ecore_imf_module_register(const Ecore_IMF_Context_Info *info, Ecore_IMF_Context *(*imf_module_create)(void), Ecore_IMF_Context *(*imf_module_exit)(void));
|
||||
|
||||
/**
|
||||
* Hide the input panel.
|
||||
* @return EINA_TRUE if the input panel will be hidden
|
||||
EINA_FALSE if the input panel is already in hidden state
|
||||
* @ingroup Ecore_IMF_Lib_Group
|
||||
*/
|
||||
EAPI Eina_Bool ecore_imf_input_panel_hide(void);
|
||||
|
||||
/**
|
||||
* Get the list of the available Input Method Context ids.
|
||||
*
|
||||
|
|
|
@ -16,6 +16,7 @@ EAPI int ECORE_IMF_EVENT_DELETE_SURROUNDING = 0;
|
|||
|
||||
int _ecore_imf_log_dom = -1;
|
||||
static int _ecore_imf_init_count = 0;
|
||||
extern Ecore_IMF_Context *show_req_ctx;
|
||||
|
||||
EAPI int
|
||||
ecore_imf_init(void)
|
||||
|
@ -52,3 +53,18 @@ ecore_imf_shutdown(void)
|
|||
ecore_shutdown();
|
||||
return _ecore_imf_init_count;
|
||||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
ecore_imf_input_panel_hide(void)
|
||||
{
|
||||
if (show_req_ctx)
|
||||
{
|
||||
if (ecore_imf_context_input_panel_state_get(show_req_ctx) != ECORE_IMF_INPUT_PANEL_STATE_HIDE)
|
||||
{
|
||||
ecore_imf_context_input_panel_hide(show_req_ctx);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
|
|
@ -12,6 +12,8 @@
|
|||
#include "Ecore_IMF.h"
|
||||
#include "ecore_imf_private.h"
|
||||
|
||||
Ecore_IMF_Context *show_req_ctx = NULL;
|
||||
|
||||
EAPI Eina_List *
|
||||
ecore_imf_context_available_ids_get(void)
|
||||
{
|
||||
|
@ -251,6 +253,8 @@ ecore_imf_context_show(Ecore_IMF_Context *ctx)
|
|||
"ecore_imf_context_show");
|
||||
return;
|
||||
}
|
||||
|
||||
show_req_ctx = ctx;
|
||||
if (ctx->klass->show) ctx->klass->show(ctx);
|
||||
}
|
||||
|
||||
|
@ -263,6 +267,8 @@ ecore_imf_context_hide(Ecore_IMF_Context *ctx)
|
|||
"ecore_imf_context_hide");
|
||||
return;
|
||||
}
|
||||
|
||||
show_req_ctx = NULL;
|
||||
if (ctx->klass->hide) ctx->klass->hide(ctx);
|
||||
}
|
||||
|
||||
|
@ -772,6 +778,7 @@ ecore_imf_context_input_panel_show(Ecore_IMF_Context *ctx)
|
|||
return;
|
||||
}
|
||||
|
||||
show_req_ctx = ctx;
|
||||
if (ctx->klass->show) ctx->klass->show(ctx);
|
||||
}
|
||||
|
||||
|
@ -785,6 +792,7 @@ ecore_imf_context_input_panel_hide(Ecore_IMF_Context *ctx)
|
|||
return;
|
||||
}
|
||||
|
||||
show_req_ctx = NULL;
|
||||
if (ctx->klass->hide) ctx->klass->hide(ctx);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue