Retain Focus after UpdateTableView is called from App
authorkatpaga.a <katpaga.a@samsung.com>
Mon, 16 Sep 2013 12:42:27 +0000 (18:12 +0530)
committerkatpaga.a <katpaga.a@samsung.com>
Mon, 23 Sep 2013 04:39:07 +0000 (10:09 +0530)
Change-Id: I3e449e98fdeae70b8a01f47bbc910858c6ec2e87
Signed-off-by: katpaga.a <katpaga.a@samsung.com>
src/ui/controls/FUiCtrl_GroupedListViewImpl.cpp
src/ui/controls/FUiCtrl_ListViewImpl.cpp
src/ui/controls/FUiCtrl_TableView.cpp
src/ui/controls/FUiCtrl_TableViewPresenter.cpp
src/ui/inc/FUiCtrl_GroupedListViewImpl.h
src/ui/inc/FUiCtrl_ListViewImpl.h
src/ui/inc/FUiCtrl_TableView.h
src/ui/inc/FUiCtrl_TableViewPresenter.h

index 4193d4a..af251b0 100644 (file)
@@ -1243,11 +1243,11 @@ _GroupedListViewImpl::RefreshList(int groupIndex, int itemIndex, int elementId)
 }
 
 result
-_GroupedListViewImpl::UpdateList(bool isRestoreFocus)
+_GroupedListViewImpl::UpdateList(bool isRestoreAnnexFocusValue)
 {
        __needReloadItems = true;
 
-       result r = GetCore().UpdateTableView(isRestoreFocus);
+       result r = GetCore().UpdateTableView(isRestoreAnnexFocusValue);
 
        CheckEmptyListShowState();
 
@@ -1968,7 +1968,6 @@ _GroupedListViewImpl::OnBoundsChanged(void)
                if (GetCore().IsTableViewFocused() && GetCore().IsFocusModeStateEnabled()
                                && GetCore().GetRootWindow() && GetCore().GetRootWindow()->IsActivated())
                {
-                       GetCore().RestoreFocus(true);
                        UpdateList(true);
                }
                else
index 4f0251b..1e22988 100644 (file)
@@ -1215,11 +1215,11 @@ _ListViewImpl::RefreshList(int index, int elementId)
 }
 
 result
-_ListViewImpl::UpdateList(bool isRestoreFocus)
+_ListViewImpl::UpdateList(bool isRestoreAnnexFocusValue)
 {
        __needReloadItems = true;
 
-       result r = GetCore().UpdateTableView(isRestoreFocus);
+       result r = GetCore().UpdateTableView(isRestoreAnnexFocusValue);
 
        CheckEmptyListShowState();
 
@@ -1823,7 +1823,6 @@ _ListViewImpl::OnBoundsChanged(void)
                if (GetCore().IsTableViewFocused() && GetCore().IsFocusModeStateEnabled()
                                && GetCore().GetRootWindow() && GetCore().GetRootWindow()->IsActivated())
                {
-                       GetCore().RestoreFocus(true);
                        UpdateList(true);
                }
                else
index b597d63..ce4af37 100644 (file)
@@ -780,13 +780,13 @@ _TableView::RefreshAllItems(void)
 
 
 result
-_TableView::UpdateTableView(bool isRestoreFocus)
+_TableView::UpdateTableView(bool isRestoreAnnexFocusValue)
 {
        if (IsOnProcessing())
        {
                return E_INVALID_OPERATION;
        }
-       return __pTableViewPresenter->UpdateTableView(isRestoreFocus);
+       return __pTableViewPresenter->UpdateTableView(isRestoreAnnexFocusValue);
 }
 
 result
index 0dfa165..db8968d 100644 (file)
@@ -638,14 +638,24 @@ _TableViewPresenter::RefreshAllItems(void)
 }
 
 result
-_TableViewPresenter::UpdateTableView(bool isRestoreFocus)
+_TableViewPresenter::UpdateTableView(bool isRestoreAnnexFocusValue)
 {
-       if (!isRestoreFocus)
+       if ((__pTableView != null) && __pTableView->IsTableViewFocused() && __pTableView->IsFocusModeStateEnabled()
+                               && __pTableView->GetRootWindow() && __pTableView->GetRootWindow()->IsActivated())
+       {
+               __isRestoreFocus = true;
+       }
+
+       if (!__isRestoreFocus)
        {
-               __isTableViewFocused = false;
                __focusItemTag.groupIndex = -1;
                __focusItemTag.itemIndex = -1;
-               __isRestoreFocus = false;
+               __isTableViewFocused = false;
+               __isAnnexFocused = false;
+       }
+
+       if (!isRestoreAnnexFocusValue)
+       {
                __isAnnexFocused = false;
        }
 
index 3059d5a..bac140d 100644 (file)
@@ -128,7 +128,7 @@ public:
 
        result RefreshList(int groupIndex, int itemIndex, int elementId);
 
-       result UpdateList(bool isRestoreFocus = false);
+       result UpdateList(bool isRestoreAnnexFocusValue = false);
 
        result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& groupIndex, int& itemIndex) const;
 
index a725918..2ffe3e3 100644 (file)
@@ -125,7 +125,7 @@ public:
 
        result RefreshList(int index, int elementId);
 
-       result UpdateList(bool isRestoreFocus = false);
+       result UpdateList(bool isRestoreAnnexFocusValue = false);
 
        int GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position) const;
 
index daabc48..37e89d7 100644 (file)
@@ -151,7 +151,7 @@ public:
 
        result RefreshTableView(int groupIndex, int itemIndex, TableViewRefreshType type, bool animation = true);
        result RefreshAllItems(void);
-       result UpdateTableView(bool isRestoreFocus = false);
+       result UpdateTableView(bool isRestoreAnnexFocusValue = false);
 
        result GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& groupIndex, int& itemIndex) const;
        result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& groupIndex, int& itemIndex) const;
index d0a0a17..015b724 100644 (file)
@@ -221,7 +221,7 @@ public:
 
        result RefreshTableView(int groupIndex, int itemIndex, TableViewRefreshType type, bool animation);
        result RefreshAllItems(void);
-       result UpdateTableView(bool isRestoreFocus);
+       result UpdateTableView(bool isRestoreAnnexFocusValue);
 
        result GetItemIndexFromPosition(const Tizen::Graphics::FloatPoint& position, int& groupIndex, int& itemIndex) const;
        result GetItemFromPosition(const Tizen::Graphics::FloatPoint& position, TableViewItemTag& itemPos) const;