Fixed TDIS-4969
authorSangYong Lee <sangyongim.lee@samsung.com>
Wed, 22 May 2013 05:48:14 +0000 (14:48 +0900)
committerSangYong Lee <sangyongim.lee@samsung.com>
Thu, 23 May 2013 07:02:33 +0000 (16:02 +0900)
Change-Id: Ie909ad6242a4686b2e804f818beaf63a41b15eef
Signed-off-by: SangYong Lee <sangyongim.lee@samsung.com>
src/ui/controls/FUiCtrl_TableViewPresenter.cpp

index ead14fc..bd06029 100644 (file)
@@ -398,6 +398,7 @@ _TableViewPresenter::RefreshTableView(int groupIndex, int itemIndex, TableViewRe
        TableViewItemTag topDrawnItemPos = {-1, -1};
        TableViewItemTag refreshItemPos = {groupIndex, itemIndex};
        float prevScrollAreaHeight = GetScrollAreaBounds().height;
+       float prevScrollPosition = GetScrollPosition();
 
        GetTopDrawnItem(topDrawnItemPos);
 
@@ -548,14 +549,19 @@ _TableViewPresenter::RefreshTableView(int groupIndex, int itemIndex, TableViewRe
                break;
        }
 
+       __lockLoadItemWithScroll = true;
+
        AdjustClientAreaBounds(true);
 
+       __lockLoadItemWithScroll = false;
+
        if ((topDrawnItemPos.groupIndex > refreshItemPos.groupIndex)
                ||((topDrawnItemPos.groupIndex == refreshItemPos.groupIndex)&&(topDrawnItemPos.itemIndex > refreshItemPos.itemIndex)))
        {
                RefreshItemLayout(topDrawnItemPos, refreshItemPos, type, false);
 
-               float newScrollPosition = GetScrollPosition() - (prevScrollAreaHeight - GetScrollAreaBounds().height);
+               float newScrollPosition = prevScrollPosition + (prevScrollAreaHeight - GetScrollAreaBounds().height);
+
                SetScrollPosition(newScrollPosition, false);
        }
        else