--- 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;