Modified to send ise state variables in TV 82/188082/3
authorInHong Han <inhong1.han@samsung.com>
Fri, 31 Aug 2018 05:50:15 +0000 (14:50 +0900)
committerInHong Han <inhong1.han@samsung.com>
Fri, 31 Aug 2018 06:35:01 +0000 (15:35 +0900)
Change-Id: Iecad645a279e45f4210156dbd533833d8391e413

ism/src/scim_helper.cpp

index 91933a3..d0f7986 100644 (file)
@@ -162,7 +162,7 @@ public:
     int need_update_selection_text;
     uint32 layout;
     bool ise_show_flag;
-    bool hw_keyboard_mode;
+    bool need_update_entry_metadata;
     bool ise_focus_flag;
     char* finalized_text;
     uint32 finalized_cursor_pos;
@@ -236,7 +236,7 @@ public:
     HelperAgentImpl (HelperAgent* thiz) : magic(0), magic_active(0), timeout(-1), focused_ic ((uint32) -1), thiz (thiz),
         surrounding_text (NULL), selection_text (NULL), cursor_pos (0),
         need_update_surrounding_text (0), need_update_selection_text (0),
-        layout (0), ise_show_flag (false), hw_keyboard_mode (false), ise_focus_flag (false),
+        layout (0), ise_show_flag (false), need_update_entry_metadata (false), ise_focus_flag (false),
         finalized_text(NULL), finalized_cursor_pos(0) {
     }
 
@@ -583,7 +583,7 @@ public:
         }
     }
 private:
-    HelperAgentImpl () : magic (0), magic_active (0), timeout (-1), focused_ic ((uint32) -1), thiz (NULL), surrounding_text (NULL), selection_text (NULL), cursor_pos (0), need_update_surrounding_text (0), need_update_selection_text (0), layout (0), ise_show_flag (false), hw_keyboard_mode (false), ise_focus_flag (false), finalized_text (NULL), finalized_cursor_pos (0) { }
+    HelperAgentImpl () : magic (0), magic_active (0), timeout (-1), focused_ic ((uint32) -1), thiz (NULL), surrounding_text (NULL), selection_text (NULL), cursor_pos (0), need_update_surrounding_text (0), need_update_selection_text (0), layout (0), ise_show_flag (false), need_update_entry_metadata (false), ise_focus_flag (false), finalized_text (NULL), finalized_cursor_pos (0) { }
 };
 
 static MessageQueue message_queue;
@@ -942,7 +942,7 @@ HelperAgent::handle_message (MessageItem *message)
             MessageItemUpdateCursorPosition *subclass = static_cast<MessageItemUpdateCursorPosition*>(message);
             m_impl->cursor_pos = subclass->get_cursor_pos_ref();
             LOGD ("update cursor position %d", subclass->get_cursor_pos_ref());
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_update_cursor_position (this, subclass->get_ic_ref(), subclass->get_ic_uuid_ref(),
                     subclass->get_cursor_pos_ref());
             }
@@ -1021,6 +1021,8 @@ HelperAgent::handle_message (MessageItem *message)
         {
             MessageItemFocusIn *subclass = static_cast<MessageItemFocusIn*>(message);
             m_impl->ise_focus_flag = true;
+            if (_TV)
+                m_impl->need_update_entry_metadata = true;
             m_impl->signal_focus_in (this, subclass->get_ic_ref(), subclass->get_ic_uuid_ref());
             m_impl->focused_ic = subclass->get_ic_ref();
             if (m_impl->finalized_text != NULL)
@@ -1064,7 +1066,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_ISE_MODE:
         {
             MessageItemSetISEMode *subclass = static_cast<MessageItemSetISEMode*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_mode (this, subclass->get_mode_ref());
             }
             break;
@@ -1072,7 +1074,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_ISE_LANGUAGE:
         {
             MessageItemSetISELanguage *subclass = static_cast<MessageItemSetISELanguage*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_language (this, subclass->get_language_ref());
             }
             break;
@@ -1080,7 +1082,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_ISE_IMDATA:
         {
             MessageItemSetISEImData *subclass = static_cast<MessageItemSetISEImData*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_imdata (this, *(subclass->get_imdata_ptr()), subclass->get_len_ref());
             }
             if (!m_impl->si.null ()) m_impl->si->set_imdata(*(subclass->get_imdata_ptr()),
@@ -1119,7 +1121,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_RETURN_KEY_TYPE:
         {
             MessageItemSetReturnKeyType *subclass = static_cast<MessageItemSetReturnKeyType*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_return_key_type (this, subclass->get_type_ref());
             }
             break;
@@ -1137,7 +1139,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_RETURN_KEY_DISABLE:
         {
             MessageItemSetReturnKeyDisable *subclass = static_cast<MessageItemSetReturnKeyDisable*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_return_key_disable (this, subclass->get_disabled_ref());
             }
             break;
@@ -1174,7 +1176,7 @@ HelperAgent::handle_message (MessageItem *message)
         {
             MessageItemSetLayout *subclass = static_cast<MessageItemSetLayout*>(message);
             m_impl->layout = subclass->get_layout_ref();
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_layout (this, subclass->get_layout_ref());
             }
             if (!m_impl->si.null ()) m_impl->si->set_layout(subclass->get_layout_ref());
@@ -1194,7 +1196,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_INPUT_MODE:
         {
             MessageItemSetInputMode *subclass = static_cast<MessageItemSetInputMode*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_input_mode (this, subclass->get_input_mode_ref());
             }
             break;
@@ -1376,7 +1378,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_INPUT_HINT:
         {
             MessageItemSetInputHint *subclass = static_cast<MessageItemSetInputHint*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_input_hint (this, subclass->get_input_hint_ref());
             }
             if (!m_impl->si.null ()) m_impl->si->set_input_hint(subclass->get_input_hint_ref());
@@ -1443,9 +1445,9 @@ HelperAgent::handle_message (MessageItem *message)
         {
             MessageItemSetKeyboardMode *subclass = static_cast<MessageItemSetKeyboardMode*>(message);
             if (subclass->get_mode_ref())
-                m_impl->hw_keyboard_mode = false;
+                m_impl->need_update_entry_metadata = false;
             else
-                m_impl->hw_keyboard_mode = true;
+                m_impl->need_update_entry_metadata = true;
             break;
         }
         case ISM_TRANS_CMD_SET_PREDICTION_HINT:
@@ -1457,7 +1459,7 @@ HelperAgent::handle_message (MessageItem *message)
         case ISM_TRANS_CMD_SET_MIME_TYPE:
         {
             MessageItemSetMimeType *subclass = static_cast<MessageItemSetMimeType*>(message);
-            if (m_impl->ise_show_flag || m_impl->hw_keyboard_mode) {
+            if (m_impl->ise_show_flag || m_impl->need_update_entry_metadata) {
                 m_impl->signal_set_mime_type (this, subclass->get_mime_type_ref());
             }
             break;