diff -r 8f67d927ea57 -r 83d2d132aa58 uiacceltk/hitchcock/AlfDecoderServerClient/src/alfcompositionclient.cpp --- a/uiacceltk/hitchcock/AlfDecoderServerClient/src/alfcompositionclient.cpp Fri Mar 19 09:43:21 2010 +0200 +++ b/uiacceltk/hitchcock/AlfDecoderServerClient/src/alfcompositionclient.cpp Fri Apr 16 15:56:24 2010 +0300 @@ -258,6 +258,11 @@ return; } + if (aEventType == KAlfCompositionLayoutSwitchComplete && iController) + { + iController->AlfBridgeCallback(KAlfCompositionLayoutSwitchComplete, NULL); + } + TInt* ptr = static_cast(aEventData); TInt target; @@ -386,7 +391,18 @@ iController->DeleteTarget(target); break; } - + + case KAlfCompositionTargetVisible: + { + iController->HideTarget(target, EFalse); + break; + } + + case KAlfCompositionTargetHidden: + { + iController->HideTarget(target, ETrue); + break; + } default: break; } @@ -813,6 +829,8 @@ TInt iCurrentBuffer; TRect iSurfaceRect; + + TInt iWaiterAoPriority; }; @@ -825,12 +843,26 @@ { CAlfCompositionPixelSource* me = new (ELeave) CAlfCompositionPixelSource(); CleanupStack::PushL(me); - me->ConstructL(aProvider, aWindow); + me->ConstructL(aProvider, CActive::EPriorityIdle, aWindow); CleanupStack::Pop(me); return me; } // --------------------------------------------------------------------------- +// CAlfCompositionPixelSource::NewL +// --------------------------------------------------------------------------- +// +EXPORT_C CAlfCompositionPixelSource* CAlfCompositionPixelSource::NewL(MAlfBufferProvider& aProvider, TInt aPriority, RWindow* aWindow) + { + CAlfCompositionPixelSource* me = new (ELeave) CAlfCompositionPixelSource(); + CleanupStack::PushL(me); + me->ConstructL(aProvider, aPriority, aWindow); + CleanupStack::Pop(me); + return me; + } + + +// --------------------------------------------------------------------------- // CAlfCompositionPixelSource::ActivateL // --------------------------------------------------------------------------- // @@ -862,7 +894,7 @@ { if( !iData->iSurfaceUpdateWaiter ) { - iData->iSurfaceUpdateWaiter = new (ELeave) CSurfaceUpdateCallback( *this, 0, CActive::EPriorityIdle ); + iData->iSurfaceUpdateWaiter = new (ELeave) CSurfaceUpdateCallback( *this, 0, iData->iWaiterAoPriority ); } iData->iSurfaceUpdateWaiter->SetActive(); @@ -950,9 +982,11 @@ // CAlfCompositionPixelSource::ConstructL // --------------------------------------------------------------------------- // -void CAlfCompositionPixelSource::ConstructL(MAlfBufferProvider& aProvider, RWindow* aWindow) +void CAlfCompositionPixelSource::ConstructL(MAlfBufferProvider& aProvider, TInt aPriority, RWindow* aWindow) { iData = CAlfCompositionPixelSourceData::NewL( aProvider ); + iData->iWaiterAoPriority = aPriority; + TInt screenNumber = KErrNotFound; if( aWindow ) {