if (m_impl) {
m_impl->send_key_event_processing_result(key, serial, is_success);
}
+}
+
+void CSCLCore::set_dotnet_flag(sclboolean flag)
+{
+ if (m_impl) {
+ m_impl->set_dotnet_flag(flag);
+ }
}
\ No newline at end of file
*/
void send_key_event_processing_result(scim::KeyEvent &key, sclu32 serial, sclboolean is_success);
+ /**
+ * @brief Request to distinguish whether IME is a C# application or not.
+ */
+ void set_dotnet_flag(sclboolean flag);
+
private:
CSCLCoreImpl *m_impl;
m_uuid = NULL;
m_window_created = FALSE;
- m_window_creation_defer_flag = FALSE;
+ m_window_creation_defer_flag = TRUE;
}
CSCLCoreImpl::~CSCLCoreImpl()
void CSCLCoreImpl::send_key_event_processing_result(scim::KeyEvent &key, sclu32 serial, sclboolean is_success)
{
m_connection.send_key_event_processing_result(key, serial, is_success);
+}
+
+void CSCLCoreImpl::set_dotnet_flag(sclboolean flag)
+{
+ m_core_ui.set_dotnet_flag(flag);
}
\ No newline at end of file
void set_candidate_style(scim::ISF_CANDIDATE_PORTRAIT_LINE_T portrait_line, scim::ISF_CANDIDATE_MODE_T mode);
void set_engine_loader_flag(sclboolean flag);
void send_key_event_processing_result(scim::KeyEvent &key, sclu32 serial, sclboolean is_success);
+ void set_dotnet_flag(sclboolean flag);
private:
ISCLCoreEventCallback *m_event_callback;
m_portrait_size.height = 0;
m_landscape_size.width = 0;
m_landscape_size.height = 0;
+ m_dotnet_flag = false;
memset(m_option_window_info, 0x00, sizeof(m_option_window_info));
}
*landscape = m_landscape_size;
}
+void CSCLCoreUIEFL::set_dotnet_flag(sclboolean flag)
+{
+ LOGD("IME is called from dotnet");
+ m_dotnet_flag = flag;
+}
+
#ifdef WAYLAND
static int language_changed_cb(void *event_info, void* data)
{
void CSCLCoreUIEFL::process_keyboard_ui_state_change(KEYBOARD_UI_STATE state)
{
+ if (m_dotnet_flag) return;
+
#ifdef WAYLAND
if (state == KEYBOARD_UI_STATE_WILL_SHOW) {
evas_event_callback_add(evas_object_evas_get(NATIVE_WINDOW_CAST(m_main_window)),
void update_keyboard_geometry(SclSize portrait, SclSize landscape);
void get_keyboard_size(SclSize *portrait, SclSize *landscape);
+ void set_dotnet_flag(sclboolean flag);
private:
sclboolean m_initialized;
SclSize m_landscape_size;
OptionWindowInfo m_option_window_info[OPTION_WINDOW_TYPE_MAX];
+
+ sclboolean m_dotnet_flag;
};
}
m_impl->get_keyboard_size(portrait, landscape);
}
}
+
+void CSCLCoreUI::set_dotnet_flag(sclboolean flag)
+{
+ if (m_impl) {
+ m_impl->set_dotnet_flag(flag);
+ }
+}
\ No newline at end of file
*/
virtual void get_keyboard_size(SclSize *portrait, SclSize *landscape);
+ /**
+ * @brief Requests to set dotnet flag
+ */
+ virtual void set_dotnet_flag(sclboolean flag);
+
protected:
std::string m_backend_identifier;