diff -r 0b3699f6c654 -r e36b2f4799c0 contentstorage/casrv/caappscanner/src/casrvappscanner.cpp --- a/contentstorage/casrv/caappscanner/src/casrvappscanner.cpp Fri Sep 17 08:32:18 2010 +0300 +++ b/contentstorage/casrv/caappscanner/src/casrvappscanner.cpp Mon Oct 04 00:38:31 2010 +0300 @@ -876,7 +876,26 @@ changed = SetCWRTAppL( aEntry ) || changed; } } + + TApaAppCapabilityBuf appCap; + TInt screenNumber = 0; + + User::LeaveIfError( iApaLsSession.GetAppCapability + ( appCap, info->iUid ) ); + User::LeaveIfError( iApaLsSession.GetDefaultScreenNumber + ( screenNumber, info->iUid ) ); + + const TBool hidden = appCap().iAppIsHidden || screenNumber != 0; + + const TBool visible = aEntry->GetFlags() & EVisible; + + if ( hidden && visible ) + { + changed = ETrue; + aEntry->SetFlags(aEntry->GetFlags() & ~EVisible); + } } + CleanupStack::PopAndDestroy( info ); return changed; } @@ -1259,3 +1278,4 @@ } return updated; } +