Added interface for delivering floating IME requests
[platform/core/uifw/isf.git] / ism / src / isf_info_manager.cpp
index d2ff74a..ab713a3 100644 (file)
@@ -2335,6 +2335,28 @@ public:
         }
     }
 
+    void set_floating_mode (uint32 floating_mode) {
+        int     focused_client;
+        uint32  focused_context;
+        get_focused_context (focused_client, focused_context);
+        ClientInfo client_info = socket_get_client_info (focused_client);
+
+        if (client_info.type == FRONTEND_CLIENT) {
+            m_panel_agent_manager.set_floating_mode (focused_client, focused_context, floating_mode);
+        }
+    }
+
+    void set_floating_drag_enabled (uint32 enabled) {
+        int     focused_client;
+        uint32  focused_context;
+        get_focused_context (focused_client, focused_context);
+        ClientInfo client_info = socket_get_client_info (focused_client);
+
+        if (client_info.type == FRONTEND_CLIENT) {
+            m_panel_agent_manager.set_floating_drag_enabled (focused_client, focused_context, enabled);
+        }
+    }
+
     Connection signal_connect_turn_on (InfoManagerSlotVoid*                slot) {
         return m_signal_turn_on.connect (slot);
     }
@@ -5574,6 +5596,16 @@ void InfoManager::request_ise_terminate ()
     m_impl->request_ise_terminate ();
 }
 
+void InfoManager::set_floating_mode (uint32 floating_mode)
+{
+    m_impl->set_floating_mode (floating_mode);
+}
+
+void InfoManager::set_floating_drag_enabled (uint32 enabled)
+{
+    m_impl->set_floating_drag_enabled (enabled);
+}
+
 //////////////////////////////////Message function end/////////////////////////////////////////
 
 Connection