javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/swtlistview.cpp
branchRCL_3
changeset 60 6c158198356e
parent 34 71c436fe3ce0
--- a/javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/swtlistview.cpp	Thu Jul 15 18:31:06 2010 +0300
+++ b/javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/swtlistview.cpp	Thu Aug 19 09:48:13 2010 +0300
@@ -239,7 +239,7 @@
 
         iStylusPopupUnmarkAll = CSwtMenuItem::NewL(iDisplay, NULL, *iStylusPopupMenu, 1, 0, EAknUnmarkAll);
         iStylusPopupUnmarkAll->SetTextL(iMenuItemUnmarkAll->Text());
-#endif //RD_SCALABLE_UI_V2        
+#endif //RD_SCALABLE_UI_V2
     }
 
     iOldSelectionArray = new(ELeave) CArrayFixFlat<TInt>(2);
@@ -854,11 +854,11 @@
     const TInt refImgCount = iRefImages.Count();
     if (refImgCount > aPos)
     {
-        iRefImages.Insert(refImg, aPos);
+        iRefImages.InsertL(refImg, aPos);
     }
     else
     {
-        iRefImages.Append(refImg);
+        iRefImages.AppendL(refImg);
     }
 
 #ifdef DEBUG_CHECK_IMAGES
@@ -1350,6 +1350,11 @@
         CCoeControl::HandleResourceChange(aType);
         SizeChangedL();
     }
+    else if (aType == KEikMessageUnfadeWindows
+             || aType == KEikMessageWindowsFadeChange)
+    {
+        CCoeControl::HandleResourceChange(aType);
+    }
     else
     {
         CCoeControl::HandleResourceChange(aType);
@@ -1430,14 +1435,14 @@
             iMenuItemUnmarkAll->SetEnabled(EFalse);
 #ifdef RD_SCALABLE_UI_V2
             iStylusPopupUnmarkAll->SetEnabled(EFalse);
-#endif //RD_SCALABLE_UI_V2            
+#endif //RD_SCALABLE_UI_V2
         }
         else
         {
             iMenuItemUnmarkAll->SetEnabled(ETrue);
 #ifdef RD_SCALABLE_UI_V2
             iStylusPopupUnmarkAll->SetEnabled(ETrue);
-#endif //RD_SCALABLE_UI_V2                            
+#endif //RD_SCALABLE_UI_V2
         }
 
         if (GetGridView()->SelectionIndexes()->Count() == GetGridModel()->NumberOfItems())
@@ -1445,14 +1450,14 @@
             iMenuItemMarkAll->SetEnabled(EFalse);
 #ifdef RD_SCALABLE_UI_V2
             iStylusPopupMarkAll->SetEnabled(EFalse);
-#endif //RD_SCALABLE_UI_V2                        
+#endif //RD_SCALABLE_UI_V2
         }
         else
         {
             iMenuItemMarkAll->SetEnabled(ETrue);
 #ifdef RD_SCALABLE_UI_V2
             iStylusPopupMarkAll->SetEnabled(ETrue);
-#endif //RD_SCALABLE_UI_V2                                    
+#endif //RD_SCALABLE_UI_V2
         }
     }
 }
@@ -1541,7 +1546,7 @@
     {
         iStylusPopupMenu->Dispose();
     }
-#endif //RD_SCALABLE_UI_V2    
+#endif //RD_SCALABLE_UI_V2
 
     delete iMarkString;
     delete iUnmarkString;
@@ -3659,6 +3664,32 @@
 }
 #endif //RD_JAVA_S60_RELEASE_9_2
 
+TInt CSwtListView::FocusBackgroundPolicy() const
+{
+#ifdef RD_JAVA_S60_RELEASE_9_2
+    return ENoFocusBackgroundInCaptionedControl;
+#else
+    return EDefaultFocusBackground;
+#endif // RD_JAVA_S60_RELEASE_9_2
+}
+
+void CSwtListView::PrepareForTraverse()
+{
+    ASSERT(iGrid);
+    ASSERT(iGrid->View());
+
+#ifdef RD_JAVA_S60_RELEASE_9_2
+    // AvKon enables highlight only when key event is recieved.
+    // When traversing, no key event is sent to AvKon, so we
+    // have to enable highlight by ourselves.
+    CListItemDrawer* itemDrawer = iGrid->View()->ItemDrawer();
+    if (itemDrawer)
+    {
+        itemDrawer->ClearFlags(CListItemDrawer::ESingleClickDisabledHighlight);
+    }
+#endif //RD_JAVA_S60_RELEASE_9_2
+}
+
 #ifdef RD_JAVA_ADVANCED_TACTILE_FEEDBACK
 void CSwtListView::DoControlSpecificFeedback(
     const TBool& aFirstTap,