diff options
author | Li Zhang <li2012.zhang@samsung.com> | 2016-05-13 18:46:13 +0800 |
---|---|---|
committer | Li Zhang <li2012.zhang@samsung.com> | 2016-05-13 18:46:13 +0800 |
commit | c501f28596a3f6cd0ee51801dee1fae32c94b0b8 (patch) | |
tree | ddd5dea41eb1870eaca64b57bfe4a9b3c1f65950 /ism/src/scim_helper.cpp | |
parent | 6de1ffe3ca6f03ffa72f3c61c767d71c9c47fdb0 (diff) | |
download | isf-c501f28596a3f6cd0ee51801dee1fae32c94b0b8.tar.gz isf-c501f28596a3f6cd0ee51801dee1fae32c94b0b8.tar.bz2 isf-c501f28596a3f6cd0ee51801dee1fae32c94b0b8.zip |
Invoking set_layout() when changing IMEngine
Change-Id: Ib325b62a7bf3eb2f20cbd03c857f43d30ff42aa6
Diffstat (limited to 'ism/src/scim_helper.cpp')
-rw-r--r-- | ism/src/scim_helper.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ism/src/scim_helper.cpp b/ism/src/scim_helper.cpp index 1820d6c6..914286c3 100644 --- a/ism/src/scim_helper.cpp +++ b/ism/src/scim_helper.cpp @@ -146,6 +146,7 @@ public: uint32 cursor_pos; bool need_update_surrounding_text; bool need_update_selection_text; + uint32 layout; HelperAgentSignalVoid signal_exit; HelperAgentSignalVoid signal_attach_input_context; @@ -209,7 +210,8 @@ public: public: HelperAgentImpl (HelperAgent* thiz) : focused_ic ((uint32) -1), thiz (thiz), surrounding_text (NULL), selection_text (NULL), cursor_pos (0), - need_update_surrounding_text (false), need_update_selection_text (false) { + need_update_surrounding_text (false), need_update_selection_text (false), + layout (0) { } ~HelperAgentImpl () { @@ -1053,6 +1055,7 @@ HelperAgent::filter_event () uint32 layout; if (m_impl->recv.get_data (layout)) { + m_impl->layout = layout; m_impl->signal_set_layout (this, layout); if (!m_impl->si.null ()) m_impl->si->set_layout(layout); } @@ -2253,6 +2256,7 @@ HelperAgent::set_keyboard_ise_by_uuid (const String &uuid) const m_impl->attach_instance (); LOGD ("Require UUID: %s Current UUID: %s", uuid.c_str (), m_impl->si->get_factory_uuid ().c_str ()); + m_impl->si->set_layout (m_impl->layout); if(m_impl->focused_ic != (uint32)-1) m_impl->si->focus_in (); } |