equal
deleted
inserted
replaced
72 TInt iScreenId; |
72 TInt iScreenId; |
73 |
73 |
74 RPointerArray<CAlfWindow> iWindows; |
74 RPointerArray<CAlfWindow> iWindows; |
75 RArray<TPluginInfo> iPlugins; |
75 RArray<TPluginInfo> iPlugins; |
76 CAlfHierarchyModel* iTree; |
76 CAlfHierarchyModel* iTree; |
77 |
|
78 RPointerArray<CAlfWindow> iChangedWindows; |
|
79 }; |
77 }; |
80 |
78 |
81 // --------------------------------------------------------------------------- |
79 // --------------------------------------------------------------------------- |
82 // FindPlugin |
80 // FindPlugin |
83 // --------------------------------------------------------------------------- |
81 // --------------------------------------------------------------------------- |
438 // ContentReady |
436 // ContentReady |
439 // --------------------------------------------------------------------------- |
437 // --------------------------------------------------------------------------- |
440 // |
438 // |
441 void CAlfWindowManager::ContentReady(CAlfWindow& aWindow, CAlfWindowBuffer* aOutBuffer) |
439 void CAlfWindowManager::ContentReady(CAlfWindow& aWindow, CAlfWindowBuffer* aOutBuffer) |
442 { |
440 { |
443 //ASSERT(iData->iChangedWindows.Find(&aWindow) == KErrNotFound); // no plugin should produce more frames |
|
444 // than actually bound to scene |
|
445 iData->iChangedWindows.Append(&aWindow); |
|
446 |
|
447 if(!aWindow.IsInsertedToScene()) |
441 if(!aWindow.IsInsertedToScene()) |
448 { |
442 { |
449 TRAPD( err, BindWindowToHitchL(&aWindow, this) ); |
443 TRAPD( err, BindWindowToHitchL(&aWindow, this) ); |
450 if (err) |
444 if (err) |
451 { |
445 { |
646 // PrepareNewFrame |
640 // PrepareNewFrame |
647 // --------------------------------------------------------------------------- |
641 // --------------------------------------------------------------------------- |
648 // |
642 // |
649 void CAlfWindowManager::PrepareNewFrame(TUint aEstimatedInterval) |
643 void CAlfWindowManager::PrepareNewFrame(TUint aEstimatedInterval) |
650 { |
644 { |
651 iData->iChangedWindows.Reset(); |
|
652 for (TInt i = iData->iPlugins.Count()-1; i >= 0 ; i--) |
645 for (TInt i = iData->iPlugins.Count()-1; i >= 0 ; i--) |
653 { |
646 { |
654 TRAP_IGNORE(iData->iPlugins[i].iPlugin->PrepareFrameL(aEstimatedInterval)); |
647 TRAP_IGNORE(iData->iPlugins[i].iPlugin->PrepareFrameL(aEstimatedInterval)); |
655 // for now, just ignore error. When collecting complete frames, we could use this info though |
648 // for now, just ignore error. When collecting complete frames, we could use this info though |
656 } |
649 } |