--- 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 <bldvariant.hrh>
#include <calslbs.h>
#include <eikclbd.h>
+#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() );