Merge 2.4 latest code 20/40820/1 accepted/tizen/mobile/20150611.091341 submit/tizen_mobile/20150610.022740 submit/tizen_mobile/20150611.014034
authorjuhee,park <juhee82.park@samsung.com>
Tue, 9 Jun 2015 09:27:38 +0000 (18:27 +0900)
committerjuhee,park <juhee82.park@samsung.com>
Tue, 9 Jun 2015 09:48:46 +0000 (18:48 +0900)
======================================================================
Merge: 35c14fe d7a3543
Author: JuHee Park <juhee82.park@samsung.com>
Date:   Mon Jun 8 10:35:52 2015 +0900

    Merge "Renamed FocusManager to AccessibilityFocusManager" into tizen_2.4
=====================================================================

Signed-off-by: juhee,park <juhee82.park@samsung.com>
Change-Id: I4849453fecdda4c9520e864422c9dd2345e69d1f

62 files changed:
cluster/box-impl.cpp
cluster/box-impl.h
cluster/cluster-impl.cpp
cluster/cluster-impl.h
cluster/cluster-view-controller.cpp
cluster/cluster-view-controller.h
cluster/cluster-view-impl.cpp
cluster/cluster-view-impl.h
cluster/cluster-view.cpp
cluster/cluster-view.h
cluster/cluster.cpp
cluster/cluster.h
cluster/custom-box-impl.cpp
cluster/custom-cluster-impl.cpp
cluster/custom-cluster-impl.h
cluster/custom-cluster-page-impl.cpp
cluster/custom-cluster-page-impl.h
cluster/custom-cluster.cpp
cluster/custom-cluster.h
cluster/widget-data.h
common/homescreen-center-popup.cpp
common/homescreen-center-popup.h
common/homescreen-const.cpp
common/homescreen-page-indicator.cpp
common/homescreen-page-indicator.h
common/homescreen-view.h
common/menu-popup-impl.cpp
common/menu-popup-impl.h
common/menu-popup.cpp
common/menu-popup.h
main/homescreen.cpp
main/homescreen.h
mainmenu/mainmenu-apps-view-impl.cpp
mainmenu/mainmenu-apps-view-impl.h
mainmenu/mainmenu-apps-view.cpp
mainmenu/mainmenu-apps-view.h
mainmenu/mainmenu-box-impl.cpp
mainmenu/mainmenu-box-impl.h
mainmenu/mainmenu-custom-box-impl.cpp
mainmenu/mainmenu-folder-box-impl.cpp
mainmenu/mainmenu-folder-box-impl.h
mainmenu/mainmenu-folder-box.cpp
mainmenu/mainmenu-folder-box.h
mainmenu/mainmenu-folder-page-impl.cpp
mainmenu/mainmenu-folder-page-impl.h
mainmenu/mainmenu-folder-page.cpp
mainmenu/mainmenu-folder-page.h
mainmenu/mainmenu-folder-view-impl.cpp
mainmenu/mainmenu-folder-view-impl.h
mainmenu/mainmenu-folder-view.cpp
mainmenu/mainmenu-folder-view.h
mainmenu/mainmenu-page-impl.cpp
mainmenu/mainmenu-page-impl.h
mainmenu/mainmenu-page.cpp
mainmenu/mainmenu-page.h
mainmenu/mainmenu-presenter.cpp
mainmenu/mainmenu-presenter.h
mainmenu/mainmenu-view-manager-impl.cpp
mainmenu/mainmenu-view-manager-impl.h
mainmenu/mainmenu-view-manager.cpp
mainmenu/mainmenu-view-manager.h
util/util-color-image.cpp

index ad34b99..a34c4b0 100755 (executable)
@@ -1532,14 +1532,16 @@ void Box::OnResetTimer(Actor actor)
 }
 
 
-void Box::OnActivated()
+bool Box::OnAccessibilityActivated()
 {
        VIEWER_DBG("box activated");
 
        Actor self = Self();
 
        if (mIsDisappearing || mIsClicking || mIsFlicking || mIsBlockingOperation || !mSignalTapConnected)
-               return;
+       {
+               return false;
+       }
 
        if (mIsFaultReloading == false)
        {
@@ -1574,6 +1576,7 @@ void Box::OnActivated()
                }
        }
 
+       return true;
 }
 
 bool Box::OnFaultReloadingTimerComplete()
index ed5eb0f..a0683cf 100755 (executable)
@@ -232,7 +232,7 @@ protected:
        virtual void OnSetFaultReloading(bool isReloading) {}
 
        // for screen reader
-       virtual void OnActivated();
+       virtual bool OnAccessibilityActivated();
 #ifdef _ENABLE_DROP_VIEW_
        /**
         * @copydoc Toolkit::Control::OnPan()
index b2850e1..bb1ba25 100755 (executable)
@@ -577,7 +577,7 @@ void Cluster::UpdateScrollDomain()
 
 void Cluster::UpdateScreenReader(void)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        char buf[1024] = { 0, };
        snprintf(buf, sizeof(buf), _("IDS_HS_BODY_PAGE_P1SD_OF_P2SD"), GetFocusedPage(), GetPageCount());
 
@@ -589,7 +589,7 @@ void Cluster::UpdateScreenReader(void)
                if (aPageIndiActor)
                {
                        focusManager.SetFocusOrder(aPageIndiActor, order++);
-                       focusManager.SetAccessibilityAttribute(aPageIndiActor, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, buf);
+                       focusManager.SetAccessibilityAttribute(aPageIndiActor, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, buf);
                }
        }
        // toolbar
@@ -982,7 +982,7 @@ void Cluster::OnBounceEffectFinished(Animation&)
 }
 
 
-Actor Cluster::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor Cluster::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        VIEWER_ERR("virtual function, do not call this function directly");
 
index 62fd16a..000d733 100755 (executable)
@@ -87,7 +87,7 @@ public:
         * Keyboard focus
         * @return next focusable actor if view's child should be focused
         */
-       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
 
        bool KeyClicked(HomeScreenKeyType eKeyType);
index 7d32379..56a9510 100755 (executable)
@@ -118,7 +118,7 @@ ClusterViewController::ClusterViewController(Dali::Window& window)
        CHomeScreenViewManager::GetInstance()->GetSignalKeyEvent().Connect(this, &ClusterViewController::_OnKeyEvent);
        CHomeScreenViewManager::GetInstance()->GetSignalScreenViewTypeChanged().Connect(this, &ClusterViewController::_OnScreenViewTypeChanged);
 
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        focusManager.FocusedActorActivatedSignal().Connect(this, &ClusterViewController::_OnTTSFocusedActorActivated);
        focusManager.FocusChangedSignal().Connect(this, &ClusterViewController::_OnTTSFocusChanged);
 
@@ -848,7 +848,7 @@ Vector3 ClusterViewController::GetGridPosition(int x, int y)
 
 void ClusterViewController::UpdateScreenReader(void)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        ClusterHome3D::Accessibility *cHomeAccessibility = ClusterHome3D::Accessibility::Get();
 
        unsigned int nFocusUpdateType = cHomeAccessibility->GetFocusUpdateType();
@@ -934,7 +934,7 @@ void ClusterViewController::SetAccessibilityToBox(const unsigned int boxId, cons
                CustomBox customBox = customCluster.GetBox(boxId);
                if (customBox)
                {
-                       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                        if (customBox)
                        {
                                if (isFocused)
@@ -969,8 +969,8 @@ void ClusterViewController::SetAccessibilityToBox(const unsigned int boxId, cons
                                                        // inner box
                                                        VIEWER_DBG("Focus to box layout");
                                                        focusManager.SetFocusOrder(m_cAccessCustomBox, BASE_FOCUS_ORDER_BOX_INNER);
-                                                       focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_cAccessCustomBox.GetDescription());
-                                                       focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_DYNAMIC_BOX"));
+                                                       focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_cAccessCustomBox.GetDescription());
+                                                       focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_DYNAMIC_BOX"));
 
                                                        focusManager.SetCurrentFocusActor(m_cAccessCustomBox);
                                                        m_bBlockPrevEvent = true;
@@ -1180,7 +1180,7 @@ void ClusterViewController::AppResumed(void)
                if (CHomeScreenViewManager::GetInstance()->GetCurrentViewType() == HOME_SCREEN_VIEW)
                {
                        // clear focus
-                       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                        focusManager.ClearFocus();
 
                        if (mClusterView)
@@ -1359,38 +1359,7 @@ void ClusterViewController::TabKeyClicked(bool clickedShift)
                }
        }
 
-       mFocusedCluster.TabKeyClicked(clickedShift);
-       nextFocusActor = kbdFocusManager.GetCurrentFocusActor();
-
-       if(currentFocusedActor != nextFocusActor)
-       {
-               VIEWER_ERR("[%d] next focus actor from cluster", nextFocusActor.GetId());
-       }
-       else
-       {
-               mClusterView.TabKeyClicked(clickedShift);
-               nextFocusActor = kbdFocusManager.GetCurrentFocusActor();
-               if(currentFocusedActor != nextFocusActor)
-               {
-                       VIEWER_ERR("[%d] next focus actor from cluster", nextFocusActor.GetId());
-               }
-               else
-               {
-                       currentFocusedActor = nextFocusActor;
-                       if(clickedShift)
-                       {
-                               nextFocusActor = QueryNextFocusActor(currentFocusedActor, nextFocusActor, Dali::Toolkit::Control::Up);
-                       }
-                       else
-                       {
-                               nextFocusActor = QueryNextFocusActor(currentFocusedActor, nextFocusActor, Dali::Toolkit::Control::Down);
-                       }
-                       kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
-                       if(nextFocusActor == currentFocusedActor)
-                       {
-                       }
-               }
-       }
+       customCluster.TabKeyClicked(clickedShift);
 }
 
 void ClusterViewController::BackKeyClicked(void)
@@ -1505,7 +1474,7 @@ void ClusterViewController::AccessibilityFontSizeChanged(void)
 void ClusterViewController::SetAccessibilityActionEventForBox(CustomBox box)
 {
        // reset all focus
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        focusManager.Reset();
        focusManager.ClearFocus();
 
@@ -1528,8 +1497,8 @@ void ClusterViewController::SetAccessibilityActionEventForBox(CustomBox box)
 
                // focus to box
                focusManager.SetFocusOrder(m_cAccessCustomBox, BASE_FOCUS_ORDER_BOX_INNER);
-               focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::FocusManager::ACCESSIBILITY_LABEL, box.GetDescription());
-               focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_DYNAMIC_BOX"));
+               focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, box.GetDescription());
+               focusManager.SetAccessibilityAttribute(m_cAccessCustomBox, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_DYNAMIC_BOX"));
                m_bBlockPrevEvent = true;
        }
 }
@@ -1666,7 +1635,7 @@ void ClusterViewController::_OnScreenViewTypeChanged(ScreenViewType eViewType)
 
 void ClusterViewController::_OnTTSFocusedActorActivated(Actor aActivatedActor)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        int nFocusOrder = focusManager.GetFocusOrder(aActivatedActor);
        VIEWER_DBG("_OnTTSFocusedActorActivated[%d]", nFocusOrder);
@@ -1686,7 +1655,7 @@ void ClusterViewController::_OnTTSFocusedActorActivated(Actor aActivatedActor)
 
 void ClusterViewController::_OnTTSFocusChanged(Actor originalFocusedActor, Actor currentFocusedActor)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        unsigned int nFocusedActorOrder = focusManager.GetFocusOrder(currentFocusedActor);
        VIEWER_DBG("_OnTTSFocusChanged Order[%d]", nFocusedActorOrder);
 
@@ -2017,7 +1986,7 @@ void ClusterViewController::OnCustomClusterFocusGroupChanged(void)
 
 void ClusterViewController::OnOptionButtonClicked(ClusterHome3D::ClusterView::OptionType type)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        ClusterHome3D::Accessibility *homeAccessibility = ClusterHome3D::Accessibility::Get();
 
        switch (type)
@@ -2295,7 +2264,7 @@ bool ClusterViewController::OnAccessibilityActionPrevious(AccessibilityManager&
                        if (cPrevCustomBox)
                        {
                                VIEWER_DBG("Move focus to Box[%d]", cPrevCustomBox.GetId());
-                               Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                               Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                                focusManager.SetCurrentFocusActor(cPrevCustomBox);
                        }
                        else
@@ -2386,7 +2355,7 @@ bool ClusterViewController::OnAccessibilityActionReadPrevious(AccessibilityManag
                        if (cPrevCustomBox)
                        {
                                VIEWER_DBG("Move focus to Box[%d]", cPrevCustomBox.GetId());
-                               Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                               Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                                focusManager.SetCurrentFocusActor(cPrevCustomBox);
                        }
                        else
@@ -2536,7 +2505,7 @@ void ClusterViewController::OnClusterButtonClicked(Cluster::ToolbarButtonType bu
 }
 
 
-Actor ClusterViewController::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor ClusterViewController::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
@@ -2555,7 +2524,7 @@ Actor ClusterViewController::QueryNextFocusActor(Actor currentFocusedActor, Acto
                switch(direction)
                {
                        // Up direction
-                       case Dali::Toolkit::Control::Down :
+                       case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                        {
                                TEST_DBG("Move a down box[%d]", direction);
                        }
index c15ef2e..b2b05b8 100755 (executable)
@@ -306,7 +306,7 @@ public:
        void AccessibilityFontSizeChanged(void);
 
        // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
 /**
  * Signals From IClusterWidgetObserver
index 2622231..6428041 100755 (executable)
@@ -828,15 +828,6 @@ void ClusterView::InitKeyboardFocus(){
 //    kbdFocusManager.SetCurrentFocusActor(mTop2PhoneButton);
 }
 
-bool ClusterView::TabKeyClicked(bool clickedShift, bool flagInit){
-    Actor currentFocusedActor;
-    Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
-       currentFocusedActor = kbdFocusManager.GetCurrentFocusActor();
-
-       return false;
-}
-
-
 void ClusterView::TabKeyClicked(bool clickedShift)
 {
     Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
@@ -850,7 +841,7 @@ void ClusterView::TabKeyClicked(bool clickedShift)
        }
 }
 
-Actor ClusterView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor ClusterView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
index a881fc4..df84778 100755 (executable)
@@ -215,10 +215,8 @@ public:
         * Keyboard focus
         * @return next focusable actor if view's child should be focused
         */
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
-    // Click a tabkey
-    bool TabKeyClicked(bool,bool);
        void TabKeyClicked(bool clickedShift);
 
     void InitKeyboardFocus();
index 450a754..50adacc 100755 (executable)
@@ -136,16 +136,11 @@ void ClusterView::UpdateScreenReader(void)
 {
        GetImpl(*this).UpdateScreenReader();
 }
-Actor ClusterView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor ClusterView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
 
-bool ClusterView::TabKeyClicked(bool clickedShift, bool flagInit)
-{
-       return GetImpl(*this).TabKeyClicked(clickedShift, flagInit);
-}
-
 void ClusterView::TabKeyClicked(bool clickedShift)
 {
        GetImpl(*this).TabKeyClicked(clickedShift);
index 40e4eba..0595090 100755 (executable)
@@ -204,13 +204,11 @@ public:
         * Keyboard focus
         * @return next focusable actor if view's child should be focused
         */
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
-    // Click a tabkey
-    bool TabKeyClicked(bool,bool);
        void TabKeyClicked(bool clickedShift);
 
-    void InitKeyboardFocus();
+       void InitKeyboardFocus();
 
 public: // Not intended for application developers
 
index d8b67f1..3818a64 100755 (executable)
@@ -177,7 +177,7 @@ void Cluster::UpdateScreenReader(void)
        GetImpl(*this).UpdateScreenReader();
 }
 
-Actor Cluster::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor Cluster::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index 6198871..7059fc3 100755 (executable)
@@ -192,7 +192,7 @@ public:
         * Keyboard focus
         * @return next focusable actor if view's child should be focused
         */
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
        // key event
        virtual bool KeyClicked(HomeScreenKeyType eKeyType);
index 36e06a7..ccfb663 100755 (executable)
@@ -1326,6 +1326,7 @@ void CustomBox::Update(const CustomBoxType type, const Ecore_X_Pixmap pixmap, co
        }
 }
 #endif
+
 void CustomBox::UpdateIcon(const string filePath)
 {
        // only available icon
@@ -1368,9 +1369,9 @@ void CustomBox::UpdateDescription(const string& text)
        if (mCustomBoxType == CUSTOM_WIDGET_APPLICATION || mCustomBoxType == CUSTOM_WIDGET_SHORTCUT)
        {
                Actor self = Self();
-               Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+               Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_LABEL, mDescription);
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, mDescription);
        }
 
        if(m_CUtilTextImgFault)
@@ -1389,7 +1390,7 @@ void CustomBox::UpdateDescription(const string& text)
 void CustomBox::UpdateScreenReader(void)
 {
        Actor self = Self();
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        unsigned int order = ((mBoxPositionInfo.x * CUSTOM_GRID_MAX_COL + mBoxPositionInfo.y) + mBoxPositionInfo.z * CUSTOM_GRID_MAX_ROW * CUSTOM_GRID_MAX_COL) * 100;
 
@@ -1397,24 +1398,24 @@ void CustomBox::UpdateScreenReader(void)
 
        if (mCustomBoxType == CUSTOM_WIDGET_APPLICATION || mCustomBoxType == CUSTOM_WIDGET_SHORTCUT)
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_LABEL, mDescription);
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_DYNAMIC_BOX"));
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_VALUE, _("IDS_HS_BODY_DOUBLE_TAP_AND_HOLD_TO_MOVE_T_TTS"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, mDescription);
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_DYNAMIC_BOX"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_VALUE, _("IDS_HS_BODY_DOUBLE_TAP_AND_HOLD_TO_MOVE_T_TTS"));
        }
 
        if (mBadgeCount > 1)
        {
                char buf[1024] = { 0, };
                snprintf(buf, sizeof(buf), _("IDS_SCR_BODY_PD_UNREAD_ITEMS"), mBadgeCount);
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_HINT, buf);
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, buf);
        }
        else if (mBadgeCount == 1)
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_SCR_BODY_1_UNREAD_ITEM"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_SCR_BODY_1_UNREAD_ITEM"));
        }
        else
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_HINT, "");
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, "");
        }
 
        VIEWER_DBG("[TTS] CustomBox[%d], focus order[%d], badge[%d]", GetId(), order, mBadgeCount);
@@ -1422,8 +1423,8 @@ void CustomBox::UpdateScreenReader(void)
        if (mDeleteButton)
        {
                focusManager.SetFocusOrder(mDeleteButton, order + 1);
-               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_BODY_DELETE_OPT_TTS"));
-               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_BODY_DELETE_OPT_TTS"));
+               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
 
        // propagate
@@ -2867,15 +2868,10 @@ bool CustomBox::OnPickEventBoxTouchEvent(Actor actor, const TouchEvent& event)
                if (mBoxImageType == BOX_IMAGE_PIXMAP || mBoxImageType == BOX_IMAGE_BUFFER)
                {
 #ifdef _WIDGET_AUTO_FEED
-
                        //Vector3 baseSize = mBaseImage.GetCurrentSize();
                        Actor self = Self();
                        Vector3 touchInfo = GetScreenPosition(self);
-
                        touchInfo.z = float(event.GetPoint(0).state);
-
-
-                       VIEWER_DBG("box position %.2f, %.2f, %.2f", touchInfo.x, touchInfo.y, touchInfo.z );
                        ClusterHome3D::Box handle(GetOwner());
 
                        Vector3 baseSize = mPickEventBox.GetCurrentSize();
@@ -2901,8 +2897,6 @@ bool CustomBox::OnPickEventBoxTouchEvent(Actor actor, const TouchEvent& event)
                        default:
                                break;
                        }
-
-                       VIEWER_DBG("box touch event (%d)", (int)event.GetPoint(0).state);
                        mTouchedSignal.Emit(handle, touchInfo);
 #else
                        Actor self = Self();
@@ -2943,7 +2937,6 @@ bool CustomBox::OnPickEventBoxTouchEvent(Actor actor, const TouchEvent& event)
                        
                        mTouchedSignal.Emit(handle, touchInfo);
 #endif
-
                }
        }
 
index 729813f..6effa06 100755 (executable)
@@ -322,7 +322,7 @@ ClusterHome3D::CustomCluster::ScrollStartedSignal& CustomCluster::SignalScrollSt
 
 void CustomCluster::SetCurrentTTSMode(void)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        ClusterHome3D::Accessibility *homeAccessibility = ClusterHome3D::Accessibility::Get();
        if (!homeAccessibility->GetTTSMode())
        {
@@ -631,7 +631,7 @@ void CustomCluster::OnInitialize()
        mIdExistDndContent = false;
 
        // accessibility
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        focusManager.FocusChangedSignal().Connect(this, &Internal::CustomCluster::OnFocusChanged);
        focusManager.FocusOvershotSignal().Connect(this, &Internal::CustomCluster::OnFocusOvershot);
        focusManager.FocusedActorActivatedSignal().Connect(this, &Internal::CustomCluster::OnFocusedActorActivated);
@@ -1401,9 +1401,9 @@ void CustomCluster::AppResumed(void)
        }
 
        // Focus a last Actor
-       if(lastFocusActor){
+       if(mLastFocusActor){
                Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
-               kbdFocusManager.SetCurrentFocusActor(lastFocusActor);
+               kbdFocusManager.SetCurrentFocusActor(mLastFocusActor);
        }
 
        // cancel operation of page indicator
@@ -5286,7 +5286,7 @@ void CustomCluster::OnCustomScrollComplete(const Vector2&)
         if(flagFind == true){
             Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
                kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
-            lastFocusActor = nextFocusActor;
+            mLastFocusActor = nextFocusActor;
         }
         else{
             mMoveKeyboardFocusBottom.Emit();
@@ -5572,7 +5572,7 @@ bool CustomCluster::OnCenterPopupDeleteTimerComplete()
 
 void CustomCluster::OnUpdateScreenReader(void)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        ClusterHome3D::Accessibility *homeAccessibility = ClusterHome3D::Accessibility::Get();
        unsigned int nFocusUpdateType = homeAccessibility->GetFocusUpdateType();
        unsigned int nFocusGroup = homeAccessibility->GetCurrentGroup();
@@ -5595,8 +5595,8 @@ void CustomCluster::OnUpdateScreenReader(void)
                if (mAddPageButton)
                {
                        focusManager.SetFocusOrder(mAddPageButton, BASE_FOCUS_ORDER_PAGE + (mPages.size() + 5) * 10);
-                       focusManager.SetAccessibilityAttribute(mAddPageButton, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_TTS_BUTTON_ADD_PAGE"));
-                       focusManager.SetAccessibilityAttribute(mAddPageButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+                       focusManager.SetAccessibilityAttribute(mAddPageButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_TTS_BUTTON_ADD_PAGE"));
+                       focusManager.SetAccessibilityAttribute(mAddPageButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
 
                        VIEWER_DBG("AddPage order[%d]", BASE_FOCUS_ORDER_PAGE + (mPages.size() + 5) * 10);
                }
@@ -5646,7 +5646,7 @@ void CustomCluster::OnUpdateScreenReader(void)
                                        if (!firstBox)
                                        {
                                                focusManager.SetFocusOrder(page, BASE_FOCUS_ORDER_PAGE + nFocusedPage);
-                                               focusManager.SetAccessibilityAttribute(page, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_NO_CONTENT"));
+                                               focusManager.SetAccessibilityAttribute(page, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_NO_CONTENT"));
                                        }
                                }
                        }
@@ -5785,7 +5785,7 @@ CustomBoxSizeType CustomCluster::GetCurrentGridPosBoxSize(Vector3 gridPos)
 
 void CustomCluster::OnFocusChanged(Actor originalFocusedActor, Actor currentFocusedActor)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        VIEWER_DBG("OnFocusChanged[%d]", focusManager.GetFocusOrder(currentFocusedActor));
 
        ClusterHome3D::CustomBox box = ClusterHome3D::CustomBox::DownCast(currentFocusedActor);
@@ -5795,9 +5795,9 @@ void CustomCluster::OnFocusChanged(Actor originalFocusedActor, Actor currentFocu
        }
 }
 
-void CustomCluster::OnFocusOvershot(Actor currentFocusedActor, Toolkit::FocusManager::FocusOvershotDirection direction)
+void CustomCluster::OnFocusOvershot(Actor currentFocusedActor, Toolkit::AccessibilityFocusManager::FocusOvershotDirection direction)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        VIEWER_DBG("OnFocusOvershot[%d]", focusManager.GetFocusOrder(currentFocusedActor));
 
        ClusterHome3D::Accessibility *homeAccessibility = ClusterHome3D::Accessibility::Get();
@@ -5807,7 +5807,7 @@ void CustomCluster::OnFocusOvershot(Actor currentFocusedActor, Toolkit::FocusMan
        if (focusGroup == FOCUS_GROUP_BOX && !homeAccessibility->GetTTSMode())
        {
                // while keyboard mode, move page
-               if (direction == Toolkit::FocusManager::OVERSHOT_PREVIOUS)
+               if (direction == Toolkit::AccessibilityFocusManager::OVERSHOT_PREVIOUS)
                {
                        // go to prev page
                        int focusedPage = GetFocusedPage();
@@ -5826,7 +5826,7 @@ void CustomCluster::OnFocusOvershot(Actor currentFocusedActor, Toolkit::FocusMan
                        // to set focused box of next page, reset this
                        mLastFocusedBox.Reset();
                }
-               else if (direction == Toolkit::FocusManager::OVERSHOT_NEXT)
+               else if (direction == Toolkit::AccessibilityFocusManager::OVERSHOT_NEXT)
                {
                        // go to next page
                        int focusedPage = GetFocusedPage();
@@ -5853,7 +5853,7 @@ void CustomCluster::OnFocusOvershot(Actor currentFocusedActor, Toolkit::FocusMan
 
 void CustomCluster::OnFocusedActorActivated(Actor activatedActor)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        int focusOrder = focusManager.GetFocusOrder(activatedActor);
        VIEWER_DBG("OnFocusedActorActivated[%d]", focusOrder);
@@ -5907,103 +5907,6 @@ int CustomCluster::GetAllPageCount()
     return mPages.size();
 }
 
-bool CustomCluster::TabKeyClicked(bool clickedShift, bool flagInit)
-{
-    Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
-
-       VIEWER_DBG("TabKeyClicked");
-
-    CustomBoxContainer::iterator boxIter;
-
-    Actor nextFocusActor;
-    int nowX, nowY;
-
-    int posValue;
-    int prevValue;
-    int nowValue;
-
-    bool flagFind;
-
-    if(!lastFocusActor || flagInit == true){
-        if(clickedShift == true){
-            posValue = (CUSTOM_GRID_MAX_COL+1)*CUSTOM_GRID_MAX_ROW+1;
-        }
-        else{
-            posValue = -1;
-        }
-
-    }
-    else{
-        Actor currentActor = kbdFocusManager.GetCurrentFocusActor();
-
-        if(lastFocusActor != currentActor){
-            return false;
-        }
-
-        // currentFocusedBox position
-        ClusterHome3D::CustomBox currentFocusedBox = ClusterHome3D::CustomBox::DownCast(lastFocusActor);
-        int currentFocusedBoxX = (int)currentFocusedBox.GetBoxPositionInfo().x;
-        int currentFocusedBoxY = (int)currentFocusedBox.GetBoxPositionInfo().y;
-
-        posValue = currentFocusedBoxX*CUSTOM_GRID_MAX_COL + currentFocusedBoxY;
-    }
-
-
-    // Find a next actor.
-    flagFind = false;
-
-    // Shift + Tab
-    if(clickedShift == true){
-        prevValue = -1;
-        for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-               {
-                   if((*boxIter).GetBoxPositionInfo().z == GetFocusedPage()){
-                if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                       {
-                    nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                    nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                    nowValue = nowX*CUSTOM_GRID_MAX_COL + nowY;
-
-                    if(nowValue < posValue && nowValue > prevValue){
-                        prevValue = nowValue;
-                        nextFocusActor = (*boxIter);
-                        flagFind = true;
-                    }
-                               }
-            }
-               }
-    }
-    else {
-        prevValue = (CUSTOM_GRID_MAX_COL+1)*CUSTOM_GRID_MAX_ROW+1;
-        for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-               {
-                   if((*boxIter).GetBoxPositionInfo().z == GetFocusedPage()){
-                if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                       {
-                    nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                    nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                    nowValue = nowX*CUSTOM_GRID_MAX_COL + nowY;
-
-                    if(nowValue > posValue && nowValue < prevValue){
-                        prevValue = nowValue;
-                        nextFocusActor = (*boxIter);
-                        flagFind = true;
-                    }
-                               }
-            }
-               }
-    }
-
-
-    // Focus a actor
-    if(flagFind == true){
-        kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
-        lastFocusActor = nextFocusActor;
-    }
-
-    return flagFind;
-}
-
 void CustomCluster::TabKeyClicked(bool clickedShift)
 {
        Actor nextFocusActor;
@@ -6029,22 +5932,32 @@ void CustomCluster::TabKeyClicked(bool clickedShift)
        int prevX, prevY;
 
        bool flagCheckLine = false;
-       bool flagFind;
+       bool flagFind = false;
+
+       bool isIndicator = false;
 
        if(mIsAllPageMode == true){
                return;
        }
 
-       if((focusGroup && focusGroup.GetName() != "CustomCluster") || !focusGroup)
+       if(m_cHomeScreenPageIndicator->IsContain(currentFocusedActor)) {
+               if( m_cHomeScreenPageIndicator->TabKeyClicked(clickedShift) ) {
+                       return ;
+               }
+
+               isIndicator = true;
+       }
+
+       if((focusGroup && focusGroup.GetName() != "CustomCluster") || !focusGroup || isIndicator)
        {
-        // Move to last selected Actor if now page is the same page
-        if(lastFocusActor)
+               // Move to last selected Actor if now page is the same page
+               if(mLastFocusActor)
                {
-                       TEST_DBG("[%s]", lastFocusActor.GetName().c_str());
-                       if(!lastFocusActor.GetName().find("Page"))
+                       TEST_DBG("[%s]", mLastFocusActor.GetName().c_str());
+                       if(!mLastFocusActor.GetName().find("Page"))
                        {
-                               kbdFocusManager.SetCurrentFocusActor(lastFocusActor);
-                return;
+                               kbdFocusManager.SetCurrentFocusActor(mLastFocusActor);
+                               return;
                        }
                        else
                        {
@@ -6053,45 +5966,45 @@ void CustomCluster::TabKeyClicked(bool clickedShift)
                                        if(mKeyboardFocusCurrentPage <= 0)
                                                mKeyboardFocusCurrentPage = 1;
 
-                                       lastFocusActor = mPages[mKeyboardFocusCurrentPage-1];
-                                       kbdFocusManager.SetCurrentFocusActor(lastFocusActor);
+                                       mLastFocusActor = mPages[mKeyboardFocusCurrentPage-1];
+                                       kbdFocusManager.SetCurrentFocusActor(mLastFocusActor);
                                        return;
                                }
                                else
                                {
-                                       currentFocusedBox = ClusterHome3D::CustomBox::DownCast(lastFocusActor);
-                           if(currentFocusedBox.GetBoxPositionInfo().z == GetFocusedPage())
+                                       currentFocusedBox = ClusterHome3D::CustomBox::DownCast(mLastFocusActor);
+                                       if(currentFocusedBox.GetBoxPositionInfo().z == GetFocusedPage())
                                        {
-                               nextFocusActor = lastFocusActor;
-                               flagFind = true;
-                                               kbdFocusManager.SetCurrentFocusActor(lastFocusActor);
-                           }
+                                               nextFocusActor = mLastFocusActor;
+                                               flagFind = true;
+                                               kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+                                       }
                                }
                        }
                }
 
-        // Move to First Actor
-        prevX = CUSTOM_GRID_MAX_ROW+1;
-        prevY = CUSTOM_GRID_MAX_COL+1;
+               // Move to First Actor
+               prevX = CUSTOM_GRID_MAX_ROW+1;
+               prevY = CUSTOM_GRID_MAX_COL+1;
 
-        for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
+               for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
                {
-                   if((*boxIter).GetBoxPositionInfo().z == GetFocusedPage())
+                       if((*boxIter).GetBoxPositionInfo().z == GetFocusedPage())
                        {
-                if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
+                               if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
                                {
-                    nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                    nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                       nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                       nowY = (int)(*boxIter).GetBoxPositionInfo().y;
 
-                    if(prevX > nowX || (prevX == nowX && prevY >= nowY))
+                                       if(prevX > nowX || (prevX == nowX && prevY >= nowY))
                                        {
-                        prevY = nowY;
-                        prevX = nowX;
-                        nextFocusActor = (*boxIter);
-                        flagFind = true;
-                    }
+                                               prevY = nowY;
+                                               prevX = nowX;
+                                               nextFocusActor = (*boxIter);
+                                               flagFind = true;
+                                       }
                                }
-            }
+                       }
                }
 
                if(!flagFind)
@@ -6103,270 +6016,265 @@ void CustomCluster::TabKeyClicked(bool clickedShift)
                }
        }
        // Control - Basic Box
-    else// if(focusGroup && focusGroup.GetName() == "CustomCluster")
+       else// if(focusGroup && focusGroup.GetName() == "CustomCluster")
        {
                if(!currentFocusedActor.GetName().find("Page"))
                {
                        HOME_DBG("currentFocusedActor:[%s]", currentFocusedActor.GetName().c_str());
-                       nextFocusActor = currentFocusedActor;
+                       if(clickedShift) {
+                               nextFocusActor = m_cHomeScreenPageIndicator->GetLastActor();
+                       } else {
+                               nextFocusActor = m_cHomeScreenPageIndicator->GetFirstActor();
+                       }
                        kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+
+                       return ;
                }
 
-        currentFocusedBox = ClusterHome3D::CustomBox::DownCast(currentFocusedActor);
+               currentFocusedBox = ClusterHome3D::CustomBox::DownCast(currentFocusedActor);
 
-        // currentFocusedBox position
-        currentFocusedBoxX = (int)currentFocusedBox.GetBoxPositionInfo().x;
-        currentFocusedBoxY = (int)currentFocusedBox.GetBoxPositionInfo().y;
+               // currentFocusedBox position
+               currentFocusedBoxX = (int)currentFocusedBox.GetBoxPositionInfo().x;
+               currentFocusedBoxY = (int)currentFocusedBox.GetBoxPositionInfo().y;
 
-        // currentFocusedBox Size
-        currentFocusedBoxSize = currentFocusedBox.GetSizeType();
-        currentFocusedBoxWidth = getCustomBoxSizeWidth(currentFocusedBoxSize);
-        currentFocusedBoxHeight = getCustomBoxSizeHeight(currentFocusedBoxSize);
+               // currentFocusedBox Size
+               currentFocusedBoxSize = currentFocusedBox.GetSizeType();
+               currentFocusedBoxWidth = getCustomBoxSizeWidth(currentFocusedBoxSize);
+               currentFocusedBoxHeight = getCustomBoxSizeHeight(currentFocusedBoxSize);
 
                //Tab + Shift
                if(clickedShift)
                {
-            prevX = CUSTOM_GRID_MAX_ROW+1;
-            prevY = 0;
-            flagFind = false;
+                       prevX = CUSTOM_GRID_MAX_ROW+1;
+                       prevY = 0;
+                       flagFind = false;
 
-            // 1st) Search a same line.
-            for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
+                       // 1st) Search a same line.
+                       for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
                        {
-                           if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                    if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                       {
-                        nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                        nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                        nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
-
-                        if(nowY < currentFocusedBoxY){
-                            flagCheckLine= getCheckSameLine(currentFocusedBoxX,currentFocusedBoxX +currentFocusedBoxHeight,nowX,nowX+nowHeight);
-
-                            if(flagCheckLine == true){
-                                if(prevY < nowY || (prevY == nowY && prevX >= nowX)){
-                                    prevY = nowY;
-                                    prevX = nowX;
-                                    nextFocusActor = (*boxIter);
-                                    flagFind = true;
-                                }
-                            }
-                        }
-                                       }
-                }
-            }
+                               if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                       if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                               nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                               nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                               nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
+
+                                               if(nowY < currentFocusedBoxY) {
+                                                       flagCheckLine= getCheckSameLine(currentFocusedBoxX,currentFocusedBoxX +currentFocusedBoxHeight,nowX,nowX+nowHeight);
 
+                                                       if(flagCheckLine == true){
+                                                               if(prevY < nowY || (prevY == nowY && prevX >= nowX)) {
+                                                                       prevY = nowY;
+                                                                       prevX = nowX;
+                                                                       nextFocusActor = (*boxIter);
+                                                                       flagFind = true;
+                                                               }
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
 
-            // 2nd) Search a additional line.
-            if(flagFind == false){
-                for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
+                       // 2nd) Search a additional line.
+                       if(flagFind == false) {
+                               for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
                                {
-                                   if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                        if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
+                                       if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                               if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
                                                {
-                            nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                            nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                            nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
-
-                            if(nowY < currentFocusedBoxY){
-                                if(prevY < nowY || (prevY == nowY && prevX >= nowX)){
-                                    prevY = nowY;
-                                    prevX = nowX;
-                                    nextFocusActor = (*boxIter);
-                                    flagFind = true;
-                                }
-                            }
+                                                       nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                                       nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                                       nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
+
+                                                       if(nowY < currentFocusedBoxY){
+                                                               if(prevY < nowY || (prevY == nowY && prevX >= nowX)) {
+                                                                               prevY = nowY;
+                                                                               prevX = nowX;
+                                                                               nextFocusActor = (*boxIter);
+                                                                               flagFind = true;
+                                                               }
+                                                       }
                                                }
-                    }
-                }
-            }
+                                       }
+                               }
+                       }
 
-            if(flagFind == false){
-                prevX = 0;
-                prevY = CUSTOM_GRID_MAX_COL+1;
-                flagFind = false;
+                       if(flagFind == false) {
+                               prevX = 0;
+                               prevY = CUSTOM_GRID_MAX_COL+1;
+                               flagFind = false;
 
-                // 1st) Search a same line.
-                for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
+                               // 1st) Search a same line.
+                               for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
                                {
-                                   if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                        if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                               {
-                            nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                            nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                            nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
-
-                            if(nowX < currentFocusedBoxX){
-                                flagCheckLine = getCheckSameLine(currentFocusedBoxY,currentFocusedBoxY +currentFocusedBoxWidth,nowY,nowY+nowWidth);
-
-                                if(flagCheckLine == true){
-                                    if(prevX < nowX || (prevX == nowX && prevY >= nowY)){
-                                        prevY = nowY;
-                                        prevX = nowX;
-                                        nextFocusActor = (*boxIter);
-                                        flagFind = true;
-                                    }
-                                }
-                            }
-                                               }
+                                       if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                               if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                                       nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                                       nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                                       nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
 
-                    }
-                               }
+                                                       if(nowX < currentFocusedBoxX) {
+                                                               flagCheckLine = getCheckSameLine(currentFocusedBoxY,currentFocusedBoxY +currentFocusedBoxWidth,nowY,nowY+nowWidth);
 
+                                                               if(flagCheckLine == true) {
+                                                                       if(prevX < nowX || (prevX == nowX && prevY >= nowY)){
+                                                                               prevY = nowY;
+                                                                               prevX = nowX;
+                                                                               nextFocusActor = (*boxIter);
+                                                                               flagFind = true;
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+                                       }
+                               }
 
-                // 2nd) Search a additional line.
-                if(flagFind == false){
-                    for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-                                       {
-                                           if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                            if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                                       {
-                                nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                                nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                                nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
-
-                                if(nowX < currentFocusedBoxX){
-                                    if(prevX < nowX || (prevX == nowX && prevY >= nowY)){
-                                            prevY = nowY;
-                                            prevX = nowX;
-                                            nextFocusActor = (*boxIter);
-                                            flagFind = true;
-                                    }
-                                }
+                               // 2nd) Search a additional line.
+                               if(flagFind == false) {
+                                       for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter) {
+                                               if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                                       if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                                               nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                                               nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                                               nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
+
+                                                               if(nowX < currentFocusedBoxX) {
+                                                                       if(prevX < nowX || (prevX == nowX && prevY >= nowY)) {
+                                                                               prevY = nowY;
+                                                                               prevX = nowX;
+                                                                               nextFocusActor = (*boxIter);
+                                                                               flagFind = true;
+                                                                       }
+                                                               }
                                                        }
-                        }
+                                               }
                                        }
-                }
+                               }
 
-                // Block to move to a different area
-                if(flagFind == false){
-                    nextFocusActor = currentFocusedActor;
-                }
-            }
+                               if(flagFind == false){
+                                       nextFocusActor = m_cHomeScreenPageIndicator->GetLastActor();
+                                       kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+                                       return ;
+                               }
+                       }
                }
                //Tab
                else
                {
-            prevX = CUSTOM_GRID_MAX_ROW+1;
-            prevY = CUSTOM_GRID_MAX_COL+1;
-            flagFind = false;
+                       prevX = CUSTOM_GRID_MAX_ROW+1;
+                       prevY = CUSTOM_GRID_MAX_COL+1;
+                       flagFind = false;
 
+                       // 1st) Search a same line.
+                       for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter) {
+                               if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                       if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                               nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                               nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                               nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
 
-            // 1st) Search a same line.
-            for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-                       {
-                           if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                    if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                       {
-                        nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                        nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                        nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
-
-                        if(nowY >= currentFocusedBoxY+currentFocusedBoxWidth){
-                            flagCheckLine = getCheckSameLine(currentFocusedBoxX,currentFocusedBoxX +currentFocusedBoxHeight,nowX,nowX+nowHeight);
-
-                            if(flagCheckLine == true){
-                                if(prevY > nowY || (prevY == nowY && prevX >= nowX)){
-                                    prevY = nowY;
-                                    prevX = nowX;
-                                    nextFocusActor = (*boxIter);
-                                    flagFind = true;
-                                }
-                            }
-                        }
+                                               if(nowY >= currentFocusedBoxY+currentFocusedBoxWidth) {
+                                                       flagCheckLine = getCheckSameLine(currentFocusedBoxX,currentFocusedBoxX +currentFocusedBoxHeight,nowX,nowX+nowHeight);
+
+                                                       if(flagCheckLine == true){
+                                                               if(prevY > nowY || (prevY == nowY && prevX >= nowX)){
+                                                                       prevY = nowY;
+                                                                       prevX = nowX;
+                                                                       nextFocusActor = (*boxIter);
+                                                                       flagFind = true;
+                                                               }
+                                                       }
+                                               }
                                        }
-                }
+                               }
                        }
 
+                       // 2nd) Search a additional line.
+                       if(flagFind == false){
+                               for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter) {
+                                       if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                               if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                                       nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                                       nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                                       nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
 
-            // 2nd) Search a additional line.
-            if(flagFind == false){
-                for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-                               {
-                                   if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                        if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                               {
-                            nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                            nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                            nowHeight= getCustomBoxSizeHeight((*boxIter).GetSizeType());
-
-                            if(nowY >= currentFocusedBoxY+currentFocusedBoxWidth){
-                                if(prevY > nowY || (prevY == nowY && prevX >= nowX)){
-                                    prevY = nowY;
-                                    prevX = nowX;
-                                    nextFocusActor = (*boxIter);
-                                    flagFind = true;
-                                }
-                            }
+                                                       if(nowY >= currentFocusedBoxY+currentFocusedBoxWidth) {
+                                                               if(prevY > nowY || (prevY == nowY && prevX >= nowX)){
+                                                                       prevY = nowY;
+                                                                       prevX = nowX;
+                                                                       nextFocusActor = (*boxIter);
+                                                                       flagFind = true;
+                                                               }
+                                                       }
                                                }
-                    }
+                                       }
                                }
-            }
+                       }
 
 
-            if(flagFind == false){
-                prevX = CUSTOM_GRID_MAX_ROW+1;
-                prevY = CUSTOM_GRID_MAX_COL+1;
-                flagFind = false;
+                       if(flagFind == false){
+                               prevX = CUSTOM_GRID_MAX_ROW+1;
+                               prevY = CUSTOM_GRID_MAX_COL+1;
+                               flagFind = false;
 
-                // 1st) Search a same line.
-                for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-                               {
-                                   if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                        if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                               {
-                            nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                            nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                            nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
-
-                            if(nowX >= currentFocusedBoxX+currentFocusedBoxHeight){
-
-                                flagCheckLine = getCheckSameLine(currentFocusedBoxY,currentFocusedBoxY +currentFocusedBoxWidth,nowY,nowY+nowWidth);
-
-                                if(flagCheckLine == true){
-                                    if(prevX > nowX || (prevX == nowX && prevY >= nowY)){
-                                        prevY = nowY;
-                                        prevX = nowX;
-                                        nextFocusActor = (*boxIter);
-                                        flagFind = true;
-                                    }
-                                }
-                            }
+                               // 1st) Search a same line.
+                               for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter) {
+                                       if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                               if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                                       nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                                       nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                                       nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
+
+                                                       if(nowX >= currentFocusedBoxX+currentFocusedBoxHeight){
+                                                               flagCheckLine = getCheckSameLine(currentFocusedBoxY,currentFocusedBoxY +currentFocusedBoxWidth,nowY,nowY+nowWidth);
+
+                                                               if(flagCheckLine == true){
+                                                                       if(prevX > nowX || (prevX == nowX && prevY >= nowY)){
+                                                                               prevY = nowY;
+                                                                               prevX = nowX;
+                                                                               nextFocusActor = (*boxIter);
+                                                                               flagFind = true;
+                                                                       }
+                                                               }
+                                                       }
                                                }
-                    }
+                                       }
                                }
 
-                // 2nd) Search a additional line.
-                if(flagFind == false){
-                    for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter)
-                                       {
-                                           if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z){
-                            if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f)
-                                                       {
-                                nowX = (int)(*boxIter).GetBoxPositionInfo().x;
-                                nowY = (int)(*boxIter).GetBoxPositionInfo().y;
-                                nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
-
-                                if(nowX >= currentFocusedBoxX+currentFocusedBoxHeight){
-                                    if(prevX > nowX || (prevX == nowX && prevY >= nowY)){
-                                        prevY = nowY;
-                                        prevX = nowX;
-                                        nextFocusActor = (*boxIter);
-                                        flagFind = true;
-                                    }
-                                }
+                               // 2nd) Search a additional line.
+                               if(flagFind == false){
+                                       for (boxIter = mBoxes.begin(); boxIter != mBoxes.end(); ++boxIter) {
+                                               if((*boxIter).GetBoxPositionInfo().z == currentFocusedBox.GetBoxPositionInfo().z) {
+                                                       if((*boxIter).IsVisible() && (*boxIter).GetCurrentOpacity() > 0.0f) {
+                                                               nowX = (int)(*boxIter).GetBoxPositionInfo().x;
+                                                               nowY = (int)(*boxIter).GetBoxPositionInfo().y;
+                                                               nowWidth = getCustomBoxSizeWidth((*boxIter).GetSizeType());
+
+                                                               if(nowX >= currentFocusedBoxX+currentFocusedBoxHeight) {
+                                                                       if(prevX > nowX || (prevX == nowX && prevY >= nowY)) {
+                                                                               prevY = nowY;
+                                                                               prevX = nowX;
+                                                                               nextFocusActor = (*boxIter);
+                                                                               flagFind = true;
+                                                                       }
+                                                               }
                                                        }
-                        }
+                                               }
                                        }
-                }
-            }
+                               }
+                       }
+
+                       if(flagFind == false){
+                               nextFocusActor = m_cHomeScreenPageIndicator->GetFirstActor();
+                               kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+                               return ;
+                       }
                }
-    }
+       }
 
 
-    // Save last FocusActor
+       // Save last FocusActor
        if(nextFocusActor){
-               lastFocusActor = nextFocusActor;
+               mLastFocusActor = nextFocusActor;
        }
 
        kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
@@ -6422,14 +6330,14 @@ bool CustomCluster::getCheckSameLine(int a_start,int a_end,int b_start,int b_end
     return flagCheck;
 }
 
-void CustomCluster::OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+void CustomCluster::OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        mIsKeyboardOn = true;
        int focusedPage = GetFocusedPage();
        int totalPage = GetPageCount();
 
        // while keyboard mode, move page
-       if (direction == Dali::Toolkit::Control::Right)
+       if (direction == Dali::Toolkit::Control::KeyboardFocus::RIGHT)
        {
                if (focusedPage == totalPage)
                {
@@ -6446,7 +6354,7 @@ void CustomCluster::OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocu
 
                ScrollTo(GetFocusedPage() - 1);
        }
-       else if (direction == Dali::Toolkit::Control::Left)
+       else if (direction == Dali::Toolkit::Control::KeyboardFocus::LEFT)
        {
                if (focusedPage == 1)
                {
@@ -6467,7 +6375,7 @@ void CustomCluster::OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocu
 
 
 
-Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
@@ -6505,7 +6413,7 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
                VIEWER_ERR("Do not find the focus group");
 
        if(m_cHomeScreenPageIndicator->IsContain(currentFocusedActor)) {
-               if(direction != Dali::Toolkit::Control::Up) {
+               if(direction != Dali::Toolkit::Control::KeyboardFocus::UP) {
                        return m_cHomeScreenPageIndicator->QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
                }
 
@@ -6515,33 +6423,33 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
        if((focusGroup && focusGroup.GetName() != "CustomCluster") || !focusGroup || isIndicator) {
                switch(direction)
                {
-               case Dali::Toolkit::Control::Up :
-               case Dali::Toolkit::Control::Down :
+               case Dali::Toolkit::Control::KeyboardFocus::UP :
+               case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                {
                        TEST_DBG("Move a up or down box");
 
                        // Move to last selected Actor if now page is the same page
-                       if(lastFocusActor)
+                       if(mLastFocusActor)
                        {
-                               TEST_DBG("[%s]", lastFocusActor.GetName().c_str());
-                               if(lastFocusActor.GetName().find("Page"))
+                               TEST_DBG("[%s]", mLastFocusActor.GetName().c_str());
+                               if(mLastFocusActor.GetName().find("Page"))
                                {
                                        if(!focusGroup)
                                        {
                                                if(mKeyboardFocusCurrentPage <= 0)
                                                        mKeyboardFocusCurrentPage = 1;
 
-                                               lastFocusActor = mPages[mKeyboardFocusCurrentPage-1];
-                                               return lastFocusActor;
+                                               mLastFocusActor = mPages[mKeyboardFocusCurrentPage-1];
+                                               return mLastFocusActor;
                                        }
                                        else
                                        {
-                                               currentFocusedBox = ClusterHome3D::CustomBox::DownCast(lastFocusActor);
+                                               currentFocusedBox = ClusterHome3D::CustomBox::DownCast(mLastFocusActor);
                                                if(currentFocusedBox.GetBoxPositionInfo().z == GetFocusedPage())
                                                {
-                                                       nextFocusActor = lastFocusActor;
+                                                       nextFocusActor = mLastFocusActor;
                                                        flagFind = true;
-                                                       return lastFocusActor;
+                                                       return mLastFocusActor;
                                                }
                                        }
                                }
@@ -6594,9 +6502,9 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
                {
                        HOME_DBG("currentFocusedActor:[%s]", currentFocusedActor.GetName().c_str());
                        nextFocusActor = currentFocusedActor;
-                       if( direction == Dali::Toolkit::Control::Right || direction == Dali::Toolkit::Control::Left) {
+                       if( direction == Dali::Toolkit::Control::KeyboardFocus::RIGHT || direction == Dali::Toolkit::Control::KeyboardFocus::LEFT) {
                                OnKeyboardFocusOvershot(direction);
-                       } else if( direction == Dali::Toolkit::Control::Down ) {
+                       } else if( direction == Dali::Toolkit::Control::KeyboardFocus::DOWN ) {
                                return m_cHomeScreenPageIndicator->GetFirstActor();
                        }
 
@@ -6617,7 +6525,7 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
                switch(direction){
 
                // Right direction
-               case Dali::Toolkit::Control::Right :
+               case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
                        prevX = CUSTOM_GRID_MAX_ROW+1;
                        prevY = CUSTOM_GRID_MAX_COL+1;
                        flagFind = false;
@@ -6679,7 +6587,7 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
                break;
 
                // Left direction
-               case Dali::Toolkit::Control::Left :
+               case Dali::Toolkit::Control::KeyboardFocus::LEFT :
                        prevX = CUSTOM_GRID_MAX_ROW+1;
                        prevY = 0;
                        flagFind = false;
@@ -6743,7 +6651,7 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
 
 
                // Up direction
-               case Dali::Toolkit::Control::Up :
+               case Dali::Toolkit::Control::KeyboardFocus::UP :
                        prevX = 0;
                        prevY = CUSTOM_GRID_MAX_COL+1;
                        flagFind = false;
@@ -6806,7 +6714,7 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
 
 
                // Down direction
-               case Dali::Toolkit::Control::Down :
+               case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                        prevX = CUSTOM_GRID_MAX_ROW+1;
                        prevY = CUSTOM_GRID_MAX_COL+1;
                        flagFind = false;
@@ -6862,7 +6770,6 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
                        }
 
                        if(flagFind == false) {
-                               VIEWER_DBG("ttt");
                                return m_cHomeScreenPageIndicator->GetFirstActor();
                        }
 
@@ -6872,14 +6779,14 @@ Actor CustomCluster::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
 
        // Save last FocusActor
        if(nextFocusActor){
-               lastFocusActor = nextFocusActor;
+               mLastFocusActor = nextFocusActor;
        }
 
        return nextFocusActor;
 }
 
 
-Actor CustomCluster::GetNextKeyboardFocusableActor(Actor actor, Toolkit::Control::KeyboardFocusNavigationDirection direction, bool loopEnabled)
+Actor CustomCluster::GetNextKeyboardFocusableActor(Actor actor, Toolkit::Control::KeyboardFocus::Direction direction, bool loopEnabled)
 {
        VIEWER_ERR("==========================\n");
 
index e67b270..37797f3 100755 (executable)
@@ -121,7 +121,7 @@ protected:
         * Keyboard focus
         * @return next focusable actor if view's child should be focused
         */
-       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
        /**
         * A reference counted object may only be deleted by calling Unreference()
@@ -147,7 +147,7 @@ private:
        /**
         * @copydoc Toolkit::Control::GetNextKeyboardFocusableActor()
         */
-       virtual Actor GetNextKeyboardFocusableActor(Actor actor, Toolkit::Control::KeyboardFocusNavigationDirection direction, bool loopEnabled);
+       virtual Actor GetNextKeyboardFocusableActor(Actor actor, Toolkit::Control::KeyboardFocus::Direction direction, bool loopEnabled);
 
 private:
 
@@ -334,7 +334,7 @@ private:
 
        // screen reader
        void OnFocusChanged(Actor originalFocusedActor, Actor currentFocusedActor);
-       void OnFocusOvershot(Actor currentFocusedActor, Toolkit::FocusManager::FocusOvershotDirection direction);
+       void OnFocusOvershot(Actor currentFocusedActor, Toolkit::AccessibilityFocusManager::FocusOvershotDirection direction);
        void OnFocusedActorActivated(Actor activatedActor);
 
        // Add Page button press long
@@ -438,11 +438,9 @@ public:
        void blockBoxEvent();
        int GetAllPageCount();
 
-       // Click a tabkey
-       bool TabKeyClicked(bool,bool);
        void TabKeyClicked(bool clickedShift);
 
-       void OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       void OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
        bool IsScrolling(void) { return mIsScrolling; }
 
@@ -632,7 +630,7 @@ private:
         * TTS
         */
        ClusterHome3D::CustomBox mLastFocusedBox;
-       Toolkit::FocusManager::FocusOvershotDirection mLastOvershotDirection;
+       Toolkit::AccessibilityFocusManager::FocusOvershotDirection mLastOvershotDirection;
        bool mIsNeedToFocus;
 
        // boost timer
@@ -670,7 +668,7 @@ private:
        unsigned int mKeyboardFocusCurrentPage;
 
        // LastFocusActor
-       Actor lastFocusActor;
+       Actor mLastFocusActor;
 
        bool    m_bMainScrolling;
 
index 9029fff..db587ed 100755 (executable)
@@ -344,11 +344,12 @@ void CustomClusterPage::OnControlChildRemove(Actor& child)
        }
 }
 
-void CustomClusterPage::OnActivated()
+bool CustomClusterPage::OnAccessibilityActivated()
 {
        Actor actor = Self();
        TapGesture tap;
        OnTap(actor, tap);
+       return true;
 }
 
 bool CustomClusterPage::OnAccessibilityTouch(const TouchEvent& event)
@@ -834,7 +835,7 @@ void CustomClusterPage::SetDeleteButton(bool isEnabled)
 
 void CustomClusterPage::UpdateScreenReader()
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        Actor self = Self();
 
        int nOrder = BASE_FOCUS_ORDER_PAGE + (int) mLayoutPosition * 10;
@@ -845,14 +846,14 @@ void CustomClusterPage::UpdateScreenReader()
        snprintf(buf, sizeof(buf), _NOT_LOCALIZED("Page %d"), (int) mLayoutPosition);
 
        focusManager.SetFocusOrder(self, nOrder++);
-       focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_LABEL, buf);
-       focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+       focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, buf);
+       focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
 
        if (mDeleteButton)
        {
                focusManager.SetFocusOrder(mDeleteButton, nOrder++);
-               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_BODY_DELETE_OPT_TTS"));
-               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_BODY_DELETE_OPT_TTS"));
+               focusManager.SetAccessibilityAttribute(mDeleteButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
 }
 
index 453aabc..b21b400 100755 (executable)
@@ -143,7 +143,7 @@ protected:
        virtual void OnControlChildRemove(Actor& child);
 
        // for screen reader
-       virtual void OnActivated();
+       virtual bool OnAccessibilityActivated();
        virtual bool OnAccessibilityTouch(const TouchEvent& event);
 
 private:
index 6563fa7..96d00cb 100755 (executable)
@@ -292,17 +292,13 @@ int CustomCluster::GetAllPageCount()
     return GetImpl( *this ).GetAllPageCount();
 }
 
-bool CustomCluster::TabKeyClicked(bool clickedShift,bool flagInit)
-{
-       return GetImpl(*this).TabKeyClicked(clickedShift,flagInit);
-}
 
 void CustomCluster::TabKeyClicked(bool clickedShift)
 {
        GetImpl(*this).TabKeyClicked(clickedShift);
 }
 
-void CustomCluster::OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction){
+void CustomCluster::OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocus::Direction direction){
     GetImpl(*this).OnKeyboardFocusOvershot(direction);
 }
 
index 357be00..615193b 100755 (executable)
@@ -241,11 +241,9 @@ public:
        void blockBoxEvent();
        int GetAllPageCount();
 
-       // Click a tabkey
-       bool TabKeyClicked(bool, bool);
        void TabKeyClicked(bool clickedShift);
 
-       void OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       void OnKeyboardFocusOvershot(Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
        bool IsScrolling(void);
 /**
index 533a3c6..b1e6141 100755 (executable)
@@ -279,7 +279,6 @@ public:
        void SetEventHandler(void *handler);
 
        void SetWidgetType(int type);
-       void SetHasProgressiveDisclosure(int hasPD);
        void SetBoxIsAddedToViewer(bool isAdded);
        // Set box is widget data not icon that internally has
        void SetBoxIsWidgetData(bool isWidgetData);
@@ -294,9 +293,6 @@ public:
        /* manage box buffer */
        void *AcquireBoxBuffer(void);
        void ReleaseBoxBuffer(void *buffer);
-       /* manage pd buffer */
-       void *AcquireProgressiveDisclosureBuffer(void);
-       void ReleaseProgressiveDisclosureBuffer(void *buffer);
 
 private:
        /* Get tail buffer data from list */
index 08ac500..58c109a 100755 (executable)
@@ -954,19 +954,19 @@ void CHomeScreenCenterPopup::UpdateScreenReader()
        int nOrder = BASE_FOCUS_ORDER_DELETE_POPUP;
        bool bFocusSet = false;
 
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        focusManager.SetWrapMode(true);
 
        if (m_aPopupTitleBg)
        {
                focusManager.SetFocusOrder(m_aPopupTitleBg, nOrder++);
-               focusManager.SetAccessibilityAttribute(m_aPopupTitleBg, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_strTitleText);
-               focusManager.SetAccessibilityAttribute(m_aPopupTitleBg, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_ST_BODY_POP_UP_HEADER_T_TALKBACK_T_TALKBACK"));
+               focusManager.SetAccessibilityAttribute(m_aPopupTitleBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_strTitleText);
+               focusManager.SetAccessibilityAttribute(m_aPopupTitleBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_ST_BODY_POP_UP_HEADER_T_TALKBACK_T_TALKBACK"));
                if (m_eCenterPopupType == CENTER_POPUP_TYPE_LIST)
                {
                        char sBuf[1024] = { 0, };
                        snprintf(sBuf, sizeof(sBuf), _("IDS_CAM_BODY_SHOWING_PD_ITEMS_T_TTS"), m_ListItems.size());
-                       focusManager.SetAccessibilityAttribute(m_aPopupTitleBg, Toolkit::FocusManager::ACCESSIBILITY_HINT, sBuf);
+                       focusManager.SetAccessibilityAttribute(m_aPopupTitleBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, sBuf);
                }
 
                focusManager.SetCurrentFocusActor(m_aPopupTitleBg);
@@ -976,8 +976,8 @@ void CHomeScreenCenterPopup::UpdateScreenReader()
        if (m_eCenterPopupType == CENTER_POPUP_TYPE_TEXT)
        {
                focusManager.SetFocusOrder(m_aPopupContentText, nOrder++);
-               focusManager.SetAccessibilityAttribute(m_aPopupContentText, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_strContentText);
-               focusManager.SetAccessibilityAttribute(m_aPopupContentText, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_ST_BODY_TEXT_IN_BODY_OF_POP_UP_T_TALKBACK"));
+               focusManager.SetAccessibilityAttribute(m_aPopupContentText, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_strContentText);
+               focusManager.SetAccessibilityAttribute(m_aPopupContentText, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_ST_BODY_TEXT_IN_BODY_OF_POP_UP_T_TALKBACK"));
 
                if (!bFocusSet)
                {
@@ -996,17 +996,17 @@ void CHomeScreenCenterPopup::UpdateScreenReader()
                                if (pItem->m_aPushButton)
                                {
                                        focusManager.SetFocusOrder(pItem->m_aPushButton, nOrder++);
-                                       focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::FocusManager::ACCESSIBILITY_LABEL, pItem->m_strLabel);
+                                       focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, pItem->m_strLabel);
                                        if (pItem->m_aActivateNormalImage && pItem->m_aActivatePressImage)
                                        {
-                                               focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_TPLATFORM_BODY_RADIO_BUTTON_T_TTS"));
+                                               focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_TPLATFORM_BODY_RADIO_BUTTON_T_TTS"));
                                                if (pItem->m_bActivated)
                                                {
-                                                       focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_TPLATFORM_BODY_SELECTED_T_TTS"));
+                                                       focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_TPLATFORM_BODY_SELECTED_T_TTS"));
                                                }
                                                else
                                                {
-                                                       focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_TPLATFORM_BODY_NOT_SELECTED_T_TTS"));
+                                                       focusManager.SetAccessibilityAttribute(pItem->m_aPushButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_TPLATFORM_BODY_NOT_SELECTED_T_TTS"));
                                                }
                                        }
 
@@ -1024,20 +1024,20 @@ void CHomeScreenCenterPopup::UpdateScreenReader()
        if (m_aPopupButtonLeft)
        {
                focusManager.SetFocusOrder(m_aPopupButtonLeft, nOrder++);
-               focusManager.SetAccessibilityAttribute(m_aPopupButtonLeft, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_PopupButtonTextLeftImg.GetText());
-               focusManager.SetAccessibilityAttribute(m_aPopupButtonLeft, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(m_aPopupButtonLeft, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_PopupButtonTextLeftImg.GetText());
+               focusManager.SetAccessibilityAttribute(m_aPopupButtonLeft, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
        if (m_aPopupButtonCenter)
        {
                focusManager.SetFocusOrder(m_aPopupButtonCenter, nOrder++);
-               focusManager.SetAccessibilityAttribute(m_aPopupButtonCenter, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_PopupButtonTextCenterImg.GetText());
-               focusManager.SetAccessibilityAttribute(m_aPopupButtonCenter, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(m_aPopupButtonCenter, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_PopupButtonTextCenterImg.GetText());
+               focusManager.SetAccessibilityAttribute(m_aPopupButtonCenter, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
        if (m_aPopupButtonRight)
        {
                focusManager.SetFocusOrder(m_aPopupButtonRight, nOrder++);
-               focusManager.SetAccessibilityAttribute(m_aPopupButtonRight, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_PopupButtonTextRightImg.GetText());
-               focusManager.SetAccessibilityAttribute(m_aPopupButtonRight, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(m_aPopupButtonRight, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_PopupButtonTextRightImg.GetText());
+               focusManager.SetAccessibilityAttribute(m_aPopupButtonRight, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
 }
 
@@ -1095,7 +1095,7 @@ void CHomeScreenCenterPopup::SetFocusInit()
        }
 }
 
-Actor CHomeScreenCenterPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CHomeScreenCenterPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
@@ -1104,7 +1104,7 @@ Actor CHomeScreenCenterPopup::QueryNextFocusActor(Actor currentFocusedActor, Act
        switch(direction)
        {
                // Right direction
-               case Dali::Toolkit::Control::Right :
+               case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
                        if (currentFocusedActor == m_aPopupButtonLeft)
                        {
                                if(m_aPopupButtonCenter)
@@ -1135,7 +1135,7 @@ Actor CHomeScreenCenterPopup::QueryNextFocusActor(Actor currentFocusedActor, Act
                        break;
 
            // Left direction
-               case Dali::Toolkit::Control::Left :
+               case Dali::Toolkit::Control::KeyboardFocus::LEFT :
                        if (currentFocusedActor == m_aPopupButtonLeft)
                        {
                                if(m_aPopupButtonRight)
@@ -1166,7 +1166,7 @@ Actor CHomeScreenCenterPopup::QueryNextFocusActor(Actor currentFocusedActor, Act
                        break;
 
            // Up direction
-           case Dali::Toolkit::Control::Up :
+           case Dali::Toolkit::Control::KeyboardFocus::UP :
                        if(m_eCenterPopupType == CENTER_POPUP_TYPE_LIST)
                        {
                                if( (currentFocusedActor == m_aPopupButtonLeft)
@@ -1184,7 +1184,7 @@ Actor CHomeScreenCenterPopup::QueryNextFocusActor(Actor currentFocusedActor, Act
                break;
 
            // Down direction
-           case Dali::Toolkit::Control::Down :
+           case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                        if(m_eCenterPopupType == CENTER_POPUP_TYPE_LIST)
                        {
                                if( (currentFocusedActor == m_aPopupButtonLeft)
index 0efd1da..fe99253 100755 (executable)
@@ -81,7 +81,7 @@ public:
        // keyboard
        Actor GetFocusItemListbyId(int nItemListId);
        void SetFocusInit();
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
 private:
index c96c6b3..82b6b30 100755 (executable)
@@ -98,19 +98,15 @@ float CHomeScreenConst::mClosedFolderItemOffset[CHomeScreenConst::RESOLUTION_BAS
 
 
 float CHomeScreenConst::mWidgetSizeUnitWidth[CHomeScreenConst::RESOLUTION_BASE_MAX] = {0.0f,0.0f,116.0f,130.0f};
-float CHomeScreenConst::mWidgetSizeUnitHeight[CHomeScreenConst::RESOLUTION_BASE_MAX] = {0.0f,0.0f,125.0f,150.0f};
-float CHomeScreenConst::mWidgetPosGapW[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,4.0f,4.0f};
-float CHomeScreenConst::mWidgetPosGapH[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,4.0f,4.0f};
-
+float CHomeScreenConst::mWidgetSizeUnitHeight[CHomeScreenConst::RESOLUTION_BASE_MAX] = {0.0f,0.0f,116.0f,130.0f};
+float CHomeScreenConst::mWidgetPosGapW[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,1.0f,2.0f};
+float CHomeScreenConst::mWidgetPosGapH[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,1.0f,2.0f};
 float CHomeScreenConst::mClusterAllPageH[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,20.0f,20.0f};
 float CHomeScreenConst::mClusterHomeYMax[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,572.0f,572.0f};
 float CHomeScreenConst::mClusterHomePageWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,480.0f,540.0f};
-
-float CHomeScreenConst::mClusterHomePageHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,508.0f,612.0f};
-float CHomeScreenConst::mClusterHomeViewHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,508.0f,612.0f};
-
-float CHomeScreenConst::mClusterHomeWidgetAreaHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,520.0f,612.0f};
-
+float CHomeScreenConst::mClusterHomePageHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,470.0f,564.0f};
+float CHomeScreenConst::mClusterHomeViewHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,470.0f,564.0f};
+float CHomeScreenConst::mClusterHomeWidgetAreaHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,470.0f,564.0f};
 float CHomeScreenConst::mClusterHomePageIndicatorArea[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,62.0f,62.0f};
 float CHomeScreenConst::mClusterHomePageIndicatorGapY[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,0.0f,0.0f};
 float CHomeScreenConst::mClusterHomeWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,480.0f,540.0f};
@@ -123,16 +119,12 @@ float CHomeScreenConst::mMainmenuLongPressedTouchGapY[CHomeScreenConst::RESOLUTI
 
 float CHomeScreenConst::mCCAllPageSideXGap[CHomeScreenConst::RESOLUTION_BASE_MAX]={0.0f,0.0f,26.0f,29.0f};
 float CHomeScreenConst::mCCDeleteButtonHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,44.0f,48.0f};
-
-float CHomeScreenConst::mCCEditPageWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,432.0f,486.0f};
-float CHomeScreenConst::mCCEditPageHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,459.0f,551.0f};
-
-float CHomeScreenConst::mCCGridEditX[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,24.0f,27.0f};
-
-float CHomeScreenConst::mCCAllPageWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,214.0f,240.0f};
-float CHomeScreenConst::mCCAllPageHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,233.0f,278.0f};
-
-float CHomeScreenConst::mCCAllPageY[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,9.0f,6.0f};
+float CHomeScreenConst::mCCEditPageWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,422.0f,472.0f};
+float CHomeScreenConst::mCCEditPageHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,422.0f,472.0f};
+float CHomeScreenConst::mCCGridEditX[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,29.0f,29.0f};
+float CHomeScreenConst::mCCAllPageWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,225.0f,252.0f};
+float CHomeScreenConst::mCCAllPageHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,225.0f,252.0f};
+float CHomeScreenConst::mCCAllPageY[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,5.0f,5.0f};
 float CHomeScreenConst::mCCAllPageButtonWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,82.0f,82.0f};
 float CHomeScreenConst::mCCAllPageButtonHeight[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,82.0f,82.0f};
 float CHomeScreenConst::mCCPageShadowWidth[CHomeScreenConst::RESOLUTION_BASE_MAX]= {0.0f,0.0f,16.6f,16.6f};
index 65bf1d1..4530905 100755 (executable)
@@ -726,16 +726,43 @@ Actor CHomeScreenPageIndicator::GetFirstActor()
        return m_aLeftButton;
 }
 
-Actor CHomeScreenPageIndicator::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CHomeScreenPageIndicator::GetLastActor()
+{
+       return m_aRightButton;
+}
+
+Actor CHomeScreenPageIndicator::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
-       if(currentFocusedActor == m_aLeftButton && direction == Dali::Toolkit::Control::Right) {
+       if(currentFocusedActor == m_aLeftButton && direction == Dali::Toolkit::Control::KeyboardFocus::RIGHT) {
                nextFocusActor = m_aRightButton;
-       } else if(currentFocusedActor == m_aRightButton && direction == Dali::Toolkit::Control::Left) {
+       } else if(currentFocusedActor == m_aRightButton && direction == Dali::Toolkit::Control::KeyboardFocus::LEFT) {
                nextFocusActor = m_aLeftButton;
        }
 
        return nextFocusActor;
 }
 
+bool CHomeScreenPageIndicator::TabKeyClicked(bool clickedShift)
+{
+       Actor nextFocusActor;
+       Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
+       Actor currentFocusedActor = kbdFocusManager.GetCurrentFocusActor();
+
+       if(clickedShift) {
+               if( currentFocusedActor == m_aLeftButton ) {
+                       return false;
+               }
+               nextFocusActor = m_aLeftButton;
+       } else {
+               if( currentFocusedActor == m_aRightButton ) {
+                       return false;
+               }
+               nextFocusActor = m_aRightButton;
+       }
+       kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+
+       return true;
+}
+
index f6bcd05..dc2c949 100755 (executable)
@@ -76,7 +76,9 @@ public:
 
        bool IsContain(Actor currentFocusedActor);
        Actor GetFirstActor();
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor GetLastActor();
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       bool TabKeyClicked(bool clickedShift);
 
 private:
 
index 6a4eae5..42ed592 100755 (executable)
@@ -63,7 +63,7 @@ public:
        /*
         * Key focus
         */
-       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction) { return Dali::Actor(); };
+       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction) { return Dali::Actor(); };
        virtual void TabKeyClicked(bool clickedShift) { return; };
 
 private:
index 357d9b6..13d587c 100755 (executable)
@@ -416,17 +416,17 @@ void MenuPopup::UpdateScreenReader(void)
 {
        int order = BASE_FOCUS_ORDER_OPTION_POPUP;
 
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        focusManager.SetWrapMode(true);
 
        // container
        focusManager.SetFocusOrder(mContainer, order++);
-       focusManager.SetAccessibilityAttribute(mContainer, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_SCR_OPT_MENU_POP_UP_TTS"));
+       focusManager.SetAccessibilityAttribute(mContainer, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_SCR_OPT_MENU_POP_UP_TTS"));
 
        char sBuf[1024] = { 0, };
        snprintf(sBuf, sizeof(sBuf), _("IDS_CAM_BODY_SHOWING_PD_ITEMS_T_TTS"), mButtonCount);
-       focusManager.SetAccessibilityAttribute(mContainer, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, sBuf);
-       focusManager.SetAccessibilityAttribute(mContainer, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_ST_BODY_DOUBLE_TAP_TO_CLOSE_THE_MENU_T_TTS"));
+       focusManager.SetAccessibilityAttribute(mContainer, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, sBuf);
+       focusManager.SetAccessibilityAttribute(mContainer, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_ST_BODY_DOUBLE_TAP_TO_CLOSE_THE_MENU_T_TTS"));
 
        focusManager.SetCurrentFocusActor(mContainer);
 
@@ -439,12 +439,12 @@ void MenuPopup::UpdateScreenReader(void)
                if (actor)
                {
                        focusManager.SetFocusOrder(actor, order++);
-                       focusManager.SetAccessibilityAttribute(actor, Toolkit::FocusManager::ACCESSIBILITY_LABEL, mTextMap[id]);
+                       focusManager.SetAccessibilityAttribute(actor, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, mTextMap[id]);
                }
        }
 }
 
-Actor MenuPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor MenuPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
     int moveKeyboardBoxID = 0;
@@ -464,13 +464,13 @@ Actor MenuPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedAc
     switch(direction)
        {
         // Up direction
-        case Dali::Toolkit::Control::Up :
+        case Dali::Toolkit::Control::KeyboardFocus::UP :
             moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
             TEST_DBG("Move a up box");
             break;
 
         // Down direction
-        case Dali::Toolkit::Control::Down :
+        case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                        moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
                        TEST_DBG("Move a down box");
                        break;
index f46922f..0301e50 100755 (executable)
@@ -71,7 +71,7 @@ public:
        void UpdateScreenReader(void);
 
        // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        /**
index 119b061..5fb0593 100755 (executable)
@@ -98,7 +98,7 @@ void MenuPopup::UpdateScreenReader(void)
        GetImpl(*this).UpdateScreenReader();
 }
 
-Actor MenuPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor MenuPopup::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index 02bfbfe..f9fb910 100755 (executable)
@@ -108,7 +108,7 @@ public:
        void UpdateScreenReader(void);
 
        // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        /**
index e3a1c02..be8e4f3 100755 (executable)
@@ -260,7 +260,7 @@ void CHomeScreen::DoHomekeyOperation(void)
        }
 }
 
-Actor CHomeScreen::OnKeyboardPreFocusChange(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CHomeScreen::OnKeyboardPreFocusChange(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
index 06cd79d..68970aa 100755 (executable)
@@ -77,7 +77,7 @@ private:
        void OnDragAndDropDropped(Dali::DragAndDropDetector detector);
 
        // Keyboard focus
-       Actor OnKeyboardPreFocusChange(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor OnKeyboardPreFocusChange(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void OnKeyboardFocusChanged(Actor originalFocusedActor, Actor currentFocusedActor);
        void OnKeyboardFocusGroupChanged(Actor currentFocusedActor, bool forward);
 
index 93ecc23..870a06d 100755 (executable)
@@ -1961,7 +1961,7 @@ void CMainMenuAppsView::UpdateBadgeCount(int nPageId, int nBoxId, int nBadgeCoun
 
 void CMainMenuAppsView::UpdateScreenReader()
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        ClusterHome3D::Accessibility *cHomeAccessibility = ClusterHome3D::Accessibility::Get();
        int nFocusGroup = cHomeAccessibility->GetCurrentGroup();
 
@@ -1984,9 +1984,9 @@ void CMainMenuAppsView::UpdateScreenReader()
                        snprintf(buf, sizeof(buf), _("IDS_HS_BODY_PAGE_P1SD_OF_P2SD"), mAppsViewFocusedPage, mAppsViewPageCount);
 
                        focusManager.SetFocusOrder(m_FocusedPage, BASE_FOCUS_ORDER_APPS_VIEW_PAGE);
-                       focusManager.SetAccessibilityAttribute(m_FocusedPage, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_ST_HEADER_APPLICATIONS"));
-                       focusManager.SetAccessibilityAttribute(m_FocusedPage, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, buf);
-                       focusManager.SetAccessibilityAttribute(m_FocusedPage, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_STORYALBUM_BODY_SWIPE_WITH_TWO_FINGERS_TO_VIEW_NEXT_PAGE_TTS"));
+                       focusManager.SetAccessibilityAttribute(m_FocusedPage, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_ST_HEADER_APPLICATIONS"));
+                       focusManager.SetAccessibilityAttribute(m_FocusedPage, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, buf);
+                       focusManager.SetAccessibilityAttribute(m_FocusedPage, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_STORYALBUM_BODY_SWIPE_WITH_TWO_FINGERS_TO_VIEW_NEXT_PAGE_TTS"));
 
                        m_FocusedPage.UpdateScreenReader();
 
@@ -1998,7 +1998,7 @@ void CMainMenuAppsView::UpdateScreenReader()
                                if (aPageIndiActor)
                                {
                                        focusManager.SetFocusOrder(aPageIndiActor, BASE_FOCUS_ORDER_APPS_VIEW_PAGE_INDICATOR);
-                                       focusManager.SetAccessibilityAttribute(aPageIndiActor, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, buf);
+                                       focusManager.SetAccessibilityAttribute(aPageIndiActor, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, buf);
                                }
                        }
 
@@ -2484,7 +2484,7 @@ void CMainMenuAppsView::_SetPageConstraints(ClusterHome3D::CMainMenuPage page, i
        }
 }
 
-Actor CMainMenuAppsView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuAppsView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
 
@@ -2501,17 +2501,17 @@ Actor CMainMenuAppsView::QueryNextFocusActor(Actor currentFocusedActor, Actor pr
        }
 
        if(m_cHomeScreenPageIndicator->IsContain(currentFocusedActor)) {
-               if(direction == Dali::Toolkit::Control::Up) {
+               if(direction == Dali::Toolkit::Control::KeyboardFocus::UP) {
                        nextFocusActor = focusedPage.GetLastActor();
                } else {
                        nextFocusActor = m_cHomeScreenPageIndicator->QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
                }
        } else if(currentFocusedActor == m_aTitleLeftButton || currentFocusedActor == m_aTitleRightButton) {
-               if(direction == Dali::Toolkit::Control::Down) {
+               if(direction == Dali::Toolkit::Control::KeyboardFocus::DOWN) {
                        nextFocusActor = focusedPage.GetFirstActor();
-               } else if(direction == Dali::Toolkit::Control::Left) {
+               } else if(direction == Dali::Toolkit::Control::KeyboardFocus::LEFT) {
                        nextFocusActor = m_aTitleLeftButton;
-               } else if(direction == Dali::Toolkit::Control::Right) {
+               } else if(direction == Dali::Toolkit::Control::KeyboardFocus::RIGHT) {
                        nextFocusActor = m_aTitleRightButton;
                } else {
                        nextFocusActor = currentFocusedActor;
@@ -2560,6 +2560,10 @@ Actor CMainMenuAppsView::QueryNextFocusActor(Actor currentFocusedActor, Actor pr
 
 void CMainMenuAppsView::TabKeyClicked(bool clickedShift)
 {
+       Actor nextFocusActor;
+       Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
+       Actor currentFocusedActor = kbdFocusManager.GetCurrentFocusActor();
+
        if(m_cShowingFolderBox)
        {
                m_cShowingFolderBox.TabKeyClicked(clickedShift);
@@ -2567,14 +2571,60 @@ void CMainMenuAppsView::TabKeyClicked(bool clickedShift)
        }
 
        ClusterHome3D::CMainMenuPage focusedPage = mAppsPages[mAppsViewFocusedPage-1];
-       if(focusedPage)
-       {
-               focusedPage.TabKeyClicked(clickedShift);
+       if(!focusedPage) {
+               HOME_ERR("focusedPage is not found");
+               return ;
+       }
+
+       if(m_cHomeScreenPageIndicator->IsContain(currentFocusedActor)) {
+               if( m_cHomeScreenPageIndicator->TabKeyClicked(clickedShift) ) {
+                       return ;
+               }
+
+               if(clickedShift) {
+                       nextFocusActor = focusedPage.GetLastActor();
+               } else {
+                       nextFocusActor = focusedPage.GetFirstActor();
+               }
+       } else if(currentFocusedActor == m_aTitleLeftButton || currentFocusedActor == m_aTitleRightButton) {
+               if(clickedShift) {
+                       if(currentFocusedActor == m_aTitleLeftButton) {
+                               nextFocusActor = focusedPage.GetLastActor();
+                       } else {
+                               nextFocusActor = m_aTitleLeftButton;
+                       }
+               } else {
+                       if(currentFocusedActor == m_aTitleRightButton) {
+                               nextFocusActor = focusedPage.GetFirstActor();
+                       } else {
+                               nextFocusActor = m_aTitleRightButton;
+                       }
+               }
+       } else if(focusedPage.IsContain(currentFocusedActor)) {
+               if(focusedPage.TabKeyClicked(clickedShift)) {
+                       return ;
+               }
+
+               if(clickedShift) {
+                       if(m_eAppsViewType == APPS_VIEW_ADD_APPS_TO_FOLDER) {
+                               nextFocusActor = m_aTitleRightButton;
+                       } else {
+                               nextFocusActor = m_cHomeScreenPageIndicator->GetLastActor();
+                       }
+               } else {
+                       if(m_eAppsViewType == APPS_VIEW_ADD_APPS_TO_FOLDER) {
+                               nextFocusActor = m_aTitleLeftButton;
+                       } else {
+                               nextFocusActor = m_cHomeScreenPageIndicator->GetFirstActor();
+                       }
+               }
        }
        else
        {
-               HOME_ERR("focusedPage is not found");
+               nextFocusActor = focusedPage.GetFirstActor();
        }
+
+       kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
 }
 
 bool CMainMenuAppsView::OnBoxPicked(Vector3 boxPos)
index 3b549de..c58761c 100755 (executable)
@@ -155,7 +155,7 @@ public:
        void SetViewTouchSensitive(bool bTouchSensitive);
        void OnChangedViewType(HomeScreenViewType eViewType);
     // Keyboard focus
-       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        virtual void TabKeyClicked(bool clickedShift);
 
        bool OnBoxPicked(Vector3 boxPos);
index 88b3604..59d1cbc 100755 (executable)
@@ -429,7 +429,7 @@ void CMainMenuAppsView::OnChangedViewType(HomeScreenViewType eViewType)
 }
 
 
-Actor CMainMenuAppsView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuAppsView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index 343f38c..ac45a14 100755 (executable)
@@ -131,7 +131,7 @@ public:
        void ScrollToFocusedPage(float duration);
 
        // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        bool OnBoxPicked(Vector3 boxPos);
index 9a966d2..1696db0 100755 (executable)
@@ -866,11 +866,11 @@ void CMainMenuBox::UpdateScreenPostion(Vector3 boxPos, Vector3 pressedPos)
 void CMainMenuBox::UpdateScreenReader(int nFocusOrder)
 {
        Actor self = Self();
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        focusManager.SetFocusOrder(self, nFocusOrder++);
 
-       focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_LABEL, mBoxName);
+       focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, mBoxName);
 
        //VIEWER_DBG("[TTS] Menu[%d][%s] order[%d]", mBoxId, mBoxName.c_str(), nFocusOrder);
 
@@ -878,8 +878,8 @@ void CMainMenuBox::UpdateScreenReader(int nFocusOrder)
        if (m_BoxDeleteButton)
        {
                focusManager.SetFocusOrder(m_BoxDeleteButton, nFocusOrder++);
-               focusManager.SetAccessibilityAttribute(m_BoxDeleteButton, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_BODY_DELETE_OPT_TTS"));
-               focusManager.SetAccessibilityAttribute(m_BoxDeleteButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(m_BoxDeleteButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_BODY_DELETE_OPT_TTS"));
+               focusManager.SetAccessibilityAttribute(m_BoxDeleteButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
 
        // propagate
@@ -904,12 +904,15 @@ void CMainMenuBox::OnBoxDeleteButtonClicked()
        }
 }
 
-void CMainMenuBox::OnActivated()
+bool CMainMenuBox::OnAccessibilityActivated()
 {
        if (!mIsMenuBoxClicking)
        {
                OnClicked(mMenuBoxContainer);
+               return true;
        }
+
+       return false;
 }
 
 bool CMainMenuBox::OnAccessibilityPan(const PanGesture& gesture)
index a67237a..41cddd8 100755 (executable)
@@ -220,7 +220,7 @@ public:
 
        // TTS
        void UpdateScreenReader(int nFocusOrder);
-       virtual void OnActivated();
+       virtual bool OnAccessibilityActivated();
        virtual bool OnAccessibilityPan(const PanGesture& gesture);
        virtual bool OnAccessibilityTouch(const TouchEvent& event);
 
index 918f28d..f5c2f94 100755 (executable)
@@ -216,15 +216,15 @@ CMainMenuCustomBox::~CMainMenuCustomBox()
 void CMainMenuCustomBox::OnUpdateScreenReader()
 {
        Actor self = Self();
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        if(m_bSelectFolderItemState == APPS_VIEW_ADD_APPS_TO_FOLDER)
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_TPLATFORM_BODY_TICKBOX_T_TTS"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_TPLATFORM_BODY_TICKBOX_T_TTS"));
        }
        else
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
        }
 
        if (!mBoxData)
@@ -239,15 +239,15 @@ void CMainMenuCustomBox::OnUpdateScreenReader()
        {
                char buf[1024] = { 0, };
                snprintf(buf, sizeof(buf), _("IDS_SCR_BODY_PD_UNREAD_ITEMS"), nBadgeCount);
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_HINT, buf);
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, buf);
        }
        else if (nBadgeCount == 1)
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_SCR_BODY_1_UNREAD_ITEM"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_SCR_BODY_1_UNREAD_ITEM"));
        }
        else
        {
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_HINT, "");
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, "");
        }
 
 //     VIEWER_DBG("[TTS] nBadgeCount[%d]", nBadgeCount);
index 9bd446b..af8c458 100755 (executable)
@@ -245,16 +245,16 @@ void CMainMenuFolderBox::OnClicked(Actor actor)
 void CMainMenuFolderBox::OnUpdateScreenReader()
 {
        Actor self = Self();
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        if (mBoxName.empty())
        {
                // if empty name, set label again
-               focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_COM_HEADER_UNNAMED_FOLDER"));
+               focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_COM_HEADER_UNNAMED_FOLDER"));
        }
 
-       focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_HEADER_FOLDER"));
-       focusManager.SetAccessibilityAttribute(self, Toolkit::FocusManager::ACCESSIBILITY_VALUE, _("IDS_HELP_BODY_DOUBLE_TAP_TO_OPEN_TTS"));
+       focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_HEADER_FOLDER"));
+       focusManager.SetAccessibilityAttribute(self, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_VALUE, _("IDS_HELP_BODY_DOUBLE_TAP_TO_OPEN_TTS"));
 }
 
 void CMainMenuFolderBox::SetFolderClickedCheckBox()
@@ -1079,6 +1079,8 @@ void CMainMenuFolderBox::FinaliseTitleEdit(void)
        // Reset input variables for next keyboard edit.
        mTitleInputState = false;
 
+       mTextDeleteButton.SetOpacity(0.0f);
+
        mMainMenuFolderView.SetFolderViewTouchSensitive(true);
 
        if(CHomeScreenViewManager::GetInstance()->GetCurrentViewType() != APPS_SCREEN_VIEW)
@@ -1086,15 +1088,10 @@ void CMainMenuFolderBox::FinaliseTitleEdit(void)
                mMainMenuFolderView.SetTouchSensitive(false);
        }
 
-#ifdef TIZEN_3_0
-       // Set return the virtual keyboard return key type.
-       VirtualKeyboard::SetReturnKeyType( VirtualKeyboard::DEFAULT );
-#else
+       // Set return the keyboard action button function.
        Property::Map settingsMap;
        settingsMap[ "ACTION_BUTTON" ] = InputMethod::ACTION_DEFAULT;
        mFolderName.SetProperty( TextField::Property::INPUT_METHOD_SETTINGS, settingsMap );
-#endif
-
 
        if(mFolderNameStr.empty())
        {
@@ -1148,14 +1145,14 @@ void CMainMenuFolderBox::UpdateScreenReader(void)
 
                if (nFocusGroup == FOCUS_GROUP_FOLDER_WINDOW)
                {
-                       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
                        int nOrder = BASE_FOCUS_ORDER_FOLDER_WINDOW;
                        if (mFolderWindowBg)
                        {
                                focusManager.SetFocusOrder(mFolderWindowBg, nOrder++);
-                               focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_THE_FOLDER_IS_OPEN"));
-                               focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_DOUBLE_TAP_TO_CLOSE_T_TTS"));
+                               focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_THE_FOLDER_IS_OPEN"));
+                               focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_HS_BODY_DOUBLE_TAP_TO_CLOSE_T_TTS"));
 
                                if (nFocusUpdateType == FOCUS_UPDATE_TYPE_RESET)
                                {
@@ -1166,7 +1163,7 @@ void CMainMenuFolderBox::UpdateScreenReader(void)
                        if (mFolderTextBg)
                        {
                                focusManager.SetFocusOrder(mFolderTextBg, nOrder++);
-                               focusManager.SetAccessibilityAttribute(mFolderTextBg, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_TPLATFORM_BODY_TITLE"));
+                               focusManager.SetAccessibilityAttribute(mFolderTextBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_TPLATFORM_BODY_TITLE"));
 
                                if (!m_bFocusedActorActivatedSignalConnected)
                                {
@@ -1865,7 +1862,6 @@ bool CMainMenuFolderBox::OnCloseFolderBox(void)
        *mFolderName.CutAndPasteToolBarDisplayedSignal().Disconnect(this, &Internal::CMainMenuFolderBox::_OnCutAndPasteToolBarDisplayed);
        */
 
-
        if (mTitleInputState && mFolderName)
        {
                _SetFolderTitleStyle(FOLDER_CODE_TITLE_SIZE,FOLDER_CODE_TITLE_COLOR);
@@ -1963,7 +1959,7 @@ void CMainMenuFolderBox::_OnCloseAnimationFinished(Animation&)
 
        if (m_bFocusedActorActivatedSignalConnected)
        {
-               Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+               Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                focusManager.FocusedActorActivatedSignal().Disconnect(this, &CMainMenuFolderBox::_OnTTSFocusedActorActivated);
                m_bFocusedActorActivatedSignalConnected = false;
        }
@@ -2113,15 +2109,11 @@ void CMainMenuFolderBox::_OnFolderTitleEditStarted( Dali::Toolkit::Control textF
        aPressedImage.SetColor( FOLDER_CODE_DELETE_BTN_P_IMAGE_COLOR);
 
        _SetFolderTitleStyle(FOLDER_CODE_TITLE_SIZE, FOLDER_CODE_TITLE_COLOR);
-#ifdef TIZEN_3_0
 
-       // Set return the virtual keyboard return key type.
-       VirtualKeyboard::SetReturnKeyType( VirtualKeyboard::DONE );
-#else
+       // Set return the keyboard action button function.
        Property::Map settingsMap;
        settingsMap[ "ACTION_BUTTON" ] = InputMethod::ACTION_DONE;
-       mFolderName.SetProperty( TextField::Property::INPUT_METHOD_SETTINGS, settingsMap );
-#endif
+       textField.SetProperty( TextField::Property::INPUT_METHOD_SETTINGS, settingsMap );
 
        ClusterHome3D::CMainMenuFolderBox handle( GetOwner() );
        mFdTitleEditStartedSignal.Emit(handle);
@@ -2284,21 +2276,10 @@ bool CMainMenuFolderBox::_OnTitleDeleteButtonClicked(Dali::Toolkit::Button butto
 {
        TEST_DBG("TitleDelete button is clicked");
 
-       //_SetFolderTitleStyle(FOLDER_CODE_TITLE_EDIT_SIZE, FOLDER_CODE_TITLE_EDIT_COLOR);
-       //_SetFolderTitleGuideStyle(FOLDER_CODE_TITLE_GUIDE_SIZE,FOLDER_CODE_TITLE_GUIDE_COLOR);
-
        mFolderNameStr.clear();
 
        mFolderName.SetProperty(TextField::Property::TEXT, mFolderNameStr);
 
-       //mTextDeleteButton.SetOpacity(0.0f);
-
-       // Hide Clipboard and show Keypad.
-       //Clipboard clipboard = Clipboard::Get();
-       //clipboard.HideClipboard();
-#ifdef TIZEN_3_0
-       VirtualKeyboard::Show();
-#endif
        return false;
 
 }
@@ -2530,9 +2511,8 @@ void CMainMenuFolderBox::OnBoxDragInFolder(ClusterHome3D::CMainMenuBox& menuBox,
        OnBoxDragged(menuBox, currentLeftPos, touchedScreenPos);
 }
 
-Actor CMainMenuFolderBox::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderBox::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
-       Actor self = Self();
        Actor nextFocusActor;
 
        nextFocusActor = mMainMenuFolderView.QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
@@ -2542,35 +2522,7 @@ Actor CMainMenuFolderBox::QueryNextFocusActor(Actor currentFocusedActor, Actor p
 
 void CMainMenuFolderBox::TabKeyClicked(bool clickedShift)
 {
-       Actor self = Self();
-       Actor nextFocusActor;
-       Actor currentFocusedActor;
-
-       Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
-       currentFocusedActor = kbdFocusManager.GetCurrentFocusActor();
-       Actor focusGroup = kbdFocusManager.GetFocusGroup(currentFocusedActor);
-
-       if(focusGroup && focusGroup.GetName() == "FolderPage")
-       {
-               mMainMenuFolderView.TabKeyClicked(clickedShift);
-
-               nextFocusActor = kbdFocusManager.GetCurrentFocusActor();
-               if(currentFocusedActor == nextFocusActor)
-               {
-                       kbdFocusManager.SetCurrentFocusActor(mFolderTextBg);
-               }
-       }
-       else
-       {
-               if(clickedShift)
-               {
-                       mMainMenuFolderView.TabKeyClicked(clickedShift);
-               }
-               else
-               {
-                       mMainMenuFolderView.TabKeyClicked(clickedShift);
-               }
-       }
+       mMainMenuFolderView.TabKeyClicked(clickedShift);
 }
 
 void CMainMenuFolderBox::_UpdateBadgeCount()
@@ -2621,7 +2573,7 @@ void CMainMenuFolderBox::_UpdateScreenReaderFolderName()
 
                if (nFocusGroup == FOCUS_GROUP_FOLDER_WINDOW)
                {
-                       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
                        if (mFolderWindowBg)
                        {
@@ -2629,11 +2581,11 @@ void CMainMenuFolderBox::_UpdateScreenReaderFolderName()
 
                                if (!folderNameStr.empty())
                                {
-                                       focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::FocusManager::ACCESSIBILITY_LABEL, folderNameStr);
+                                       focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, folderNameStr);
                                }
                                else
                                {
-                                       focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_COM_HEADER_UNNAMED_FOLDER"));
+                                       focusManager.SetAccessibilityAttribute(mFolderWindowBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_COM_HEADER_UNNAMED_FOLDER"));
                                }
                        }
 
@@ -2643,11 +2595,11 @@ void CMainMenuFolderBox::_UpdateScreenReaderFolderName()
 
                                if (!folderNameStr.empty())
                                {
-                                       focusManager.SetAccessibilityAttribute(mFolderTextBg, Toolkit::FocusManager::ACCESSIBILITY_LABEL, folderNameStr);
+                                       focusManager.SetAccessibilityAttribute(mFolderTextBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, folderNameStr);
                                }
                                else
                                {
-                                       focusManager.SetAccessibilityAttribute(mFolderTextBg, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_COM_HEADER_UNNAMED_FOLDER"));
+                                       focusManager.SetAccessibilityAttribute(mFolderTextBg, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_COM_HEADER_UNNAMED_FOLDER"));
                                }
                        }
                }
index 8aa57ff..7c0c1b3 100755 (executable)
@@ -135,7 +135,7 @@ public:
        void OnBoxDragInFolder(ClusterHome3D::CMainMenuBox& menuBox, Vector3 boxLeftPos, Vector3 touchedScreenPos);
 
        // Focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        // badge
index c503055..6a09f56 100755 (executable)
@@ -270,7 +270,7 @@ void CMainMenuFolderBox::OnBoxDragInFolder(ClusterHome3D::CMainMenuBox& menuBox,
 {
        GetImpl(*this).OnBoxDragInFolder(menuBox, boxLeftPos, touchedScreenPos) ;
 }
-Actor CMainMenuFolderBox::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderBox::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index 4500f07..939ca65 100755 (executable)
@@ -78,7 +78,7 @@ public:
        void OnBoxDragInFolder(ClusterHome3D::CMainMenuBox& menuBox, Vector3 boxLeftPos, Vector3 touchedScreenPos);
 
        // Focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        // badge
index 63c0e09..0f83ae8 100755 (executable)
@@ -1299,14 +1299,31 @@ Actor CMainMenuFolderPage::GetFirstActor()
        return aFirstActor;
 }
 
-AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderPage::GetLastActor()
+{
+       Actor aLastActor;
+
+       if ( APPS_VIEW_MAIN_EDIT == m_eViewType && mIsAddButtonVisible) {
+               return mAddBoxButton;
+       }
+
+       if((int)mPageBoxes.size() <= 0) {
+               aLastActor = m_aTitleView;
+       } else {
+               mCurrentKeyFocusedBoxID = (int)mPageBoxes.size() - 1;
+               aLastActor = mPageBoxes[mCurrentKeyFocusedBoxID];
+       }
+       return aLastActor;
+}
+
+AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        AppsViewFocusDirection dir = APPS_VIEW_DIRECTION_STAY;
        int nextBoxID = 0;
 
        switch(direction)
        {
-       case Dali::Toolkit::Control::Right :
+       case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
                nextBoxID = mCurrentKeyFocusedBoxID + 1;
                if(nextBoxID >= (int)mPageBoxes.size()) {
                        dir = APPS_VIEW_DIRECTION_RIGHT;
@@ -1319,7 +1336,7 @@ AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentF
                break;
 
        // Left direction
-       case Dali::Toolkit::Control::Left :
+       case Dali::Toolkit::Control::KeyboardFocus::LEFT :
                nextBoxID = mCurrentKeyFocusedBoxID - 1;
                if(nextBoxID < 0) {
                        dir = APPS_VIEW_DIRECTION_LEFT;
@@ -1331,7 +1348,7 @@ AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentF
                break;
 
        // Up direction
-       case Dali::Toolkit::Control::Up :
+       case Dali::Toolkit::Control::KeyboardFocus::UP :
                nextBoxID = mCurrentKeyFocusedBoxID - FOLDER_BOX_POSITION_COL_MAX;
                if(nextBoxID < 0) {
                        dir = APPS_VIEW_DIRECTION_UP;
@@ -1339,7 +1356,7 @@ AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentF
                break;
 
        // Down direction
-       case Dali::Toolkit::Control::Down :
+       case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                nextBoxID = mCurrentKeyFocusedBoxID + FOLDER_BOX_POSITION_COL_MAX;
                if(nextBoxID >= (int)mPageBoxes.size()) {
                        dir = APPS_VIEW_DIRECTION_DOWN;
@@ -1360,39 +1377,38 @@ AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentF
        return dir;
 }
 
-Actor CMainMenuFolderPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
+       Actor nextFocusActor;
+       int moveKeyboardBoxID = 0;
+
        if(mPageBoxes.size() < 1)
        {
                return currentFocusedActor;
        }
 
-       Actor self = Self();
-       Actor nextFocusActor;
-       int moveKeyboardBoxID = 0;
-
        switch(direction)
        {
        // Right direction
-       case Dali::Toolkit::Control::Right :
+       case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
                TEST_DBG("Move a right box");
                break;
 
        // Left direction
-       case Dali::Toolkit::Control::Left :
+       case Dali::Toolkit::Control::KeyboardFocus::LEFT :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
                TEST_DBG("Move a left box");
                break;
 
        // Up direction
-       case Dali::Toolkit::Control::Up :
+       case Dali::Toolkit::Control::KeyboardFocus::UP :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID - FOLDER_BOX_POSITION_COL_MAX;
                TEST_DBG("Move a up box");
                break;
 
        // Down direction
-       case Dali::Toolkit::Control::Down :
+       case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID + FOLDER_BOX_POSITION_COL_MAX;
                TEST_DBG("Move a down box");
                break;
@@ -1403,15 +1419,12 @@ Actor CMainMenuFolderPage::QueryNextFocusActor(Actor currentFocusedActor, Actor
        }
 
        // Check a folder range
-       if(moveKeyboardBoxID >= 0 && moveKeyboardBoxID < (int)mPageBoxes.size())
-       {
+       if(moveKeyboardBoxID >= 0 && moveKeyboardBoxID < (int)mPageBoxes.size()) {
                nextFocusActor = mPageBoxes[moveKeyboardBoxID];
 
                // Save a current focus actor
                mCurrentKeyFocusedBoxID = moveKeyboardBoxID;
-       }
-       else
-       {
+       } else {
                if ( APPS_VIEW_MAIN_EDIT == m_eViewType && mIsAddButtonVisible && moveKeyboardBoxID >= 0) {
                        mCurrentKeyFocusedBoxID = (int)mPageBoxes.size();
 
@@ -1424,9 +1437,8 @@ Actor CMainMenuFolderPage::QueryNextFocusActor(Actor currentFocusedActor, Actor
        return nextFocusActor;
 }
 
-void CMainMenuFolderPage::TabKeyClicked(bool clickedShift)
+bool CMainMenuFolderPage::TabKeyClicked(bool clickedShift)
 {
-       Actor self = Self();
        Actor nextFocusActor;
        Actor currentFocusedActor;
        int moveKeyboardBoxID = 0;
@@ -1437,53 +1449,47 @@ void CMainMenuFolderPage::TabKeyClicked(bool clickedShift)
 
        if(mPageBoxes.size() < 1)
        {
-               nextFocusActor = currentFocusedActor;
-    }
+               return false;
+       }
+
+       if(clickedShift)
+       {
+               TEST_DBG("Shift + Tab");
+               moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
+
+               if(currentFocusedActor == mAddBoxButton) {
+                       moveKeyboardBoxID = (int)mPageBoxes.size() - 1;
+               }
+       }
        else
        {
-               if(focusGroup && focusGroup.GetName() != "FolderPage")
-               {
-                       if(clickedShift)
-                       {
-                               TEST_DBG("Shift + Tab");
-                               mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
-                       }
-                       else
-                       {
-                               TEST_DBG("Tab");
-                               mCurrentKeyFocusedBoxID = 0;
-                       }
-                       nextFocusActor = mPageBoxes[mCurrentKeyFocusedBoxID];
+               TEST_DBG("Tab");
+               moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
+
+               if(currentFocusedActor == mAddBoxButton) {
+                       moveKeyboardBoxID =  - 1;
                }
-               else
-               {
-                       if(clickedShift)
-                       {
-                               TEST_DBG("Shift + Tab");
-                               moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
-                       }
-                       else
-                       {
-                               TEST_DBG("Tab");
-                               moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
-                       }
+       }
 
-                   // Check a folder range
-                   if(moveKeyboardBoxID < 0 || moveKeyboardBoxID >= (int)mPageBoxes.size())
-                       {
-                               nextFocusActor = mPageBoxes[mCurrentKeyFocusedBoxID];
-                   }
-                   else
-                       {
-                               nextFocusActor = mPageBoxes[moveKeyboardBoxID];
+       // Check a folder range
+       if(moveKeyboardBoxID >= 0 && moveKeyboardBoxID < (int)mPageBoxes.size()) {
+               nextFocusActor = mPageBoxes[moveKeyboardBoxID];
 
-                               // Save a current focus actor
-                               mCurrentKeyFocusedBoxID = moveKeyboardBoxID;
-                   }
+               // Save a current focus actor
+               mCurrentKeyFocusedBoxID = moveKeyboardBoxID;
+       } else {
+               if ( APPS_VIEW_MAIN_EDIT == m_eViewType && mIsAddButtonVisible && moveKeyboardBoxID >= 0) {
+                       mCurrentKeyFocusedBoxID = (int)mPageBoxes.size();
+
+                       nextFocusActor = mAddBoxButton;
+               } else {
+                       return false;
                }
        }
 
        kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+
+       return true;
 }
 
 void CMainMenuFolderPage::UpdateScreenReader()
index d077e96..14f487c 100755 (executable)
@@ -96,9 +96,9 @@ public:
        // check box event
        void _OnCheckBoxEvent(ClusterHome3D::CMainMenuBox& box, bool bCheck);
 
-    // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
-       void TabKeyClicked(bool clickedShift);
+       // Keyboard focus
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       bool TabKeyClicked(bool clickedShift);
 
        // tts
        void UpdateScreenReader();
@@ -110,7 +110,8 @@ public:
        void UpdateFolderContents();
 
        Actor GetFirstActor();
-       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor GetLastActor();
+       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void SetTitleView(Actor aTitleView);
 
        ClusterHome3D::CMainMenuFolderPage::FolderBoxStatusChangedSignal& SignalConfirmFolderMenuBoxDeleted();
index db807cc..fc211fb 100755 (executable)
@@ -243,13 +243,13 @@ int CMainMenuFolderPage::GetPreviousBoxesOnFolderPage(int boxNum, std::vector<Cl
 {
        return GetImpl(*this).GetPreviousBoxesOnFolderPage(boxNum, boxList);
 }
-Actor CMainMenuFolderPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
-void CMainMenuFolderPage::TabKeyClicked(bool clickedShift)
+bool CMainMenuFolderPage::TabKeyClicked(bool clickedShift)
 {
-       GetImpl(*this).TabKeyClicked(clickedShift);
+       return GetImpl(*this).TabKeyClicked(clickedShift);
 }
 
 void CMainMenuFolderPage::UpdateScreenReader()
@@ -276,7 +276,12 @@ Actor CMainMenuFolderPage::GetFirstActor()
        return GetImpl(*this).GetFirstActor();
 }
 
-AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderPage::GetLastActor()
+{
+       return GetImpl(*this).GetLastActor();
+}
+
+AppsViewFocusDirection CMainMenuFolderPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).GetNextFocusDirection(currentFocusedActor, direction);
 }
index 17ce26e..8c704b6 100755 (executable)
@@ -93,8 +93,8 @@ public:
        int GetPreviousBoxesOnFolderPage(int boxNum, std::vector<ClusterHome3D::CMainMenuBox>& boxList);
 
     // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
-       void TabKeyClicked(bool clickedShift);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       bool TabKeyClicked(bool clickedShift);
 
        // tts
        void UpdateScreenReader();
@@ -106,7 +106,8 @@ public:
        void UpdateFolderContents();
 
        Actor GetFirstActor();
-       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor GetLastActor();
+       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void SetTitleView(Actor aTitleView);
 
 public:
index ff39ab3..4a9343d 100755 (executable)
@@ -1509,7 +1509,7 @@ bool CMainMenuFolderView::KeyClicked(HomeScreenKeyType eKeyType)
        return false;
 }
 
-Actor CMainMenuFolderView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
        ClusterHome3D::CMainMenuFolderPage focusedPage;
@@ -1524,7 +1524,7 @@ Actor CMainMenuFolderView::QueryNextFocusActor(Actor currentFocusedActor, Actor
        }
 
        if(currentFocusedActor == m_aTitleView) {
-               if(direction == Dali::Toolkit::Control::Down) {
+               if(direction == Dali::Toolkit::Control::KeyboardFocus::DOWN) {
                        nextFocusActor = focusedPage.GetFirstActor();
                } else {
                        nextFocusActor = currentFocusedActor;
@@ -1567,15 +1567,39 @@ Actor CMainMenuFolderView::QueryNextFocusActor(Actor currentFocusedActor, Actor
 
 void CMainMenuFolderView::TabKeyClicked(bool clickedShift)
 {
-       ClusterHome3D::CMainMenuFolderPage focusedPage = mFolderPages[mFolderViewFocusedPage-1];
-       if(focusedPage)
+       Actor nextFocusActor;
+       Actor currentFocusedActor;
+       ClusterHome3D::CMainMenuFolderPage focusedPage;
+
+       Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
+       currentFocusedActor = kbdFocusManager.GetCurrentFocusActor();
+       Actor focusGroup = kbdFocusManager.GetFocusGroup(currentFocusedActor);
+
+       if(mFolderPages.size() <= 0 || !(focusedPage = mFolderPages[mFolderViewFocusedPage-1]) )
        {
-               focusedPage.TabKeyClicked(clickedShift);
+               TEST_ERR("focusedPage is not found");
+               return ;
+       }
+
+       if(currentFocusedActor == m_aTitleView) {
+               if(clickedShift) {
+                       nextFocusActor = focusedPage.GetLastActor();
+               } else {
+                       nextFocusActor = focusedPage.GetFirstActor();
+               }
+       } else if(focusGroup && focusGroup.GetName() == "FolderPage") {
+               if(focusedPage.TabKeyClicked(clickedShift)) {
+                       return ;
+               }
+
+               nextFocusActor = m_aTitleView;
        }
        else
        {
-               TEST_ERR("focusedPage is not found");
+               nextFocusActor = m_aTitleView;
        }
+
+       kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
 }
 
 void CMainMenuFolderView::UpdateScreenReader()
@@ -1595,11 +1619,11 @@ void CMainMenuFolderView::UpdateScreenReader()
                                                char buf[1024] = { 0, };
                                                snprintf(buf, sizeof(buf), _("IDS_HS_BODY_PAGE_P1SD_OF_P2SD"), GetFolderViewFocusedPage(), GetFolderViewPageCount());
 
-                                               Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                                               Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                                                focusManager.SetFocusOrder(cMainMenuFolderPage, BASE_FOCUS_ORDER_APPS_VIEW_PAGE);
-                                               focusManager.SetAccessibilityAttribute(cMainMenuFolderPage, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_HEADER_FOLDER"));
-                                               focusManager.SetAccessibilityAttribute(cMainMenuFolderPage, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, buf);
-                                               focusManager.SetAccessibilityAttribute(cMainMenuFolderPage, Toolkit::FocusManager::ACCESSIBILITY_HINT, _("IDS_STORYALBUM_BODY_SWIPE_WITH_TWO_FINGERS_TO_VIEW_NEXT_PAGE_TTS"));
+                                               focusManager.SetAccessibilityAttribute(cMainMenuFolderPage, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_HEADER_FOLDER"));
+                                               focusManager.SetAccessibilityAttribute(cMainMenuFolderPage, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, buf);
+                                               focusManager.SetAccessibilityAttribute(cMainMenuFolderPage, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_HINT, _("IDS_STORYALBUM_BODY_SWIPE_WITH_TWO_FINGERS_TO_VIEW_NEXT_PAGE_TTS"));
 
                                                cMainMenuFolderPage.UpdateScreenReader();
 
index b4a5112..8ab414f 100755 (executable)
@@ -149,7 +149,7 @@ public:
        bool KeyClicked(HomeScreenKeyType eKeyType);
 
        // keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        // tts
index 7f79b49..34c37b3 100755 (executable)
@@ -300,7 +300,7 @@ bool CMainMenuFolderView::KeyClicked(HomeScreenKeyType eKeyType)
        return GetImpl(*this).KeyClicked(eKeyType);
 }
 
-Actor CMainMenuFolderView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuFolderView::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index c87d9ec..db85d09 100755 (executable)
@@ -93,7 +93,7 @@ public:
        virtual bool KeyClicked(HomeScreenKeyType eKeyType);
 
        // Focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        void TabKeyClicked(bool clickedShift);
 
        // tts
index d28e861..d1fa57d 100755 (executable)
@@ -1582,14 +1582,14 @@ Actor CMainMenuPage::GetLastActor()
        return mPageBoxes[GetFocusBoxByOrder(mPageBoxes.size() - 1)];
 }
 
-AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        AppsViewFocusDirection dir = APPS_VIEW_DIRECTION_STAY;
        int nextBoxID = 0;
 
        switch(direction)
        {
-       case Dali::Toolkit::Control::Right :
+       case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
                nextBoxID = mCurrentKeyFocusedBoxID + 1;
                if(nextBoxID >= (int)mPageBoxes.size()) {
                        dir = APPS_VIEW_DIRECTION_RIGHT;
@@ -1597,7 +1597,7 @@ AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocused
                break;
 
        // Left direction
-       case Dali::Toolkit::Control::Left :
+       case Dali::Toolkit::Control::KeyboardFocus::LEFT :
                nextBoxID = mCurrentKeyFocusedBoxID - 1;
                if(nextBoxID < 0) {
                        dir = APPS_VIEW_DIRECTION_LEFT;
@@ -1605,7 +1605,7 @@ AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocused
                break;
 
        // Up direction
-       case Dali::Toolkit::Control::Up :
+       case Dali::Toolkit::Control::KeyboardFocus::UP :
                nextBoxID = mCurrentKeyFocusedBoxID - CUSTOM_GRID_MAX_COL;
                if(nextBoxID < 0) {
                        dir = APPS_VIEW_DIRECTION_UP;
@@ -1613,7 +1613,7 @@ AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocused
                break;
 
        // Down direction
-       case Dali::Toolkit::Control::Down :
+       case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                nextBoxID = mCurrentKeyFocusedBoxID + CUSTOM_GRID_MAX_COL;
                if(nextBoxID >= (int)mPageBoxes.size()) {
                        dir = APPS_VIEW_DIRECTION_DOWN;
@@ -1627,13 +1627,9 @@ AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocused
 
        return dir;
 }
-Actor CMainMenuPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
-{
-       if(mPageBoxes.size() < 1)
-       {
-               return currentFocusedActor;
-       }
 
+Actor CMainMenuPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
+{
        Actor self = Self();
        Actor nextFocusActor;
        int moveKeyboardBoxID = 0;
@@ -1641,68 +1637,70 @@ Actor CMainMenuPage::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
        Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
        Actor focusGroup = kbdFocusManager.GetFocusGroup(currentFocusedActor);
 
+       if(mPageBoxes.size() < 1)
+       {
+               return currentFocusedActor;
+       }
+
        // at the first time, just give a focus on Next1 button.
        if(focusGroup != self)
        {
-               if(mPageBoxes.size() > 0)
+               switch(direction)
                {
-                   switch(direction)
-                       {
-                               // Right direction
-                               case Dali::Toolkit::Control::Right :
-                                       TEST_DBG("Move a right box");
-                                       mCurrentKeyFocusedBoxID = 0;
-                                       break;
-
-                               // Left direction
-                               case Dali::Toolkit::Control::Left :
-                                       TEST_DBG("Move a left box");
-                                       mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
-                                       break;
-
-                               // Up direction
-                               case Dali::Toolkit::Control::Up :
-                                       mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
-                                       TEST_DBG("Move a up box");
-                                       break;
-
-                               // Down direction
-                               case Dali::Toolkit::Control::Down :
-                                       mCurrentKeyFocusedBoxID = 0;
-                                       TEST_DBG("Move a down box");
-                                       break;
-
-                       default :
-                               HOME_ERR("QueryNextFocusActor (Wrong direction)");
-                           break;
-                   }
-                       nextFocusActor = mPageBoxes[GetFocusBoxByOrder(mCurrentKeyFocusedBoxID)];
+               // Right direction
+               case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
+                       TEST_DBG("Move a right box");
+                       mCurrentKeyFocusedBoxID = 0;
+                       break;
+
+               // Left direction
+               case Dali::Toolkit::Control::KeyboardFocus::LEFT :
+                       TEST_DBG("Move a left box");
+                       mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
+                       break;
+
+               // Up direction
+               case Dali::Toolkit::Control::KeyboardFocus::UP :
+                       mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
+                       TEST_DBG("Move a up box");
+                       break;
+
+               // Down direction
+               case Dali::Toolkit::Control::KeyboardFocus::DOWN :
+                       mCurrentKeyFocusedBoxID = 0;
+                       TEST_DBG("Move a down box");
+                       break;
+
+               default :
+                       HOME_ERR("QueryNextFocusActor (Wrong direction)");
+                       break;
                }
+               nextFocusActor = mPageBoxes[GetFocusBoxByOrder(mCurrentKeyFocusedBoxID)];
                return nextFocusActor;
        }
 
        switch(direction)
        {
        // Right direction
-       case Dali::Toolkit::Control::Right :
+       case Dali::Toolkit::Control::KeyboardFocus::RIGHT :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
                TEST_DBG("Move a right box");
                break;
 
        // Left direction
-       case Dali::Toolkit::Control::Left :
+       case Dali::Toolkit::Control::KeyboardFocus::LEFT :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
                TEST_DBG("Move a left box");
                break;
 
        // Up direction
-       case Dali::Toolkit::Control::Up :
+       case Dali::Toolkit::Control::KeyboardFocus::UP :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID - CUSTOM_GRID_MAX_COL;
                TEST_DBG("Move a up box");
                break;
 
        // Down direction
-       case Dali::Toolkit::Control::Down :
+       case Dali::Toolkit::Control::KeyboardFocus::DOWN :
                moveKeyboardBoxID = mCurrentKeyFocusedBoxID + CUSTOM_GRID_MAX_COL;
                TEST_DBG("Move a down box");
                break;
@@ -1728,7 +1726,7 @@ Actor CMainMenuPage::QueryNextFocusActor(Actor currentFocusedActor, Actor propos
        return nextFocusActor;
 }
 
-void CMainMenuPage::TabKeyClicked(bool clickedShift)
+bool CMainMenuPage::TabKeyClicked(bool clickedShift)
 {
        Actor self = Self();
        Actor nextFocusActor;
@@ -1741,53 +1739,53 @@ void CMainMenuPage::TabKeyClicked(bool clickedShift)
 
        if(mPageBoxes.size() < 1)
        {
-               nextFocusActor = currentFocusedActor;
-    }
+               return true;
+       }
+
+       if(focusGroup != self)
+       {
+               if(clickedShift)
+               {
+                       TEST_DBG("Shift + Tab");
+                       mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
+               }
+               else
+               {
+                       TEST_DBG("Tab");
+                       mCurrentKeyFocusedBoxID = 0;
+               }
+               nextFocusActor = mPageBoxes[GetFocusBoxByOrder(mCurrentKeyFocusedBoxID)];
+       }
        else
        {
-               if(focusGroup != self)
+               if(clickedShift)
                {
-                       if(clickedShift)
-                       {
-                               TEST_DBG("Shift + Tab");
-                               mCurrentKeyFocusedBoxID = mPageBoxes.size() - 1;
-                       }
-                       else
-                       {
-                               TEST_DBG("Tab");
-                               mCurrentKeyFocusedBoxID = 0;
-                       }
-                       nextFocusActor = mPageBoxes[GetFocusBoxByOrder(mCurrentKeyFocusedBoxID)];
+                       TEST_DBG("Shift + Tab");
+                       moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
                }
                else
                {
-                       if(clickedShift)
-                       {
-                               TEST_DBG("Shift + Tab");
-                               moveKeyboardBoxID = mCurrentKeyFocusedBoxID - 1;
-                       }
-                       else
-                       {
-                               TEST_DBG("Tab");
-                               moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
-                       }
-
-                   // Check a folder range
-                   if(moveKeyboardBoxID < 0 || moveKeyboardBoxID >= (int)mPageBoxes.size())
-                       {
-                               nextFocusActor = mPageBoxes[GetFocusBoxByOrder(mCurrentKeyFocusedBoxID)];
-                   }
-                   else
-                       {
-                               nextFocusActor = mPageBoxes[GetFocusBoxByOrder(moveKeyboardBoxID)];
+                       TEST_DBG("Tab");
+                       moveKeyboardBoxID = mCurrentKeyFocusedBoxID + 1;
+               }
 
-                               // Save a current focus actor
-                               mCurrentKeyFocusedBoxID = moveKeyboardBoxID;
-                   }
+               // Check a folder range
+               if(moveKeyboardBoxID < 0 || moveKeyboardBoxID >= (int)mPageBoxes.size())
+               {
+                       return false;
                }
+               else
+               {
+                       nextFocusActor = mPageBoxes[GetFocusBoxByOrder(moveKeyboardBoxID)];
+
+                       // Save a current focus actor
+                       mCurrentKeyFocusedBoxID = moveKeyboardBoxID;
+           }
        }
 
        kbdFocusManager.SetCurrentFocusActor(nextFocusActor);
+
+       return true;
 }
 
 int CMainMenuPage::GetFocusBoxByOrder(int nOrder)
@@ -1808,11 +1806,12 @@ int CMainMenuPage::GetFocusBoxByOrder(int nOrder)
        return -1;
 }
 
-void CMainMenuPage::OnActivated()
+bool CMainMenuPage::OnAccessibilityActivated()
 {
        Actor actor = Self();
        TapGesture tap;
        _OnTap(actor, tap);
+       return true;
 }
 
 bool CMainMenuPage::OnAccessibilityTouch(const TouchEvent& event)
index 0d6de1c..cb17919 100755 (executable)
@@ -103,13 +103,13 @@ public:
        bool IsContain(Actor currentFocusedActor);
        Actor GetFirstActor();
        Actor GetLastActor();
-       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
-       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
-       virtual void TabKeyClicked(bool clickedShift);
+       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       virtual bool TabKeyClicked(bool clickedShift);
        int GetFocusBoxByOrder(int nOrder);
 
        // for screen reader
-       virtual void OnActivated();
+       virtual bool OnAccessibilityActivated();
        virtual bool OnAccessibilityTouch(const TouchEvent& event);
 
        void SetBoxActionModeType(EBoxActionModeType eBoxActionModeType);
index 14380ee..f21ceec 100755 (executable)
@@ -286,19 +286,19 @@ Actor CMainMenuPage::GetLastActor()
        return GetImpl(*this).GetLastActor();
 }
 
-AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+AppsViewFocusDirection CMainMenuPage::GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).GetNextFocusDirection(currentFocusedActor, direction);
 }
 
-Actor CMainMenuPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuPage::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
 
-void CMainMenuPage::TabKeyClicked(bool clickedShift)
+bool CMainMenuPage::TabKeyClicked(bool clickedShift)
 {
-       GetImpl(*this).TabKeyClicked(clickedShift);
+       return GetImpl(*this).TabKeyClicked(clickedShift);
 }
 
 void CMainMenuPage::SetBoxActionModeType(EBoxActionModeType eBoxActionModeType)
index 27a4416..a600e31 100755 (executable)
@@ -111,9 +111,9 @@ public:
        bool IsContain(Actor currentFocusedActor);
        Actor GetFirstActor();
        Actor GetLastActor();
-       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
-       void TabKeyClicked(bool clickedShift);
+       AppsViewFocusDirection GetNextFocusDirection(Actor currentFocusedActor, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
+       bool TabKeyClicked(bool clickedShift);
 
        void SetBoxActionModeType(EBoxActionModeType eBoxActionModeType);
 public:
index cae460d..d8ae69b 100755 (executable)
@@ -469,7 +469,7 @@ void CMainMenuPresenter::ShowMainMenuView()
        m_ViewManager.ShowMenuView(TYPE_ALL_APPS);
 }
 
-Actor CMainMenuPresenter::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuPresenter::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return m_ViewManager.QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index 26529fb..92f7810 100755 (executable)
@@ -75,7 +75,7 @@ public:
        void ShowMainMenuView();
 
        // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
 private:
        void _Initialize();
index 5229bae..ab8a088 100755 (executable)
@@ -164,7 +164,7 @@ void CMainMenuViewManager::Initialize()
 
        ClusterHome3D::Accessibility::Get()->GetSignalFocusGroupChanged().Connect(this, &CMainMenuViewManager::_OnTTSFocusGroupChanged);
 
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        focusManager.FocusedActorActivatedSignal().Connect(this, &CMainMenuViewManager::_OnTTSFocusedActorActivated);
 
 }
@@ -2050,7 +2050,7 @@ void CMainMenuViewManager::_OnScreenViewTypeChanged(ScreenViewType eViewType)
 
 void CMainMenuViewManager::_OnTTSFocusedActorActivated(Actor aActivatedActor)
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
 
        int nFocusOrder = focusManager.GetFocusOrder(aActivatedActor);
        VIEWER_DBG("_OnTTSFocusedActorActivated[%d]", nFocusOrder);
@@ -2101,7 +2101,7 @@ void CMainMenuViewManager::_OnTTSFocusGroupChanged(int nFocusGroup)
 
 void CMainMenuViewManager::_UpdateScreenReader()
 {
-       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
        ClusterHome3D::Accessibility *cHomeAccessibility = ClusterHome3D::Accessibility::Get();
 
        unsigned int nFocusUpdateType = cHomeAccessibility->GetFocusUpdateType();
@@ -2182,8 +2182,8 @@ void CMainMenuViewManager::_UpdateScreenReader()
                        if (m_CUtilTextImgTitle)
                        {
                                focusManager.SetFocusOrder(m_CUtilTextImgTitle, BASE_FOCUS_ORDER_TITLE);
-                               focusManager.SetAccessibilityAttribute(m_CUtilTextImgTitle, Toolkit::FocusManager::ACCESSIBILITY_LABEL, m_CUtilTextImgTitle.GetText());
-                               focusManager.SetAccessibilityAttribute(m_CUtilTextImgTitle, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_COM_HEADER_TITLE"));
+                               focusManager.SetAccessibilityAttribute(m_CUtilTextImgTitle, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, m_CUtilTextImgTitle.GetText());
+                               focusManager.SetAccessibilityAttribute(m_CUtilTextImgTitle, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_COM_HEADER_TITLE"));
 
                                if (nFocusUpdateType == FOCUS_UPDATE_TYPE_RESET)
                                {
@@ -2196,14 +2196,14 @@ void CMainMenuViewManager::_UpdateScreenReader()
                        if (m_aTitleRightButton)
                        {
                                focusManager.SetFocusOrder(m_aTitleRightButton, BASE_FOCUS_ORDER_TITLE + 2);
-                               focusManager.SetAccessibilityAttribute(m_aTitleRightButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+                               focusManager.SetAccessibilityAttribute(m_aTitleRightButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
                        }
 
                        if (m_aTitleLeftButton)
                        {
                                focusManager.SetFocusOrder(m_aTitleLeftButton, BASE_FOCUS_ORDER_TITLE + 1);
-                               focusManager.SetAccessibilityAttribute(m_aTitleLeftButton, Toolkit::FocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_OPT_CREATE_FOLDER_OPT_TTS"));
-                               focusManager.SetAccessibilityAttribute(m_aTitleLeftButton, Toolkit::FocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
+                               focusManager.SetAccessibilityAttribute(m_aTitleLeftButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_LABEL, _("IDS_HS_OPT_CREATE_FOLDER_OPT_TTS"));
+                               focusManager.SetAccessibilityAttribute(m_aTitleLeftButton, Toolkit::AccessibilityFocusManager::ACCESSIBILITY_TRAIT, _("IDS_HS_BODY_BUTTON_T_TTS"));
                        }
                }
 
@@ -2554,6 +2554,9 @@ void CMainMenuViewManager::_OnFolderBoxAddApps(ClusterHome3D::CMainMenuBox& box)
 
        mFolderBox = box;
 
+       ClusterHome3D::CMainMenuFolderBox folderBox = ClusterHome3D::CMainMenuFolderBox::DownCast(mFolderBox);
+       mFolderBoxCount =  folderBox.GetFolderViewItemCount();
+
        m_eOldViewType = m_eViewType;
        ChangeMainMenuVeiwType(APPS_VIEW_ADD_APPS_TO_FOLDER);
        _UpdateTitleButtonText(_("IDS_MEMO_SK_ADD_ABB"));
@@ -2601,9 +2604,7 @@ void CMainMenuViewManager::_OnCheckboxEvent(ClusterHome3D::CMainMenuBox& box, bo
        char sSpeakBuf2[1024] = { 0, };
        int itemCount =0;
 
-       if( mFolderPopup )
-               itemCount =  mFolderPopup.GetFolderViewItemCount();
-       if( bChecked && m_nCheckBoxCount + itemCount >= FOLDER_PAGE_MAX_ITEMS )
+       if( bChecked && m_nCheckBoxCount + mFolderBoxCount >= FOLDER_PAGE_MAX_ITEMS )
        {
                int ret = notification_status_message_post(_("IDS_HS_POP_NOT_ENOUGH_SPACE"));
                if (ret != NOTIFICATION_ERROR_NONE)
@@ -3036,7 +3037,7 @@ void CMainMenuViewManager::AppLanguageChanged(void)
        HideAllCenterPopup();
 }
 
-Actor CMainMenuViewManager::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuViewManager::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        Actor nextFocusActor;
        if (m_bHomeScreenMenuPopupShowing)
@@ -3084,9 +3085,6 @@ Actor CMainMenuViewManager::QueryNextFocusActor(Actor currentFocusedActor, Actor
 
 void CMainMenuViewManager::TabKeyClicked(bool clickedShift)
 {
-       Toolkit::KeyboardFocusManager kbdFocusManager = Toolkit::KeyboardFocusManager::Get();
-       Actor currentFocusActor = kbdFocusManager.GetCurrentFocusActor();
-
        if (m_bHomeScreenMenuPopupShowing)
        {
                m_pHomeScreenMenuPopup.TabKeyClicked(clickedShift);
@@ -3120,32 +3118,6 @@ void CMainMenuViewManager::TabKeyClicked(bool clickedShift)
        {
                mMainMenuAppsView.TabKeyClicked(clickedShift);
 
-               if(mMainMenuAppsView.GetShowingFolderBox())
-                       return;
-
-               Actor nextFocusActor = kbdFocusManager.GetCurrentFocusActor();
-               if(currentFocusActor == nextFocusActor)
-               {
-                       TEST_DBG("Tab + Shift[%d]", clickedShift);
-
-                       if(clickedShift)
-                       {
-                       }
-                       else
-                       {
-                               if(m_ViewTitleBg.GetCurrentOpacity() == 1.0f)
-                               {
-                                       if(m_aTitleLeftButton.IsSensitive())
-                                       {
-                                               kbdFocusManager.SetCurrentFocusActor(m_aTitleLeftButton);
-                                       }
-                                       else if(m_aTitleRightButton.IsSensitive())
-                                       {
-                                               kbdFocusManager.SetCurrentFocusActor(m_aTitleRightButton);
-                                       }
-                               }
-                       }
-               }
        }
 }
 
@@ -3222,7 +3194,7 @@ void CMainMenuViewManager::AppResumed(void)
                if (CHomeScreenViewManager::GetInstance()->GetCurrentViewType() == APPS_SCREEN_VIEW)
                {
                        // clear focus
-                       Toolkit::FocusManager focusManager = Toolkit::FocusManager::Get();
+                       Toolkit::AccessibilityFocusManager focusManager = Toolkit::AccessibilityFocusManager::Get();
                        focusManager.ClearFocus();
 
                        if (m_eViewType == APPS_VIEW_MAIN_EDIT)
index fedc174..cae9e26 100755 (executable)
@@ -170,6 +170,7 @@ private:
        // Target folder
        int m_nDeleteFolderId;
        ClusterHome3D::CMainMenuBox mFolderBox;
+       int mFolderBoxCount;
        Timer m_MenuBoxShowTimer;
 
        // Box is on folder
@@ -256,7 +257,7 @@ public:
        void AppLanguageChanged(void);
 
     // Keyboard focus
-       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       virtual Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
        virtual void TabKeyClicked(bool clickedShift);
 
        void MenuKeyClicked(std::string keyName);
index 7f9e26e..9185b69 100755 (executable)
@@ -160,7 +160,7 @@ void CMainMenuViewManager::AppLanguageChanged(void)
        GetImpl(*this).AppLanguageChanged();
 }
 
-Actor CMainMenuViewManager::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction)
+Actor CMainMenuViewManager::QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction)
 {
        return GetImpl(*this).QueryNextFocusActor(currentFocusedActor, proposedActorToFocus, direction);
 }
index afa23ed..672ea1e 100755 (executable)
@@ -109,7 +109,7 @@ public:
        void AppLanguageChanged(void);
 
        // Keyboard focus
-       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocusNavigationDirection direction);
+       Actor QueryNextFocusActor(Actor currentFocusedActor, Actor proposedActorToFocus, Dali::Toolkit::Control::KeyboardFocus::Direction direction);
 
        // app paused
        void AppPaused(void);
index 8882ece..2a705e7 100755 (executable)
@@ -23,44 +23,27 @@ namespace ClusterHome3D
 {
        ImageActor CreateSolidColorActor( const Vector4& color, bool border, const Vector4& borderColor, const unsigned int borderSize )
        {
-       
-#ifdef TIZEN_3_0
                ImageActor itemActor =  ImageActor::New();
                /* make bg */
                Dali::Toolkit::Control control = Dali::Toolkit::Control::New();
                control.SetBackgroundColor(color);
                control.SetParentOrigin( ParentOrigin::CENTER );
                control.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
-               control.GetBackgroundActor().SetZ( 0.0f );
                itemActor.Add ( control );
-#else
-               ImageActor itemActor = Toolkit::CreateSolidColorActor( color );
-#endif
-
                return itemActor;
        }
        ImageActor CreateTestSolidColorActor()
        {
-#ifdef TIZEN_3_0
                ImageActor itemActor =  ImageActor::New();
                Vector4 color;
                Dali::Toolkit::Control control = Dali::Toolkit::Control::New();
                control.SetBackgroundColor(Vector4((float)(rand()%10)/10, (float)(rand()%10)/10, (float)(rand()%10)/10, 0.5f));
                control.SetParentOrigin( ParentOrigin::CENTER );
                control.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS);
-               control.GetBackgroundActor().SetZ( 0.0f );
                itemActor.Add ( control );
                itemActor.SetParentOrigin( ParentOrigin::CENTER );
                itemActor.SetAnchorPoint( AnchorPoint::CENTER );
                itemActor.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS);
-               
-#else
-               ImageActor itemActor = Toolkit::CreateSolidColorActor( Vector4((float)(rand()%10)/10, (float)(rand()%10)/10, (float)(rand()%10)/10, 0.5f) );
-               itemActor.SetParentOrigin( ParentOrigin::CENTER );
-               itemActor.SetAnchorPoint( AnchorPoint::CENTER );
-               itemActor.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS);
-#endif
-
                return itemActor;
        }
 }