--- a/uifw/AvKon/src/AknViewAppUi.cpp Wed Sep 15 12:29:17 2010 +0300
+++ b/uifw/AvKon/src/AknViewAppUi.cpp Wed Oct 13 14:50:15 2010 +0300
@@ -99,13 +99,6 @@
TInt iFlags;
#endif // RD_SPLIT_VIEW
TBool iUseDefaultScreenClearer;
-
- /**
- * Used to control whether or not the default screen clearer
- * is used when launching the application as embedded. By default the
- * clearer isn't used for embedded applications.
- */
- TBool iUseDefaultScreenClearerInEmbeddedLaunch;
};
// ============================ MEMBER FUNCTIONS ===============================
@@ -246,12 +239,8 @@
if ( iEikonEnv->RootWin().OrdinalPosition() == 0 &&
iExtension->iUseDefaultScreenClearer )
{
- if ( !iEikonEnv->StartedAsServerApp() ||
- iExtension->iUseDefaultScreenClearerInEmbeddedLaunch )
+ if ( !iEikonEnv->StartedAsServerApp() )
{
- // Use transparent screen clearer for embedded applications,
- // except for when application wants to use the normal
- // screen clearer.
iClearer = CAknLocalScreenClearer::NewL( ETrue );
}
else
@@ -280,10 +269,10 @@
CAknAppUi::CurrentFixedToolbar()->SetToolbarVisibility( EFalse );
}
- delete iClearer;
- delete iShutter;
- delete iActivationTick;
-
+ delete iClearer;
+ delete iShutter;
+ delete iActivationTick;
+
if ( iActivationQueue )
{
iActivationQueue->ResetAndDestroy();
@@ -1025,16 +1014,18 @@
TRAP_IGNORE( iExtension = CAknViewAppUiExtension::NewL() );
}
- // Update the flags
+ // Update flag
if ( iExtension )
{
iExtension->iUseDefaultScreenClearer = aEnable;
- iExtension->iUseDefaultScreenClearerInEmbeddedLaunch = aEnable;
}
- // Delete the clearer if it already exists but isn't required anymore.
- // The clearer is created when needed on BaseConstructL.
- if ( !aEnable && iClearer )
+ // Create/delete iClearer if required
+ if ( aEnable && !iClearer )
+ {
+ TRAP_IGNORE( iClearer = CAknLocalScreenClearer::NewL( EFalse ) );
+ }
+ else if ( !aEnable && iClearer )
{
delete iClearer;
iClearer = NULL;