From: Jihoon Kim Date: Mon, 5 Jun 2017 02:00:57 +0000 (+0900) Subject: Add interface to set floating mode X-Git-Tag: submit/tizen/20170621.060002~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9e3966afd2e3b8bc3618c705e034071aa244858d;p=platform%2Fcore%2Fuifw%2Flibscl-core.git Add interface to set floating mode Change-Id: Ie4d1a954331c745184606a329b233da7524291c9 Signed-off-by: Jihoon Kim --- diff --git a/src/sclcore.cpp b/src/sclcore.cpp index 51ab934..f4d4317 100644 --- a/src/sclcore.cpp +++ b/src/sclcore.cpp @@ -380,3 +380,10 @@ void CSCLCore::commit_content(const sclchar *content, const sclchar *description m_impl->commit_content(content, description, mime_types); } } + +void CSCLCore::set_floating_mode(sclboolean floating_mode) +{ + if (m_impl) { + m_impl->set_floating_mode(floating_mode); + } +} diff --git a/src/sclcore.h b/src/sclcore.h index 81fc807..62471de 100644 --- a/src/sclcore.h +++ b/src/sclcore.h @@ -400,6 +400,13 @@ public: * @param[in] mime_types a MIME type string. */ void commit_content(const sclchar *content, const sclchar *description, const sclchar *mime_types); + + /** + * @brief Request to set floating mode. + * + * @param[in] floating_mode Floating mode or not + */ + void set_floating_mode(sclboolean floating_mode); private: CSCLCoreImpl *m_impl; }; diff --git a/src/sclcoreimpl.cpp b/src/sclcoreimpl.cpp index 76d3f14..d81847c 100644 --- a/src/sclcoreimpl.cpp +++ b/src/sclcoreimpl.cpp @@ -387,3 +387,8 @@ void CSCLCoreImpl::commit_content(const sclchar *content, const sclchar *descrip { m_connection.commit_content(content, description, mime_types); } + +void CSCLCoreImpl::set_floating_mode(sclboolean floating_mode) +{ + m_core_ui.set_floating_mode(floating_mode); +} diff --git a/src/sclcoreimpl.h b/src/sclcoreimpl.h index a7b1357..7e56e34 100644 --- a/src/sclcoreimpl.h +++ b/src/sclcoreimpl.h @@ -108,6 +108,7 @@ public: void request_ise_hide(); void commit_content(const sclchar *content, const sclchar *description, const sclchar *mime_types); + void set_floating_mode(sclboolean floating_mode); private: ISCLCoreEventCallback *m_event_callback; diff --git a/src/sclcoreui-efl.cpp b/src/sclcoreui-efl.cpp index 692a172..468cb87 100644 --- a/src/sclcoreui-efl.cpp +++ b/src/sclcoreui-efl.cpp @@ -527,6 +527,12 @@ void CSCLCoreUIEFL::set_keyboard_size_hints(SclSize portrait, SclSize landscape) #endif } +void CSCLCoreUIEFL::set_floating_mode(sclboolean floating_mode) +{ + if (wlkb.ips) + wl_input_panel_surface_set_floating_panel(wlkb.ips, floating_mode); +} + static int language_changed_cb(void *event_info, void* data) { char clang[_POSIX_PATH_MAX] = {0}; diff --git a/src/sclcoreui-efl.h b/src/sclcoreui-efl.h index db884af..2b499a9 100644 --- a/src/sclcoreui-efl.h +++ b/src/sclcoreui-efl.h @@ -127,6 +127,8 @@ public: void set_screen_rotation_degree(int degree); void process_keyboard_ui_state_change(KEYBOARD_UI_STATE state); + + void set_floating_mode(sclboolean floating_mode); protected: virtual sclboolean prepare(sclwindow main_window); diff --git a/src/sclcoreui.cpp b/src/sclcoreui.cpp index 0200314..b746ed4 100644 --- a/src/sclcoreui.cpp +++ b/src/sclcoreui.cpp @@ -123,3 +123,10 @@ void CSCLCoreUI::process_keyboard_ui_state_change(KEYBOARD_UI_STATE state) m_impl->process_keyboard_ui_state_change(state); } } + +void CSCLCoreUI::set_floating_mode(sclboolean floating_mode) +{ + if (m_impl) { + m_impl->set_floating_mode(floating_mode); + } +} diff --git a/src/sclcoreui.h b/src/sclcoreui.h index a55a1e1..bc91d80 100644 --- a/src/sclcoreui.h +++ b/src/sclcoreui.h @@ -88,6 +88,11 @@ 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); + protected: std::string m_backend_identifier;