uifw/AvKon/src/AknViewAppUi.cpp
branchRCL_3
changeset 72 a5e7a4f63858
parent 64 85902f042028
--- 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;