bool ise_focus_flag;
char* finalized_text;
uint32 finalized_cursor_pos;
+ bool engine_loader_flag;
HelperAgentSignalVoid signal_exit;
HelperAgentSignalVoid signal_attach_input_context;
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 (true), ise_focus_flag (false),
- finalized_text(NULL), finalized_cursor_pos(0) {
+ finalized_text(NULL), finalized_cursor_pos(0), engine_loader_flag(false) {
}
~HelperAgentImpl () {
}
}
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), need_update_entry_metadata (true), 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 (true), ise_focus_flag (false), finalized_text (NULL), finalized_cursor_pos (0), engine_loader_flag (false) { }
};
static MessageQueue message_queue;
m_impl->signal_process_key_event(this, subclass->get_key_ref(), ret);
m_impl->signal_process_key_event_with_keycode(this, subclass->get_key_ref(), keycode_ret, subclass->get_keycode_ref());
if (ret == 0 && keycode_ret == 0) {
- if (!m_impl->si.null ()) {
- if (!(subclass->get_key_ref().get_key_string().compare("KeyRelease+XF86Back") == 0 ||
- subclass->get_key_ref().get_key_string().compare("XF86Back") == 0)) {
- ret = m_impl->si->process_key_event (subclass->get_key_ref());
- SECURE_LOGD ("imengine(%s) process key %d return %d", m_impl->si->get_factory_uuid().c_str(),
- subclass->get_key_ref().code, ret);
- }
- } else {
- if (!(subclass->get_key_ref().get_key_string().compare("KeyRelease+XF86Back") == 0 ||
- subclass->get_key_ref().get_key_string().compare("XF86Back") == 0)) {
- m_impl->signal_process_key_event_with_imengine(this, subclass->get_key_ref(), ret);
- SECURE_LOGD ("imengine process key %d return %d", subclass->get_key_ref().code, ret);
- }
+ if (!(subclass->get_key_ref().get_key_string().compare("KeyRelease+XF86Back") == 0 ||
+ subclass->get_key_ref().get_key_string().compare("XF86Back") == 0)) {
+ if (m_impl->engine_loader_flag) {
+ m_impl->signal_process_key_event_with_imengine(this, subclass->get_key_ref(), ret);
+ SECURE_LOGD ("imengine process key %d return %d", subclass->get_key_ref().code, ret);
+ } else {
+ if (!m_impl->si.null ()) {
+ ret = m_impl->si->process_key_event (subclass->get_key_ref());
+ SECURE_LOGD ("imengine(%s) process key %d return %d", m_impl->si->get_factory_uuid().c_str(),
+ subclass->get_key_ref().code, ret);
+ }
+ }
}
}
if (ret != keycode_ret)
}
}
+void
+HelperAgent::set_engine_loader_flag (bool flag)
+{
+ m_impl->engine_loader_flag = flag;
+}
+
/**
* @brief Connect a slot to Helper exit signal.
*