From: InHong Han Date: Thu, 25 Mar 2021 01:04:29 +0000 (+0900) Subject: Modified to deliver floating IME requests by ISF X-Git-Tag: submit/tizen/20210325.053856~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1a79f8715879a65e2699cb821da1ca2462f3b86b;p=platform%2Fcore%2Fuifw%2Flibscl-core.git Modified to deliver floating IME requests by ISF Change-Id: I682876d1dfc82fa5fffbfb5a4246379d82126fdb --- diff --git a/src/sclconnection-isf.cpp b/src/sclconnection-isf.cpp index 667a1e3..2e62e28 100644 --- a/src/sclconnection-isf.cpp +++ b/src/sclconnection-isf.cpp @@ -1478,6 +1478,20 @@ void CSCLConnectionISF::send_key_event_processing_result(scim::KeyEvent &key, sc } } +void CSCLConnectionISF::set_floating_mode(sclboolean floating_mode) +{ + if (m_initialized) { + m_helper_agent.set_floating_mode(floating_mode); + } +} + +void CSCLConnectionISF::set_floating_drag_enabled(sclboolean enabled) +{ + if (m_initialized) { + m_helper_agent.set_floating_drag_enabled(enabled); + } +} + extern "C" { EXAPI void scim_module_init(void) { diff --git a/src/sclconnection-isf.h b/src/sclconnection-isf.h index dc67c5e..1d1f847 100644 --- a/src/sclconnection-isf.h +++ b/src/sclconnection-isf.h @@ -99,6 +99,8 @@ public: 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_floating_mode(sclboolean floating_mode); + void set_floating_drag_enabled(sclboolean enabled); private: sclboolean m_initialized; diff --git a/src/sclconnection.cpp b/src/sclconnection.cpp index 561dfc2..7e8be62 100644 --- a/src/sclconnection.cpp +++ b/src/sclconnection.cpp @@ -441,4 +441,18 @@ void CSCLConnection::send_key_event_processing_result(scim::KeyEvent &key, sclu3 if (m_impl) { m_impl->send_key_event_processing_result(key, serial, is_success); } +} + +void CSCLConnection::set_floating_mode(sclboolean floating_mode) +{ + if (m_impl) { + m_impl->set_floating_mode(floating_mode); + } +} + +void CSCLConnection::set_floating_drag_enabled(sclboolean enabled) +{ + if (m_impl) { + m_impl->set_floating_drag_enabled(enabled); + } } \ No newline at end of file diff --git a/src/sclconnection.h b/src/sclconnection.h index db4656e..80a5722 100644 --- a/src/sclconnection.h +++ b/src/sclconnection.h @@ -105,6 +105,8 @@ public: virtual void set_candidate_style(scim::ISF_CANDIDATE_PORTRAIT_LINE_T portrait_line, scim::ISF_CANDIDATE_MODE_T mode); virtual void set_engine_loader_flag(sclboolean flag); virtual void send_key_event_processing_result(scim::KeyEvent &key, sclu32 serial, sclboolean is_success); + virtual void set_floating_mode(sclboolean floating_mode); + virtual void set_floating_drag_enabled(sclboolean enabled); protected: std::string m_backend_identifier; diff --git a/src/sclcoreimpl.cpp b/src/sclcoreimpl.cpp index 9d0d7bb..5876aab 100644 --- a/src/sclcoreimpl.cpp +++ b/src/sclcoreimpl.cpp @@ -415,12 +415,12 @@ void CSCLCoreImpl::commit_content(const sclchar *content, const sclchar *descrip void CSCLCoreImpl::set_floating_mode(sclboolean floating_mode) { - m_core_ui.set_floating_mode(floating_mode); + m_connection.set_floating_mode(floating_mode); } void CSCLCoreImpl::set_floating_drag_enabled(sclboolean enabled) { - m_core_ui.set_floating_drag_enabled(enabled); + m_connection.set_floating_drag_enabled(enabled); } void CSCLCoreImpl::set_window_creation_defer_flag(sclboolean flag) diff --git a/src/sclcoreui-efl.cpp b/src/sclcoreui-efl.cpp index 0140baa..3d3a157 100644 --- a/src/sclcoreui-efl.cpp +++ b/src/sclcoreui-efl.cpp @@ -150,18 +150,6 @@ void CSCLCoreUIEFL::set_keyboard_size_hints(SclSize portrait, SclSize landscape) m_landscape_size = landscape; } -void CSCLCoreUIEFL::set_floating_mode(sclboolean floating_mode) -{ - if (wlkb.ips) - wl_input_panel_surface_set_floating_panel(wlkb.ips, floating_mode); -} - -void CSCLCoreUIEFL::set_floating_drag_enabled(sclboolean enabled) -{ - if (wlkb.ips) - wl_input_panel_surface_set_floating_drag_enabled(wlkb.ips, enabled); -} - void CSCLCoreUIEFL::update_keyboard_geometry(SclSize portrait, SclSize landscape) { Evas_Object *main_window = NATIVE_WINDOW_CAST(m_main_window); diff --git a/src/sclcoreui-efl.h b/src/sclcoreui-efl.h index 7358590..df11037 100644 --- a/src/sclcoreui-efl.h +++ b/src/sclcoreui-efl.h @@ -62,9 +62,6 @@ public: void process_keyboard_ui_state_change(KEYBOARD_UI_STATE state); - void set_floating_mode(sclboolean floating_mode); - void set_floating_drag_enabled(sclboolean enabled); - void update_keyboard_geometry(SclSize portrait, SclSize landscape); void get_keyboard_size(SclSize *portrait, SclSize *landscape); private: diff --git a/src/sclcoreui.cpp b/src/sclcoreui.cpp index e688166..8fa0e26 100644 --- a/src/sclcoreui.cpp +++ b/src/sclcoreui.cpp @@ -140,20 +140,6 @@ void CSCLCoreUI::process_keyboard_ui_state_change(KEYBOARD_UI_STATE state) } } -void CSCLCoreUI::set_floating_mode(sclboolean floating_mode) -{ - if (m_impl) { - m_impl->set_floating_mode(floating_mode); - } -} - -void CSCLCoreUI::set_floating_drag_enabled(sclboolean enabled) -{ - if (m_impl) { - m_impl->set_floating_drag_enabled(enabled); - } -} - void CSCLCoreUI::update_keyboard_geometry(SclSize portrait, SclSize landscape) { if (m_impl) { diff --git a/src/sclcoreui.h b/src/sclcoreui.h index 724c7e1..738c985 100644 --- a/src/sclcoreui.h +++ b/src/sclcoreui.h @@ -101,16 +101,6 @@ public: */ virtual void process_keyboard_ui_state_change(KEYBOARD_UI_STATE state); - /** - * @brief Requests to set floating mode - */ - virtual void set_floating_mode(sclboolean floating_mode); - - /** - * @brief Request to allow the user to move floating ISE - */ - virtual void set_floating_drag_enabled(sclboolean enabled); - /** * @brief Requests to update the keyboard window's geometry */