diff -r 854ebc17f64b -r 3b67655da2cc gssettingsuis/Gs/GSFramework/src/GSParentContainer.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSParentContainer.cpp Wed Jun 09 10:00:07 2010 +0300 +++ b/gssettingsuis/Gs/GSFramework/src/GSParentContainer.cpp Mon Jun 21 15:59:17 2010 +0300 @@ -35,6 +35,7 @@ #include #include #include +#include "GsContainerExt.h" //For CGsContainerExt //CONSTANTS const TInt KGSPluginArrayInitSize = 10; @@ -62,7 +63,8 @@ iParentPlugin = aParentPlugin; CGSBaseDocument* doc = static_cast< CGSBaseDocument* >( iAppUi->Document() ); - iGSWatchDog = doc->WatchDog(); + iExt = CGsContainerExt::NewL(); + iExt->iGSWatchDog = doc->WatchDog(); // Initialize the array containing pointers to plugins that are actually // displayed in lbx. @@ -106,6 +108,7 @@ { delete iListBox; } + delete iExt; __GSLOGSTRING( "[CGSParentContainer] ~CGSParentContainer()-|" ); } @@ -157,7 +160,7 @@ // -> A good place to use quarantine to catch panicking plugins in // any of these calls. #ifdef GS_ENABLE_WATCH_DOG - iGSWatchDog->QuarantineL( plugin->Id() ); + iExt->iGSWatchDog->QuarantineL( plugin->Id() ); #endif if( plugin->Visible() ) @@ -168,7 +171,7 @@ iconCounter ); } #ifdef GS_ENABLE_WATCH_DOG - iGSWatchDog->RemoveFromQuarantineL( plugin->Id() ); + iExt->iGSWatchDog->RemoveFromQuarantineL( plugin->Id() ); #endif } @@ -539,6 +542,11 @@ break; } + if(iExt->iDblClickPreventer->IsActive()) + { + break; + } + iExt->iDblClickPreventer->Start(); CGSPluginInterface* selectedPlugin = iVisiblePlugins->operator[]( aListBox->CurrentItemIndex() );