uiacceltk/hitchcock/ServerCore/Inc/alfbridge.h
changeset 29 ac3859d43844
parent 21 6ce30188c5bf
child 31 1b6909418757
--- a/uiacceltk/hitchcock/ServerCore/Inc/alfbridge.h	Fri May 14 02:53:35 2010 +0300
+++ b/uiacceltk/hitchcock/ServerCore/Inc/alfbridge.h	Tue May 25 17:55:19 2010 +0300
@@ -66,13 +66,15 @@
                         CHuiVisual* aTemporaryPresenterVisual,
                         TBool aIsLayout, 
                         TBool aHideWhenFinished,
-                        TBool aCanDestroyOrHideImmediately) 
+                        TBool aCanDestroyOrHideImmediately,
+                        TBool aIsFullScreenEffect) 
                 : iHandle(aHandle), 
                 iEffectedVisual(aEffectedVisual),
                 iTemporaryPresenterVisual(aTemporaryPresenterVisual),
                 iIsLayout(aIsLayout),
                 iHideWhenFinished(aHideWhenFinished),
-                iCanDestroyOrHideImmediately(aCanDestroyOrHideImmediately)
+                iCanDestroyOrHideImmediately(aCanDestroyOrHideImmediately),
+                iIsFullScreenEffect(aIsFullScreenEffect)
                         {
 //                        RDebug::Printf("TEffectCleanupStruct - 0x%x 0x%x, %d", iEffectedVisual, iTemporaryPresenterVisual, iIsLayout );
                         };
@@ -84,7 +86,9 @@
                 TBool iHideWhenFinished;
                 
                 TBool iCanDestroyOrHideImmediately;
-				
+
+                TBool iIsFullScreenEffect;
+                
 				// not own, unless iEffectedVisual has EShouldDestroy flag enabled
                 CHuiVisual* iEffectedVisual;
 				// owned
@@ -279,7 +283,15 @@
      * 
      */
     void GfxTriggerEndFullScreen(CFullScreenEffectState* aFullScreenEffectData);
-    
+
+    /**
+	 * UpdateSecondaryEffectL
+	 *
+	 * Resolve filename for two part effect that is used with slowly starting applications
+	 * 
+	 */
+    TBool UpdateSecondaryEffectL(const CFullScreenEffectState& aState);
+
    /*
 	*	GfxTriggerEffectWhenFullScreenDrawn
 	*
@@ -427,7 +439,7 @@
 	 *	@return	ETrue, 	if layout have been initialized succesfully for the effect
 	 			EFalse,	if any visuals have been removed. Effect should not be applied.
      */
-    TBool SetupEffectLayoutContainerL(TInt aHandle,CHuiLayout* aSourceLayout, TBool aIsExitEffect, TBool aCanDestroyOrHideImmediately);
+    TBool SetupEffectLayoutContainerL(TInt aHandle,CHuiLayout* aSourceLayout, TBool aIsFullScreenEffect, TBool aIsExitEffect, TBool aCanDestroyOrHideImmediately);
 
     /*
      *	AddEffectItemL
@@ -444,8 +456,10 @@
             CHuiControl* aEffectControl,
             TBool aInsertTemporaryVisual,
             TBool& aItemDestroyed,
+            TBool aIsFullScreenEffect,
             TBool aIsExitEffect = EFalse,
-            TBool aCanDestroyOrHideImmediately = EFalse);
+            TBool aCanDestroyOrHideImmediately = EFalse
+            );
             
 
     /*
@@ -457,6 +471,7 @@
             CHuiLayout* aTargetLayout,
             CHuiControl* aEffectControlGroup,
             TInt& aItemsDestroyed,
+            TBool aIsFullScreenEffect,
             TBool aAddLayout = ETrue,
             TBool aIsExitEffect = EFalse,
             TBool aCanDestroyOrHideImmediately = EFalse);
@@ -607,6 +622,15 @@
 
     void ShowWindowGroupControlGroupL(CHuiRoster& aRoster, CHuiControlGroup& aGroup, TInt aWhere, TInt aScreenNumber );
     
+	/**
+	 * HasActiveAlfContent
+	 *
+	 * Determine if the window group in question has active Alf visuals
+	 *
+	 *	@return 	ETrue, if active clients
+	 */
+    TBool HasActiveAlfContent( TInt aClientWgId );
+    
 private:
          
     /**
@@ -916,6 +940,8 @@
      */
     CFullScreenEffectState* iFullScreenEffectData;
     
+    CFullScreenEffectState* iSecondaryFullScreenEffectData;
+    
     /**
      * Control effect state.
      * Own.
@@ -925,10 +951,7 @@
     // these save the current full screen transition data
     // so that the correct transition can be ended from the callback
     // when the effect ends
-    TInt iLastFullScreenEffectWindowGroup;
-    TInt iLastFullScreenScreen;
-    TInt iLastAction;
-    TInt iLastEffectHandle;
+    
     CAlfEffectEndTimer* iEffectEndTimer;
     TBool iLayoutInitializedForExitEffect;