mpxplugins/viewplugins/views/addtracksdialog/src/mpxaddtracksdialog.cpp
changeset 2 b70d77332e66
parent 0 ff3acec5bc43
child 5 2a40e88564c8
--- a/mpxplugins/viewplugins/views/addtracksdialog/src/mpxaddtracksdialog.cpp	Thu Jan 07 12:45:53 2010 +0200
+++ b/mpxplugins/viewplugins/views/addtracksdialog/src/mpxaddtracksdialog.cpp	Mon Jan 18 20:18:06 2010 +0200
@@ -590,12 +590,11 @@
 
     CAknFilteredTextListBoxModel* lbxModel =
         static_cast<CAknFilteredTextListBoxModel*>( iListBox->Model() );
-    CAknSearchField* tempSearchField =
-        static_cast<CAknSearchField*>( lbxModel->Filter()->FindBox() );
+    CAknSearchField* findBox = FindBox();
     lbxModel->Filter()->SetSearchField( NULL );//for find the items
     // Update item array
     iLbxFilterItems->HandleItemArrayChangeL();
-    lbxModel->Filter()->SetSearchField( tempSearchField );// for laylout of list
+    lbxModel->Filter()->SetSearchField( findBox );// for laylout of list
 
     TInt itemCount = CurrentListItemCount();
     if ( itemCount )
@@ -1508,9 +1507,13 @@
             TRAP_IGNORE( findBox->ResetL() );
             iListBox->SetFocus( ETrue );
             
+            CAknFilteredTextListBoxModel* lbxModel =
+                static_cast<CAknFilteredTextListBoxModel*>( iListBox->Model() );
+            lbxModel->Filter()->SetSearchField( findBox );// for laylout of list
             TRect mainPane;
             AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, mainPane );
             SetSizeAndPosition( mainPane.Size() );
+            DrawDeferred();
             break;
             }
         default:
@@ -1537,6 +1540,10 @@
     TKeyResponse res = EKeyWasNotConsumed;
     TBool updateCBA = EFalse;
     CAknSearchField* findbox = FindBox();
+    
+    CAknFilteredTextListBoxModel* lbxModel =
+        static_cast<CAknFilteredTextListBoxModel*>( iListBox->Model() );
+    lbxModel->Filter()->SetSearchField( NULL );//for find the items
 
     if ( aType == EEventKey )
         {
@@ -1647,9 +1654,12 @@
                     TRAP_IGNORE( findBox->ResetL() );
                     iListBox->SetFocus( ETrue );
                     
+                    lbxModel->Filter()->SetSearchField( findBox );// for laylout of list
+                    
                     TRect mainPane;
                     AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, mainPane );
                     SetSizeAndPosition( mainPane.Size() );
+                    iListBox->DrawDeferred();
                     res = EKeyWasConsumed;
                     }
                 else
@@ -1687,9 +1697,14 @@
 
     if ( aType == KEikDynamicLayoutVariantSwitch )
         {
-        TRect rect;
-        AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, rect );
-        SetRect( rect );
+        CAknSearchField* findBox = FindBox();    
+        CAknFilteredTextListBoxModel* lbxModel =
+            static_cast<CAknFilteredTextListBoxModel*>( iListBox->Model() );
+        lbxModel->Filter()->SetSearchField( findBox );// for laylout of list
+
+        TRect mainPane;
+        AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, mainPane );
+        SetSizeAndPosition( mainPane.Size() );
         }
 
     if ( aType == KAknsMessageSkinChange )