Change the event about Clipboard
authorChoi Munseok <ms47.choi@samsung.com>
Thu, 4 Apr 2013 02:41:07 +0000 (11:41 +0900)
committerChoi Munseok <ms47.choi@samsung.com>
Thu, 4 Apr 2013 02:41:07 +0000 (11:41 +0900)
Change-Id: I71a2748106fac2b14d319f3951890d488d29ce5a
Signed-off-by: Choi Munseok <ms47.choi@samsung.com>
src/ui/FUi_EcoreEvas.cpp

index 238b5aa..b27526e 100644 (file)
@@ -158,20 +158,45 @@ OnWindowPropertyChanged(void* pData, int type, void* pEvent)
 
                        if (__clipboardHeight == 0)
                        {
+                               SysLog(NID_UI, "[Clipboard] Clipboard is opened. -> w = %d, h = %d", clipboardDim.width, clipboardDim.height);
                                _Clipboard::GetInstance()->FirePopupEvent(_CLIPBOARD_POPUP_STATE_OPENED, clipboardDim.width, clipboardDim.height);
                                __clipboardHeight = clipboardDim.height;
                        }
-                       else
-                       {
-                               _Clipboard::GetInstance()->FirePopupEvent(_CLIPBOARD_POPUP_STATE_BOUNDS_CHANGED, clipboardDim.width, clipboardDim.height);
-                       }
+//                     else
+//                     {
+//                             SysLog(NID_UI, "[Clipboard] The bounds of Clipboard is changed. -> w = %d, h = %d", clipboardDim.width, clipboardDim.height);
+//                             _Clipboard::GetInstance()->FirePopupEvent(_CLIPBOARD_POPUP_STATE_BOUNDS_CHANGED, clipboardDim.width, clipboardDim.height);
+//                     }
                }
-               else
+               else if (clipboardState == ECORE_X_ILLUME_CLIPBOARD_STATE_OFF)
                {
+                       SysLog(NID_UI, "[Clipboard] Clipboard is closed.");
                        _Clipboard::GetInstance()->FirePopupEvent(_CLIPBOARD_POPUP_STATE_CLOSED, 0, 0);
                        __clipboardHeight = 0;
                }
        }
+       else if (pEv->atom == ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY)
+       {
+               // Only after opening Clipboard
+               if (__clipboardHeight != 0)
+               {
+                       Ecore_X_Window zone = ecore_x_e_illume_zone_get(targetWin);
+
+                       int x = 0;
+                       int y = 0;
+                       int w = 0;
+                       int h = 0;
+                       ecore_x_e_illume_clipboard_geometry_get(zone, &x, &y, &w, &h);
+                       
+                       Dimension clipboardDim = _CoordinateSystemUtils::InverseTransform(Dimension(w, h));
+
+                       if (clipboardDim.height != 0)
+                       {
+                               SysLog(NID_UI, "[Clipboard] The bounds of Clipboard is changed. -> w = %d, h = %d", clipboardDim.width, clipboardDim.height);
+                               _Clipboard::GetInstance()->FirePopupEvent(_CLIPBOARD_POPUP_STATE_BOUNDS_CHANGED, clipboardDim.width, clipboardDim.height);
+                       }
+               }
+       }
        else if (pEv->atom == ECORE_X_ATOM_WM_STATE)
        {
                _ControlManager* pControlManager = _ControlManager::GetInstance();