Fixed PLM-P130611-6882
authorMinSung Jin <minsung.jin@samsung.com>
Fri, 14 Jun 2013 06:36:23 +0000 (15:36 +0900)
committerMinSung Jin <minsung.jin@samsung.com>
Fri, 14 Jun 2013 06:37:13 +0000 (15:37 +0900)
Change-Id: Iaecdabf7072f0c58d2a584f616dc4769901dee78
Signed-off-by: MinSung Jin <minsung.jin@samsung.com>
src/ui/controls/FUiCtrl_TableViewItem.cpp
src/ui/controls/FUiCtrl_TableViewPresenter.cpp

index d3e901c..8703f5c 100644 (file)
@@ -4772,6 +4772,22 @@ _TableViewItem::OnKeyPressed(const _Control& source, const _KeyInfo& keyInfo)
                break;
 
        default:
+               if (__itemSelected)
+               {
+                       __annexOnOffHandlerMoved = false;
+                       __itemTouchMoved = false;
+
+                       __itemSelected = false;
+                       __drawingStatus = TABLE_VIEW_ITEM_DRAWING_STATUS_NORMAL;
+
+                       if (__annexStyle == TABLE_VIEW_ANNEX_STYLE_DETAILED)
+                       {
+                               __isSelectedDetailButton = false;
+                       }
+
+                       SetItemChanged(true);
+                       Invalidate();
+               }
                return false;
        }
 
index d020495..5ee77e6 100644 (file)
@@ -5265,7 +5265,7 @@ _TableViewPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyInf
                         if (pItem != null)
                         {
                                 pItem->GetItemIndex(itemPos.groupIndex, itemPos.itemIndex);
-                                if (GetPreviousItemPosition(itemPos, itemPos))
+                                while (GetPreviousItemPosition(itemPos, itemPos))
                                 {
                                         if (__pTableView->GetTableViewStyle() == TABLE_VIEW_STYLE_SIMPLE)
                                         {
@@ -5292,15 +5292,13 @@ _TableViewPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyInf
                                         {
                                                 ScrollToItem(itemPos.groupIndex, itemPos.itemIndex, TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_BOTTOM);
                                         }
-                                }
-                                else
-                                {
-                                        if (__pTableView != null)
+
+                                        if (pItem->GetEnableState())
                                         {
-                                                __pTableView->SetFocused(true);
-                                                __pTableView->DrawFocus();
+                                                pItem->SetFocused(true);
+                                                pItem->DrawFocus();
+                                                break;
                                         }
-                                        break;
                                 }
                         }
                         else
@@ -5310,16 +5308,6 @@ _TableViewPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyInf
                                 pParentControl->DrawFocus();
                                 break;
                         }
-
-                        pItem = FindItem(itemPos);
-                        if (pItem != null)
-                        {
-                                if (pItem->GetEnableState())
-                                {
-                                        pItem->SetFocused(true);
-                                        pItem->DrawFocus();
-                                }
-                        }
                 }
                 break;
 
@@ -5330,7 +5318,7 @@ _TableViewPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyInf
                         if (pItem != null)
                         {
                                 pItem->GetItemIndex(itemPos.groupIndex, itemPos.itemIndex);
-                                if (GetNextItemPosition(itemPos, itemPos))
+                                while (GetNextItemPosition(itemPos, itemPos))
                                 {
                                         if (__pTableView->GetTableViewStyle() == TABLE_VIEW_STYLE_SIMPLE && itemPos.itemIndex == -1)
                                         {
@@ -5342,15 +5330,13 @@ _TableViewPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyInf
                                         {
                                                 ScrollToItem(itemPos.groupIndex, itemPos.itemIndex, TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_TOP);
                                         }
-                                }
-                                else
-                                {
-                                        if (__pTableView != null)
+
+                                        if (pItem->GetEnableState())
                                         {
-                                                __pTableView->SetFocused(true);
-                                                __pTableView->DrawFocus();
+                                                pItem->SetFocused(true);
+                                                pItem->DrawFocus();
+                                                break;
                                         }
-                                        break;
                                 }
                         }
                         else
@@ -5360,16 +5346,6 @@ _TableViewPresenter::OnKeyPressed(const _Control& source, const _KeyInfo& keyInf
                                 pParentControl->DrawFocus();
                                 break;
                         }
-
-                        pItem = FindItem(itemPos);
-                        if (pItem != null)
-                        {
-                                if (pItem->GetEnableState())
-                                {
-                                        pItem->SetFocused(true);
-                                        pItem->DrawFocus();
-                                }
-                        }
                 }
                 break;