SR to RC13 - roll-back and fix window rotation to decide orientation timing
authorwoo <s-w.woo@samsung.com>
Wed, 27 Mar 2013 03:43:14 +0000 (12:43 +0900)
committerwoo <s-w.woo@samsung.com>
Wed, 27 Mar 2013 03:44:20 +0000 (12:44 +0900)
roll-back commit is like below
-------------------------------------------------
commit abd57b7feaf7f300baa97dd116f0bcafd2d552b8
Merge: 1df195d ce7085b
Author: Kang Hee Ju <mobum.kang@samsung.com>
Date:   Tue Mar 26 15:11:07 2013 +0900

    Merge "Fix WindowManager Rotation" into tizen_2.1

Change-Id: Ib90af541fe9ea69aabbb516112356c8b856ea2ba
Signed-off-by: woo <s-w.woo@samsung.com>
-------------------------------------------------

16 files changed:
src/graphics/util/FGrp_Util.cpp [changed mode: 0755->0644]
src/ui/FUi_Control.cpp
src/ui/FUi_ControlImpl.cpp
src/ui/FUi_EcoreEvas.cpp
src/ui/FUi_EflUiEventManager.cpp
src/ui/FUi_FocusManagerImpl.cpp
src/ui/FUi_UiKeyEvent.cpp
src/ui/FUi_UiTouchEvent.cpp
src/ui/FUi_Window.cpp
src/ui/controls/FUiCtrl_Edit.cpp
src/ui/controls/FUiCtrl_EditCopyPasteManager.cpp
src/ui/controls/FUiCtrl_EditPresenter.cpp
src/ui/controls/FUiCtrl_FrameImpl.cpp
src/ui/inc/FUi_Control.h
src/ui/inc/FUi_EcoreEvas.h
src/ui/inc/FUi_Window.h

old mode 100755 (executable)
new mode 100644 (file)
index d5e2c42..846c943
@@ -333,25 +333,14 @@ _FindWidthOfSubregions(const _Util::Pixmap& dstImage, int pRegionWidthes[], bool
 
                if (((*pProbe == KEY) && (*pProbeNext != KEY)) || ((*pProbe != KEY) && (*pProbeNext == KEY)))
                {
-                       pWidthStretchable[index] = (*pProbe == KEY);
+                       pWidthStretchable[index] = (*pProbe == KEY) ? true : false;
                        index++;
                }
 
                pProbe++;
                pProbeNext++;
        }
-
-       // in case of whole black
-       if (index == 0)
-       {
-               Pixel* pProbe = (Pixel*) (dstImage.pBitmap) + 1;
-               Pixel* pProbeEnd = pProbe + dstImage.width - 2;
-
-               if (pProbe < pProbeEnd)
-               {
-                       pWidthStretchable[index] = (*pProbe == KEY);
-               }
-       }
+//             pRegionWidthes[index]++;
 
        return (index + 1);
 }
@@ -383,25 +372,14 @@ _FindHeightOfSubregions(const _Util::Pixmap& dstImage, int pRegionHeights[], boo
 
                if (((*pProbe == KEY) && (*pProbeNext != KEY)) || ((*pProbe != KEY) && (*pProbeNext == KEY)))
                {
-                       pHeightStretchable[index] = (*pProbe == KEY);
+                       pHeightStretchable[index] = (*pProbe == KEY) ? true : false;
                        index++;
                }
 
                pProbe += pitch;
                pProbeNext += pitch;
        }
-
-       // in case of whole black
-       if (index == 0)
-       {
-               Pixel* pProbe = (Pixel*) (dstImage.pBitmap) + pitch;
-               Pixel* pProbeEnd = pProbe + (dstImage.height - 2) * pitch;
-
-               if (pProbe < pProbeEnd)
-               {
-                       pHeightStretchable[index] = (*pProbe == KEY);
-               }
-       }
+//             pRegionHeights[index]++;
 
        return (index + 1);
 }
index 56d6ea9..8fc1cfa 100644 (file)
@@ -3687,6 +3687,7 @@ _Control::_Control(void)
        , __focusable(true)
        , __nativeObjectFocusable(true)
        , __enabledState(true)
+       , __inputLockRefCount(0)
        , __visibleState(true)
        , __initVisibleState(false)
        , __clipToParent(true)
@@ -3735,7 +3736,6 @@ _Control::_Control(void)
        , __pPreviousFocus(null)
        , __pNextFocus(null)
        , __pFocusVisualElement(null)
-       , __inputLockRefCount(0)
 {
        ClearLastResult();
 
index b9dc937..147b1e3 100755 (executable)
@@ -1349,25 +1349,25 @@ public:
 
                        Control& control = static_cast<Control&>(pControlImpl->GetPublic());
 
-                       TouchEventInfo publicTouchInfo;
+                               TouchEventInfo publicTouchInfo;
 
-                       _TouchEventArg* pEventArg = GetTouchEventArgN(touchInfo);
+                               _TouchEventArg* pEventArg = GetTouchEventArgN(touchInfo);
                        SysTryReturn(NID_UI, pEventArg, false, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory shortage.");
 
-                       publicTouchInfo.Construct(*pEventArg);
+                               publicTouchInfo.Construct(*pEventArg);
 
-                       if (pEventArg)
-                       {
-                               delete pEventArg;
-                               pEventArg = null;
-                       }
+                               if (pEventArg)
+                               {
+                                       delete pEventArg;
+                                       pEventArg = null;
+                               }
 
                        isFiltered = __impl.__pPublicPropagatedTouchEventListener->OnTouchPressed(control, publicTouchInfo);
-                       if (isFiltered)
-                       {
-                               return true;
+                               if (isFiltered)
+                               {
+                                       return true;
+                               }
                        }
-               }
 
                return __impl.CallOnTouchPressed(source, touchInfo);
        }
@@ -1499,22 +1499,22 @@ public:
                        }
 
                        if (__impl.__pPublicPropagatedTouchEventListener->OnPreviewTouchPressed(control, publicTouchInfo) == true)
-                       {
-                               return _UI_TOUCH_EVENT_DELIVERY_NO;
+                               {
+                                       return _UI_TOUCH_EVENT_DELIVERY_YES;
+                               }
                        }
-               }
 
                // 3. Impl
                isFiltered = __impl.OnPreviewTouchPressed(__impl, touchInfo);
-               if (isFiltered == _UI_TOUCH_EVENT_DELIVERY_NO)
+               if (isFiltered == _UI_TOUCH_EVENT_DELIVERY_YES)
                {
-                       return _UI_TOUCH_EVENT_DELIVERY_NO;
+                       return _UI_TOUCH_EVENT_DELIVERY_YES;
                }
 
                // 4. Core
                isFiltered = __core.OnPreviewTouchPressed(source, touchInfo);
 
-               return isFiltered;
+               return _UI_TOUCH_EVENT_DELIVERY_NO;
        }
 
        virtual _UiTouchEventDelivery OnPreviewTouchReleased(const _Control& source, const _TouchInfo& touchInfo)
@@ -1528,36 +1528,36 @@ public:
 
                        Control& control = static_cast<Control&>(pControlImpl->GetPublic());
 
-                       TouchEventInfo publicTouchInfo;
+                               TouchEventInfo publicTouchInfo;
 
-                       _TouchEventArg* pEventArg = GetTouchEventArgN(touchInfo);
-                       SysTryReturn(NID_UI, pEventArg, _UI_TOUCH_EVENT_DELIVERY_YES, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory shortage.");
+                               _TouchEventArg* pEventArg = GetTouchEventArgN(touchInfo);
+                               SysTryReturn(NID_UI, pEventArg, _UI_TOUCH_EVENT_DELIVERY_YES, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory shortage.");
 
-                       publicTouchInfo.Construct(*pEventArg);
+                               publicTouchInfo.Construct(*pEventArg);
 
-                       if (pEventArg)
-                       {
-                               delete pEventArg;
-                               pEventArg = null;
-                       }
+                               if (pEventArg)
+                               {
+                                       delete pEventArg;
+                                       pEventArg = null;
+                               }
 
                        if (__impl.__pPublicPropagatedTouchEventListener->OnPreviewTouchReleased(control, publicTouchInfo) == true)
-                       {
-                               return _UI_TOUCH_EVENT_DELIVERY_NO;
+                               {
+                                       return _UI_TOUCH_EVENT_DELIVERY_YES;
+                               }
                        }
-               }
 
                // 3. Impl
                isFiltered = __impl.OnPreviewTouchReleased(__impl, touchInfo);
-               if (isFiltered == _UI_TOUCH_EVENT_DELIVERY_NO)
+               if (isFiltered == _UI_TOUCH_EVENT_DELIVERY_YES)
                {
-                       return _UI_TOUCH_EVENT_DELIVERY_NO;
+                       return _UI_TOUCH_EVENT_DELIVERY_YES;
                }
 
                // 4. Core
                isFiltered = __core.OnPreviewTouchReleased(source, touchInfo);
 
-               return isFiltered;
+               return _UI_TOUCH_EVENT_DELIVERY_NO;
        }
 
        virtual _UiTouchEventDelivery OnPreviewTouchMoved(const _Control& source, const _TouchInfo& touchInfo)
@@ -1571,41 +1571,41 @@ public:
 
                        Control& control = static_cast<Control&>(pControlImpl->GetPublic());
 
-                       TouchEventInfo publicTouchInfo;
+                               TouchEventInfo publicTouchInfo;
 
-                       _TouchEventArg* pEventArg = GetTouchEventArgN(touchInfo);
-                       SysTryReturn(NID_UI, pEventArg, _UI_TOUCH_EVENT_DELIVERY_YES, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory shortage.");
+                               _TouchEventArg* pEventArg = GetTouchEventArgN(touchInfo);
+                               SysTryReturn(NID_UI, pEventArg, _UI_TOUCH_EVENT_DELIVERY_YES, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory shortage.");
 
-                       publicTouchInfo.Construct(*pEventArg);
+                               publicTouchInfo.Construct(*pEventArg);
 
-                       if (pEventArg)
-                       {
-                               delete pEventArg;
-                               pEventArg = null;
-                       }
+                               if (pEventArg)
+                               {
+                                       delete pEventArg;
+                                       pEventArg = null;
+                               }
 
                        if (__impl.__pPublicPropagatedTouchEventListener->OnPreviewTouchMoved(control, publicTouchInfo) == true)
-                       {
-                               return _UI_TOUCH_EVENT_DELIVERY_NO;
+                               {
+                                       return _UI_TOUCH_EVENT_DELIVERY_YES;
+                               }
                        }
-               }
 
                // 3. Impl
                isFiltered = __impl.OnPreviewTouchMoved(__impl, touchInfo);
-               if (isFiltered == _UI_TOUCH_EVENT_DELIVERY_NO)
+               if (isFiltered == _UI_TOUCH_EVENT_DELIVERY_YES)
                {
-                       return _UI_TOUCH_EVENT_DELIVERY_NO;
+                       return _UI_TOUCH_EVENT_DELIVERY_YES;
                }
 
                // 4. Core
                isFiltered = __core.OnPreviewTouchMoved(source, touchInfo);
 
-               return isFiltered;
+               return _UI_TOUCH_EVENT_DELIVERY_NO;
        }
 
        virtual _UiTouchEventDelivery OnPreviewTouchCanceled(const _Control& source, const _TouchInfo& touchInfo)
        {
-               return _UI_TOUCH_EVENT_DELIVERY_YES;
+               return _UI_TOUCH_EVENT_DELIVERY_NO;
        }
 
        virtual void OnTouchPressHandled(const _Control& source)
@@ -1810,15 +1810,15 @@ public:
 
                        Control& control = static_cast<Control&>(pControlImpl->GetPublic());
 
-                       KeyEventInfo* pKeyEventInfo = new (std::nothrow) KeyEventInfo(static_cast<KeyCode>(keyInfo.GetKeyCode()),
-                               static_cast<KeyModifier>(keyInfo.GetKeyModifier()));
+                               KeyEventInfo* pKeyEventInfo = new (std::nothrow) KeyEventInfo(static_cast<KeyCode>(keyInfo.GetKeyCode()),
+                                       static_cast<KeyModifier>(keyInfo.GetKeyModifier()));
 
                        isFiltered = __impl.__pPublicPropagatedKeyEventListener->OnPreviewKeyPressed(control, *pKeyEventInfo);
-                       if (isFiltered)
-                       {
-                               return true;
+                               if (isFiltered)
+                               {
+                                       return true;
+                               }
                        }
-               }
 
                // 3. Impl
                isFiltered = __impl.OnPreviewKeyPressed(__impl, keyInfo);
@@ -1844,15 +1844,15 @@ public:
 
                        Control& control = static_cast<Control&>(pControlImpl->GetPublic());
 
-                       KeyEventInfo* pKeyEventInfo = new (std::nothrow) KeyEventInfo(static_cast<KeyCode>(keyInfo.GetKeyCode()),
-                               static_cast<KeyModifier>(keyInfo.GetKeyModifier()));
+                               KeyEventInfo* pKeyEventInfo = new (std::nothrow) KeyEventInfo(static_cast<KeyCode>(keyInfo.GetKeyCode()),
+                                       static_cast<KeyModifier>(keyInfo.GetKeyModifier()));
 
                        isFiltered = __impl.__pPublicPropagatedKeyEventListener->OnPreviewKeyReleased(control, *pKeyEventInfo);
-                       if (isFiltered)
-                       {
-                               return true;
+                               if (isFiltered)
+                               {
+                                       return true;
+                               }
                        }
-               }
 
                // 3. Impl
                isFiltered = __impl.OnPreviewKeyReleased(__impl, keyInfo);
@@ -2792,16 +2792,16 @@ _ControlImpl::CallOnTouchReleased(const _Control& source, const _TouchInfo& touc
                {
                        return true;
                }
-       }
 
-       __pCoreTouchEvent->ProcessDropListener(touchinfo);
+               __pCoreTouchEvent->ProcessDropListener(touchinfo);
+       }
 
        _TouchManager* __pTouchManager =  _TouchManager::GetInstance();
        SysTryReturn(NID_UI, __pTouchManager, false, E_OBJ_NOT_FOUND, "[E_OBJ_NOT_FOUND] __pTouchManager == null.");
 
        if (!__pTouchManager->IsTouchAllowed())
        {
-               return true;
+               return true;
        }
 
        // 3. Impl
@@ -2842,8 +2842,6 @@ _ControlImpl::CallOnTouchMoved(const _Control& source, const _TouchInfo& touchin
                {
                        return true;
                }
-
-               __pCoreTouchEvent->ProcessDragListener(touchinfo);
        }
 
        _TouchManager* __pTouchManager =  _TouchManager::GetInstance();
@@ -2954,25 +2952,25 @@ _ControlImpl::OnTouchMoved(const _ControlImpl& source, const _TouchInfo& touchin
 _UiTouchEventDelivery
 _ControlImpl::OnPreviewTouchPressed(const _ControlImpl& source, const _TouchInfo& touchInfo)
 {
-       return _UI_TOUCH_EVENT_DELIVERY_YES;
+       return _UI_TOUCH_EVENT_DELIVERY_NO;
 }
 
 _UiTouchEventDelivery
 _ControlImpl::OnPreviewTouchReleased(const _ControlImpl& source, const _TouchInfo& touchInfo)
 {
-       return _UI_TOUCH_EVENT_DELIVERY_YES;
+       return _UI_TOUCH_EVENT_DELIVERY_NO;
 }
 
 _UiTouchEventDelivery
 _ControlImpl::OnPreviewTouchMoved(const _ControlImpl& source, const _TouchInfo& touchInfo)
 {
-       return _UI_TOUCH_EVENT_DELIVERY_YES;
+       return _UI_TOUCH_EVENT_DELIVERY_NO;
 }
 
 _UiTouchEventDelivery
 _ControlImpl::OnPreviewTouchCanceled(const _ControlImpl& source, const _TouchInfo& touchInfo)
 {
-       return _UI_TOUCH_EVENT_DELIVERY_YES;
+       return _UI_TOUCH_EVENT_DELIVERY_NO;
 }
 
 bool
index 8a0360d..1bbcd83 100644 (file)
@@ -2182,60 +2182,6 @@ _EcoreEvas::SetWindowBounds(const _Window& window, const Rectangle& bounds)
 }
 
 void
-_EcoreEvas::SetWindowBounds(const _Window& window, const FloatRectangle& bounds)
-{
-       if (__changeBounds == false)
-       {
-               return;
-       }
-
-       _EflLayer* pLayer = GetEflLayer(window);
-       SysTryReturnVoidResult(NID_UI, pLayer, E_INVALID_ARG, "[E_INVALID_ARG] The window doesn't have a elf layer.");
-
-       Ecore_Evas* pEcoreEvas = pLayer->GetEcoreEvas();
-       Ecore_X_Window win = (Ecore_X_Window) ecore_evas_window_get(pEcoreEvas);
-
-       Evas_Object* pWinObject = pLayer->GetElmWin();
-       SysTryReturnVoidResult(NID_UI, pWinObject, E_SYSTEM, "[E_SYSTEM] A system error occurred.");
-
-       FloatRectangle winBoundsF = _CoordinateSystemUtils::Transform(bounds);
-       Rectangle winBounds = _CoordinateSystemUtils::ConvertToInteger(winBoundsF);
-
-       int winX = winBounds.x;
-       int winY = winBounds.y;
-
-       int rootW = 0;
-       int rootH = 0;
-       ecore_x_window_size_get(ecore_x_window_root_get(win), &rootW, &rootH);
-
-       int rotate = ecore_evas_rotation_get(pEcoreEvas);
-       switch (rotate)
-       {
-       case 270:
-               winX = rootW - winBounds.y - winBounds.height;
-               winY = winBounds.x;
-               break;
-       case 90:
-               winX = winBounds.y;
-               winY = rootH - winBounds.x - winBounds.width;
-               break;
-       case 180:
-               winX = rootW - winBounds.x - winBounds.width;
-               winY = rootH - winBounds.y - winBounds.height;
-               break;
-       default:
-               break;
-       }
-
-       evas_object_move(pWinObject, winX, winY);
-       evas_object_resize(pWinObject, winBounds.width, winBounds.height);
-
-       SysLog(NID_UI, "[Window Manager Rotation][Window : 0x%x] Set bounds(rot = %d, %d, %d, %d, %d).", win, rotate, winX, winY, winBounds.width, winBounds.height);
-
-       SetLastResult(E_SUCCESS);
-}
-
-void
 _EcoreEvas::SetWindowVisibleState(const _Window& window, bool visibleState)
 {
        _EflLayer* pLayer = GetEflLayer(window);
index a29da72..0332129 100644 (file)
@@ -848,7 +848,7 @@ OnTouchReleased(void* pData __UNUSED__, int type __UNUSED__, void* pEventInfo)
        result r = GetLastResult();
        if (r!= E_SUCCESS)
        {
-               SysLog(NID_UI, "ResetTouchInfo [%s] Propagating.", GetErrorMessage(r));
+               SysLogException(NID_UI, E_SUCCESS, "ResetTouchInfo");
                pTouchManager->SetTouchAllowed(false);
                pTouchManager->ResetTouchInfo();
 
@@ -1064,7 +1064,6 @@ OnEvasTouchPressed(void* pData, Evas* pEvas, Evas_Object* pEvasObject, void* pEv
        _Control* pControl = static_cast<_Control*>(pData);
        SysTryReturnVoidResult(NID_UI, pControl, E_INVALID_ARG, "[E_INVALID_ARG] The argument is invalid.");
 
-       SysLog(NID_UI, "OnEvasTouchPressed - x(%d), y(%d)", pEv->canvas.x, pEv->canvas.y);
        _TouchEvent event(0, _TOUCH_PRESSED, pEv->canvas.x, pEv->canvas.y, pEv->timestamp, pControl);
 
        result r = GetLastResult();
@@ -1088,7 +1087,6 @@ OnEvasTouchReleased(void* pData, Evas* pEvas, Evas_Object* pEvasObject, void* pE
        _Control* pControl = static_cast<_Control*>(pData);
        SysTryReturnVoidResult(NID_UI, pControl, E_INVALID_ARG, "[E_INVALID_ARG] The argument is invalid.");
 
-       SysLog(NID_UI, "OnEvasTouchReleased - x(%d), y(%d)", pEv->canvas.x, pEv->canvas.y);
        _TouchEvent event(0, _TOUCH_RELEASED, pEv->canvas.x, pEv->canvas.y, pEv->timestamp, pControl);
 
        result r = GetLastResult();
@@ -1112,7 +1110,6 @@ OnEvasTouchMoved(void* pData, Evas* pEvas, Evas_Object* pEvasObject, void* pEven
        _Control* pControl = static_cast<_Control*>(pData);
        SysTryReturnVoidResult(NID_UI, pControl, E_INVALID_ARG, "[E_INVALID_ARG] The argument is invalid.");
 
-       SysLog(NID_UI, "OnEvasTouchMoved - x(%d), y(%d)", pEv->cur.canvas.x, pEv->cur.canvas.x);
        _TouchEvent event(0, _TOUCH_MOVED, pEv->cur.canvas.x, pEv->cur.canvas.y, pEv->timestamp, pControl);
 
        result r = GetLastResult();
index b643ab7..7a6467a 100644 (file)
@@ -30,8 +30,6 @@
 #include "FUi_UiEventManager.h"
 #include "FUi_ResourceManager.h"
 #include "FUi_UiKeyEvent.h"
-#include "FUi_Window.h"
-#include "FUiCtrl_Frame.h"
 
 using namespace std;
 using namespace Tizen::Base::Collection;
@@ -182,74 +180,73 @@ _FocusManagerImpl::StartFocusTraversal(_Control* pControl, FocusDirection focusD
                }
        }
 
-       IListT<_Control*>* pFocusControlList =  null;
-       _Window* pTop = pControl->GetRootWindow();
-       if (pTop)
+       _Form* pForm = null;
+       _Control* pParentControl = pControl;
+
+       while(pControl)
        {
-               _Frame* pFrame = dynamic_cast<_Frame*>(pTop);
-               if (pFrame)
+               pForm = dynamic_cast<_Form*>(pParentControl);
+
+               if (pForm != null)
                {
-                       _Form* pForm = pFrame->GetCurrentForm();
-                       pFocusControlList = pForm->GetFocusList();
+                       break;
                }
                else
                {
-                       pFocusControlList = pTop->GetFocusList();
+                       pParentControl = pParentControl->GetParent();
                }
-       }       
+       }
 
-       if (pFocusControlList)
+       IListT<_Control*>* pFocusControlList = pForm->GetFocusList();
+       unique_ptr<IEnumeratorT<_Control*> > pEnum (pFocusControlList->GetEnumeratorN());
+
+       int index = 0;
+       bool findNextFocusControl = false;
+       _Control* pFocusControl = null;
+       while (pEnum->MoveNext() == E_SUCCESS)
        {
-               unique_ptr<IEnumeratorT<_Control*> > pEnum (pFocusControlList->GetEnumeratorN());
-               SysTryReturnVoidResult(NID_UI_CTRL, pEnum, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient.");
-               int index = 0;
-               bool findNextFocusControl = false;
-               _Control* pFocusControl = null;
-               while (pEnum->MoveNext() == E_SUCCESS)
-               {
-                       _Control* pEnumeratorControl = null;
-                       pEnum->GetCurrent(pEnumeratorControl);
+               _Control* pEnumeratorControl = null;
+               pEnum->GetCurrent(pEnumeratorControl);
 
-                       //Find current focused control
-                       if (pControl == pEnumeratorControl)
-                       {
-                       //Find next focusable control.
-                       index = GetNextIndex(index, focusDirection, pFocusControlList);
-                       while (pFocusControlList->GetAt(index, pFocusControl) == E_SUCCESS)
+               //Find current focused control
+               if (pControl == pEnumeratorControl)
+               {
+               //Find next focusable control.
+               index = GetNextIndex(index, focusDirection, pFocusControlList);
+               while (pFocusControlList->GetAt(index, pFocusControl) == E_SUCCESS)
+               {
+                       bool isFocusalbe = pFocusControl->IsFocusable();
+                       bool enableState = pFocusControl->GetEnableState();
+                       bool visibleState = pFocusControl->GetVisibleState();
+                       if (enableState == true && visibleState == true && isFocusalbe == true)
                        {
-                               bool isFocusalbe = pFocusControl->IsFocusable();
-                               bool enableState = pFocusControl->GetEnableState();
-                               bool visibleState = pFocusControl->GetVisibleState();
-                               if (enableState == true && visibleState == true && isFocusalbe == true)
-                               {
-                                       pFocusControl->SetFocused();
-                                       findNextFocusControl = true;
-                                       break;
-                               }
-                               else
-                               {
-                                       index = GetNextIndex(index, focusDirection, pFocusControlList);
-                               }
-                       }
+                               pFocusControl->SetFocused();
+                               findNextFocusControl = true;
+                               break;
                        }
-
-                       if (findNextFocusControl == true)
+                       else
                        {
-                               break;
+                               index = GetNextIndex(index, focusDirection, pFocusControlList);
                        }
+               }
+               }
 
-                       index ++;
+               if (findNextFocusControl == true)
+               {
+                       break;
                }
 
-               if (pFocusControl && findNextFocusControl == true)
+               index ++;
+       }
+
+       if (pFocusControl && findNextFocusControl == true)
+       {
+               _Control* pParentControl =  pFocusControl->GetParent();
+               if (pParentControl)
                {
-                       _Control* pParentControl =  pFocusControl->GetParent();
-                       if (pParentControl)
-                       {
-                               pParentControl->OnChildControlFocusMoved(*pFocusControl);
-                       }
-                       pFocusControl->DrawFocus();
+                       pParentControl->OnChildControlFocusMoved(*pFocusControl);
                }
+               pFocusControl->DrawFocus();
        }
 }
 
index b11693c..85ad689 100644 (file)
@@ -217,7 +217,7 @@ _UiKeyEvent::OnPreviewEventProcessing(const _Control& control, bool& isFiltered)
 {
        result r = E_SUCCESS;
 
-       _IKeyEventPreviewer* pKeyEventPreviewer = control.GetPropagatedKeyEventListener();
+       _IKeyEventPreviewer* pKeyEventPreviewer = control.GetEventPreviewer<_UI_EVENT_KEY, _IKeyEventPreviewer*>();
        SysTryReturn(NID_UI, pKeyEventPreviewer, E_SYSTEM, E_SYSTEM, "[E_SYSTEM] System error occurred.");
 
        const _Control* pTarget = GetControl(GetDestination());
index 37862c3..c1621ab 100644 (file)
@@ -227,7 +227,7 @@ _UiTouchEvent::OnPreviewEventProcessing(const _Control& control, bool& isFiltere
 
        if ((!ExistGlobalGesture() || GetAccessibilityEvent()) && !isFiltered)
        {
-               _ITouchEventPreviewer* pTouchEventPreviewer = control.GetPropagatedTouchEventListener();
+               _ITouchEventPreviewer* pTouchEventPreviewer = control.GetEventPreviewer<_UI_EVENT_TOUCH, _ITouchEventPreviewer*>();
                SysTryReturn(NID_UI, pTouchEventPreviewer, E_SYSTEM, E_SYSTEM, "[E_SYSTEM] System error occurred.");
 
                r = FirePreviewListener(pTouchEventPreviewer, &control, isFiltered);
index fcecddc..a468ad6 100644 (file)
@@ -24,7 +24,6 @@
 #include <FUiAnimDisplayContext.h>
 #include <FUiWindow.h>
 #include <FBase_Log.h>
-#include <FBaseColArrayListT.h>
 #include "FUi_Window.h"
 #include "FUi_ControlManager.h"
 #include "FUi_TouchManager.h"
@@ -466,7 +465,7 @@ _Window::OnOwnerChanged(_Control* pOldOwner)
 }
 
 result
-_Window::OnBoundsChanging(const FloatRectangle& bounds)
+_Window::OnBoundsChanging(const Rectangle& bounds)
 {
        _EcoreEvas* pEcoreEvas = GetEcoreEvasMgr()->GetEcoreEvas();
        SysTryReturn(NID_UI, pEcoreEvas, E_SYSTEM, E_SYSTEM, "[E_SYSTEM] A system error occurred.");
@@ -708,16 +707,4 @@ _Window::GetFocusedControl(void) const
 {
        return __pFocusedControl;
 }
-
-IListT<_Control*>*
-_Window::GetFocusList(void) const
-{
-       if(!__pFocusControlList)
-       {
-               __pFocusControlList.reset(GetFocusListN());
-               __pFocusControlList->InsertAt(const_cast<_Window*>(this), 0);
-       }
-       return __pFocusControlList.get();
-}
-
 }} // Tizen::Ui
index 93e8448..05f0ebf 100644 (file)
@@ -1956,7 +1956,7 @@ _Edit::OnFocusLost(const _Control& source)
 {
        __internalFocus = false;
        _pEditPresenter->OnFocusLost();
-       _Control::OnFocusLost(source);
+       Invalidate();
 
        return true;
 }
index d0bedd0..9cf9fed 100755 (executable)
@@ -1439,10 +1439,6 @@ _EditCopyPasteManager::CreateCopyPastePopup(void)
 
        else
        {
-               if (editShowAreaAbsRect.height <= 0)
-               {
-                       return;
-               }
                FloatRectangle cursorRect;
                int cursorPosition = GetCursorPosition();
                __pEdit->CalculateAbsoluteCursorBounds(cursorPosition, cursorRect);
index f5248d6..162b9e7 100755 (executable)
@@ -4317,8 +4317,6 @@ _EditPresenter::SetText(const String& text)
 {
        result r = E_SUCCESS;
 
-       InitializeCopyPasteManager();
-
        int length = text.GetLength();
        if ((__pEdit->GetEditStyle() & EDIT_STYLE_FLEXIBLE) || (__pEdit->GetEditStyle() & EDIT_STYLE_VIEWER))
        {
@@ -5405,8 +5403,6 @@ _EditPresenter::OnFrameRestored(const _Frame& source)
 bool
 _EditPresenter::OnFocusLost(void)
 {
-       InitializeCopyPasteManager();
-
        if (__isAutoShrinkEnabled)
        {
                FloatRectangle intialWindowBounds = GetInitialBoundsF();
index 7177ed4..23089d8 100644 (file)
@@ -231,7 +231,7 @@ _FrameImpl::CreateFrameImplN(Frame* pPublic)
        r = _ControlImpl::CheckConstruction(pCore, pImpl);
        SysTryReturn(NID_UI_CTRL, r == E_SUCCESS, null, r, "[%s] Propagating.", GetErrorMessage(r));
 
-       pCore->SetSize(_ControlManager::GetInstance()->GetScreenSizeF());
+       pCore->SetSize(_ControlManager::GetInstance()->GetScreenSize());
 
        pCore->AddFrameEventListener(*pImpl);
 
@@ -300,7 +300,7 @@ _FrameImpl::OnChangeLayout(_ControlOrientation orientation)
 
        _ControlManager* pCoreManager = _ControlManager::GetInstance();
        SysAssert(pCoreManager);
-       const FloatDimension& screenSize = pCoreManager->GetScreenSizeF();
+       const Dimension& screenSize = pCoreManager->GetScreenSize();
 
        if (GetCore().GetShowMode() == FRAME_SHOW_MODE_FULL_SCREEN)
        {
@@ -310,7 +310,7 @@ _FrameImpl::OnChangeLayout(_ControlOrientation orientation)
                }
                else
                {
-                       SetSize(FloatDimension(screenSize.height, screenSize.width));
+                       SetSize(Dimension(screenSize.height, screenSize.width));
                }
        }
 
index 32aefe9..92c7818 100644 (file)
@@ -118,7 +118,6 @@ public:
 
 class _IPropagatedTouchEventListener
        : public _ITouchEventListener
-       , public _ITouchEventPreviewer
 {
 public:
        virtual ~_IPropagatedTouchEventListener(void){}
@@ -127,24 +126,19 @@ public:
        virtual void OnTouchReleaseHandled(const _Control& control) = 0;
        virtual void OnTouchMoveHandled(const _Control& control) = 0;
        virtual void OnTouchCancelHandled(const _Control& control) = 0;
-       virtual _UiTouchEventDelivery OnPreviewTouchPressed(const _Control& source, const _TouchInfo& touchinfo) = 0;
-       virtual _UiTouchEventDelivery OnPreviewTouchReleased(const _Control& source, const _TouchInfo& touchinfo) = 0;
-       virtual _UiTouchEventDelivery OnPreviewTouchMoved(const _Control& source, const _TouchInfo& touchinfo) = 0;
-       virtual _UiTouchEventDelivery OnPreviewTouchCanceled(const _Control& source, const _TouchInfo& touchinfo) = 0;
 };
 
 class _IPropagatedKeyEventListener
        : public _IKeyEventListener
-       , public _IKeyEventPreviewer
 {
 public:
        virtual ~_IPropagatedKeyEventListener(void){}
-       virtual bool OnPreviewKeyPressed(const _Control& source, const _KeyInfo& keyInfo) = 0;
-       virtual bool OnPreviewKeyReleased(const _Control& source, const _KeyInfo& keyInfo) = 0;
 };
 
 class _OSP_EXPORT_ _Control // Temp: export only for test
        : public _IControlDelegate
+       , public _ITouchEventPreviewer
+       , public _IKeyEventPreviewer
        , public _IFocusEventListener
        , public _INotificationEventPreviewer
        , public _INotificationEventListener
index 2e1d9ab..3cd4036 100644 (file)
@@ -40,7 +40,6 @@ class _IActiveWindowEventListener;
 namespace Tizen { namespace Graphics
 {
 class Rectangle;
-class FloatRectangle;
 }} // Tizen::Graphics
 
 namespace Tizen { namespace Ui { namespace Animations
@@ -126,7 +125,6 @@ public:
        void SetWindowLevel(const _Window& window, _WindowLevel level);
        _WindowLevel GetWindowLevel(const _Window& window) const;
        void SetWindowBounds(const _Window& window, const Tizen::Graphics::Rectangle& bounds);
-       void SetWindowBounds(const _Window& window, const Tizen::Graphics::FloatRectangle& bounds);
        void SetWindowVisibleState(const _Window& window, bool visibleState);
        void AllowSetWindowBounds(bool allow);
        bool IsWindowVisible(const _Window& window);
index 3e9f5ee..31b0ff3 100644 (file)
@@ -25,7 +25,6 @@
 #ifndef _FUI_INTERNAL_WINDOW_H_
 #define _FUI_INTERNAL_WINDOW_H_
 
-#include <unique_ptr.h>
 #include <FUiWindow.h>
 #include "FUi_Control.h"
 
@@ -85,7 +84,7 @@ public:
        virtual void OnOwnerChanged(_Control* pOldOwner);
        virtual void OnVisibleStateChanged(void);
        virtual bool OnNotifiedN(const Tizen::Ui::_Control& source, Tizen::Base::Collection::IList* pArgs);
-       virtual result OnBoundsChanging(const Tizen::Graphics::FloatRectangle& bounds);
+       virtual result OnBoundsChanging(const Tizen::Graphics::Rectangle& bounds);
        virtual result OnAttachingToMainTree(const _Control* pParent);
        virtual result OnDetachingFromMainTree(void);
 #if defined(WINDOW_BASE_ROTATE)
@@ -109,9 +108,6 @@ public:
        result SetZOrderGroup(int windowZOrderGroup);
        bool IsSystemWindow(void) const;
 
-       // Focus UI
-       Tizen::Base::Collection::IListT<_Control*>* GetFocusList(void) const;
-
 protected:
        _Window(void);
        _IWindowDelegate& GetWindowDelegate(void) const;
@@ -145,10 +141,6 @@ private:
        bool __isInitialized;
        _Control* __pFocusedControl;
        bool __transient;
-
-       //For Focus UI
-       mutable std::unique_ptr<Tizen::Base::Collection::IListT<_Control*> > __pFocusControlList;
-       
 #if !defined(WINDOW_BASE_ROTATE)
        bool __orientationEnabled;
 #else