set_focus(Ecore_IMF_Context *ctx)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext || !imcontext->window) return;
+
Ecore_Wl_Input *input = ecore_wl_window_keyboard_get(imcontext->window);
if (!input)
return;
LOGD("context_add. ctx : %p", ctx);
+ if (!imcontext) return;
+
imcontext->ctx = ctx;
imcontext->input_panel_layout = ECORE_IMF_INPUT_PANEL_LAYOUT_NORMAL;
LOGD ("context_del. ctx : %p", ctx);
+ if (!imcontext) return;
+
// TIZEN_ONLY(20150708): Support back key
if (_focused_ctx == ctx)
_focused_ctx = NULL;
LOGD("ctx : %p", ctx);
+ if (!imcontext) return;
+
commit_preedit(imcontext);
clear_preedit(imcontext);
LOGD("ctx : %p", ctx);
- if (!imcontext->input) return;
+ if (!imcontext || !imcontext->input) return;
// TIZEN_ONLY(20150708): Support back key
if (ctx == _focused_ctx)
int *cursor_pos)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
LOGD("pre-edit string requested (preedit: '%s')",
imcontext->preedit_text ? imcontext->preedit_text : "");
int *cursor_pos)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
LOGD("pre-edit string with attributes requested (preedit: '%s')",
imcontext->preedit_text ? imcontext->preedit_text : "");
int cursor_pos)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
LOGD ("set cursor position (cursor: %d)", cursor_pos);
if (imcontext->cursor_position != cursor_pos) {
LOGD("client window set (window: %p)", window);
- if (window != NULL)
+ if (imcontext && window)
imcontext->window = ecore_wl_window_find((Ecore_Window)window);
}
LOGD("client canvas set (canvas: %p)", canvas);
- if (canvas != NULL)
+ if (imcontext && canvas)
imcontext->canvas = canvas;
}
wayland_im_context_cursor_location_set(Ecore_IMF_Context *ctx, int x, int y, int width, int height)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if ((imcontext->cursor_location.x != x) ||
(imcontext->cursor_location.y != y) ||
Ecore_IMF_Autocapital_Type autocapital_type)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
imcontext->content_hint &= ~(WL_TEXT_INPUT_CONTENT_HINT_AUTO_CAPITALIZATION |
// TIZEN_ONLY(20160201): Add autocapitalization word
Ecore_IMF_Input_Panel_Layout layout)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
imcontext->input_panel_layout = layout;
wayland_im_context_input_panel_layout_get(Ecore_IMF_Context *ctx)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return ECORE_IMF_INPUT_PANEL_LAYOUT_NORMAL;
return imcontext->input_panel_layout;
}
Ecore_IMF_Input_Mode input_mode)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if (input_mode & ECORE_IMF_INPUT_MODE_INVISIBLE)
imcontext->content_hint |= WL_TEXT_INPUT_CONTENT_HINT_PASSWORD;
Ecore_IMF_Input_Hints input_hints)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if (input_hints & ECORE_IMF_INPUT_HINT_AUTO_COMPLETE)
imcontext->content_hint |= WL_TEXT_INPUT_CONTENT_HINT_AUTO_COMPLETION;
Ecore_IMF_Input_Panel_Lang lang)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if (lang == ECORE_IMF_INPUT_PANEL_LANG_ALPHABET)
imcontext->content_hint |= WL_TEXT_INPUT_CONTENT_HINT_LATIN;
Ecore_IMF_Input_Panel_Return_Key_Type return_key_type)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
imcontext->return_key_type = return_key_type;
Eina_Bool disabled)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
imcontext->return_key_disabled = disabled;
char **locale)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if (locale)
*locale = strdup(imcontext->language ? imcontext->language : "");
Eina_Bool prediction)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if (prediction)
imcontext->content_hint |= WL_TEXT_INPUT_CONTENT_HINT_AUTO_COMPLETION;
wayland_im_context_input_panel_imdata_set(Ecore_IMF_Context *ctx, const void *data, int length)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
if (imcontext->imdata)
free(imcontext->imdata);
wayland_im_context_bidi_direction_set(Ecore_IMF_Context *ctx, Ecore_IMF_BiDi_Direction bidi_direction)
{
WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
+ if (!imcontext) return;
imcontext->bidi_direction = bidi_direction;