taskswitcher/contextengine/tsfswserver/engine/src/tsfswdatalist.cpp
branchRCL_3
changeset 88 3321d3e205b6
parent 83 5456b4e8b3a8
child 102 ba63c83f4716
--- a/taskswitcher/contextengine/tsfswserver/engine/src/tsfswdatalist.cpp	Wed Sep 01 12:32:46 2010 +0100
+++ b/taskswitcher/contextengine/tsfswserver/engine/src/tsfswdatalist.cpp	Tue Sep 14 20:58:58 2010 +0300
@@ -737,6 +737,10 @@
         if ( (iData[i]->Widget() == aConsiderWidgets) &&
             !CheckIfExists(*iData[i], aListToFit) )
             {
+            if( aConsiderWidgets )
+                {
+                RemoveScreenshot( iData[i]->AppUid().iUid );
+                }
             delete iData[i];
             iData.Remove(i);
             changed = ETrue;
@@ -831,5 +835,29 @@
     return changed;
     }
 
+// --------------------------------------------------------------------------
+// CTsFswDataList::RemoveScreenshotFromParent
+// --------------------------------------------------------------------------
+//
+void CTsFswDataList::RemoveHiddenAppsScrenshotsL()
+    {
+    RArray<TInt> hiddenWgIds;
+    THashMapIter<TInt, CFbsBitmap*> iter( iScreenshots );
+    while ( const TInt* wgIdkey = iter.NextKey() )
+        {
+        TInt wgId = *wgIdkey;
+        TBool hidden = HiddenApps()->IsHiddenL( AppUidForWgIdL( wgId),
+                iWsSession, wgId );
+        if( hidden )
+            {
+            hiddenWgIds.Append( wgId );
+            }
+        }
+    for ( TInt i = 0; i < hiddenWgIds.Count(); i++)
+        {
+        RemoveScreenshot( hiddenWgIds[i] );
+        }
+    hiddenWgIds.Reset();
+    }
 
 // end of file