diff -r c743ef5928ba -r f966699dea19 idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h --- a/idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h Tue Feb 02 00:04:13 2010 +0200 +++ b/idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h Fri Feb 19 22:42:37 2010 +0200 @@ -29,6 +29,7 @@ // Forward declarations class CHsContentControlEComListener; class CHsContentControlUninstallMonitor; +class CXnAppUiAdapter; /** * Content control UI base class @@ -49,7 +50,7 @@ /** * Two-phased constructor. */ - IMPORT_C static CHsContentControlFactory* NewL(); + IMPORT_C static CHsContentControlFactory* NewL( CXnAppUiAdapter& aAdapter ); /** * Destructor. @@ -70,17 +71,16 @@ * @param aPkgUid The package UID which is being uninstalled. */ void HandleUninstallEvent( const TUid& aPkgUid ); - + private: // Constructors /** * Constructor */ - CHsContentControlFactory(); + CHsContentControlFactory( CXnAppUiAdapter& aAdapter ); /** Second phase constructor */ void ConstructL(); - public: // New functions /** * @@ -89,6 +89,12 @@ const TDesC8& aControllerType ); private: + + /** + * Deregisters/Removes/Deletes plugin's views from AppUi. + */ + void ReleaseHsCcUi( CHsContentControlUi* aHsContentControlUi ); + /** * Finds and returns loaded ContentControlUi object from array. */ @@ -119,6 +125,11 @@ private: // Data /** + * Reference to XnAppUiAdapter. + */ + CXnAppUiAdapter& iAdapter; + + /** * An array of type CHsContentControlUi ( Owned ). */ RPointerArray< CHsContentControlUi > iHsContentControlUis;