idlehomescreen/widgetmanager/src/wmlistbox.cpp
changeset 5 c743ef5928ba
parent 4 4d54b72983ae
child 9 f966699dea19
equal deleted inserted replaced
4:4d54b72983ae 5:c743ef5928ba
   442 // ---------------------------------------------------------
   442 // ---------------------------------------------------------
   443 //
   443 //
   444 CWmListBox::~CWmListBox()
   444 CWmListBox::~CWmListBox()
   445     {
   445     {
   446     iWidgetDatas.ResetAndDestroy();
   446     iWidgetDatas.ResetAndDestroy();
   447     iTrashedData.ResetAndDestroy();
       
   448     }
   447     }
   449 
   448 
   450 // ---------------------------------------------------------
   449 // ---------------------------------------------------------
   451 // CWmListBox::ConstructL
   450 // CWmListBox::ConstructL
   452 // ---------------------------------------------------------
   451 // ---------------------------------------------------------
   515     // reorganise
   514     // reorganise
   516     TRAP_IGNORE(
   515     TRAP_IGNORE(
   517         AknListBoxUtils::HandleItemRemovalAndPositionHighlightL(
   516         AknListBoxUtils::HandleItemRemovalAndPositionHighlightL(
   518             this, realIndex, current ) );
   517             this, realIndex, current ) );
   519     
   518     
   520     // widgetlist changed notification comes too early before even
   519     // delete now
   521     // uninstall is completed. in wk04_2010 there is going to be fix 
   520     delete data;
   522     // available for this issue. add data object to trashed array so
   521     data = NULL;
   523     // that its not visible in list and is destroyed later.
       
   524     if ( data->IsUninstalling() && data->IsActive() )
       
   525         {
       
   526         iTrashedData.Append( data );
       
   527         }
       
   528     else
       
   529         {
       
   530         // delete now
       
   531         delete data;
       
   532         }
       
   533     }
   522     }
   534 
   523 
   535 // ---------------------------------------------------------
   524 // ---------------------------------------------------------
   536 // CWmListBox::RedrawItem
   525 // CWmListBox::RedrawItem
   537 // ---------------------------------------------------------
   526 // ---------------------------------------------------------