Fix bug not to transfer the right bidi direction infomation 82/82682/1
authorJihoon Kim <jihoon48.kim@samsung.com>
Fri, 5 Aug 2016 06:01:23 +0000 (15:01 +0900)
committerJihoon Kim <jihoon48.kim@samsung.com>
Fri, 5 Aug 2016 06:01:23 +0000 (15:01 +0900)
Change-Id: I62cfbd6779a859997f28b5330e71fd1039efd253

ism/extras/wayland_immodule/wayland_imcontext.c
ism/modules/panelagent/wayland/isf_wsc_context.h
ism/modules/panelagent/wayland/isf_wsc_control_ui.cpp
ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp

index 9e3a352..0d0a2bc 100644 (file)
@@ -882,6 +882,11 @@ show_input_panel(Ecore_IMF_Context *ctx)
             ecore_imf_context_input_panel_return_key_type_get (ctx),
             ecore_imf_context_input_panel_return_key_disabled_get (ctx),
             ecore_imf_context_autocapital_type_get (ctx));
+    SECURE_LOGD ("client_window : %#x, password mode : %d, prediction_allow : %d\n",
+            ecore_imf_context_client_window_get (ctx),
+            (imcontext->content_hint & WL_TEXT_INPUT_CONTENT_HINT_SENSITIVE_DATA) ? 1 : 0,
+            ecore_imf_context_prediction_allow_get (ctx));
+    SECURE_LOGD ("input hint : %#x, bidi direction : %d\n", ecore_imf_context_input_hint_get (ctx), imcontext->bidi_direction);
 
     if (_active_context_canvas && !evas_focus_state_get (_active_context_canvas)) {
         LOGW ("Canvas does not have focus!\n");
index 1f5d844..fe9ec28 100644 (file)
@@ -134,6 +134,7 @@ Ecore_IMF_Input_Panel_Lang wsc_context_input_panel_language_get (WSCContextISF *
 bool wsc_context_input_panel_password_mode_get (WSCContextISF *wsc_ctx);
 Ecore_IMF_Input_Hints wsc_context_input_hint_get (WSCContextISF *wsc_ctx);
 Eina_Bool wsc_context_prediction_allow_get (WSCContextISF *wsc_ctx);
+Ecore_IMF_BiDi_Direction wsc_context_bidi_direction_get (WSCContextISF *wsc_ctx);
 void wsc_context_commit_preedit_string(WSCContextISF *wsc_ctx);
 void wsc_context_commit_string(WSCContextISF *wsc_ctx, const char *str);
 void wsc_context_send_preedit_string(WSCContextISF *wsc_ctx);
index e45f13a..72e9f0e 100644 (file)
@@ -154,8 +154,7 @@ void isf_wsc_context_input_panel_show (WSCContextISF* wsc_ctx)
 
     iseContext.input_hint = wsc_context_input_hint_get (wsc_ctx);
 
-    /* FIXME */
-    iseContext.bidi_direction = ECORE_IMF_BIDI_DIRECTION_NEUTRAL;
+    iseContext.bidi_direction = wsc_context_bidi_direction_get (wsc_ctx);
 
     LOGD ("ctx : %p, layout : %d, layout variation : %d\n", wsc_ctx, iseContext.layout, iseContext.layout_variation);
     LOGD ("language : %d, cursor position : %d, caps mode : %d\n", iseContext.language, iseContext.cursor_pos, iseContext.caps_mode);
index 1e8f327..7f7c106 100644 (file)
@@ -1860,6 +1860,11 @@ Eina_Bool wsc_context_prediction_allow_get (WSCContextISF *wsc_ctx)
         return EINA_FALSE;
 }
 
+Ecore_IMF_BiDi_Direction wsc_context_bidi_direction_get (WSCContextISF *wsc_ctx)
+{
+    return (Ecore_IMF_BiDi_Direction)wsc_ctx->bidi_direction;
+}
+
 void wsc_context_delete_surrounding (WSCContextISF *wsc_ctx, int offset, int len)
 {
     LOGD ("offset = %d, len = %d", offset, len);