browserutilities/browserdialogsprovider/Src/BrowserDialogsProvider.cpp
changeset 37 cb62a4f66ebe
parent 36 0ed94ceaa377
child 59 1f3c3f2f5b0a
child 65 5bfc169077b2
--- a/browserutilities/browserdialogsprovider/Src/BrowserDialogsProvider.cpp	Thu Dec 17 09:20:16 2009 +0200
+++ b/browserutilities/browserdialogsprovider/Src/BrowserDialogsProvider.cpp	Thu Jan 07 13:31:38 2010 +0200
@@ -19,11 +19,11 @@
 // INCLUDE Files
 
 // User includes
-#include "browserdialogsprovider.h"	// Class header
+#include <browserdialogsprovider.h>	// Class header
 #include "BrowserDialogsProvider.hrh"
 #include "BrowserAuthenticationDialog.h"
 #include "BrowserDialogsProviderConstants.h"
-#include "browserdialogsproviderobserver.h" //obs
+#include <browserdialogsproviderobserver.h> //obs
 
 // Browser as a Plugin - own classes
 #include "BrowserViewImagesPopup.h"		// For DialogDisplayPageImagesL
@@ -438,17 +438,16 @@
 								TBrCtlSelectOptionType aBrCtlSelectOptionType,
 								CArrayFix<TBrCtlSelectOptionData>& aOptions )
 	{
-    CBrowserSelectElementDlg* dlg = CBrowserSelectElementDlg::NewL(	aTitle, 
+     iSelectDlg = CBrowserSelectElementDlg::NewL(	aTitle, 
 												aBrCtlSelectOptionType, 
 												aOptions );
 
-	
-    iDialogs.Append( dlg );     // Store a pointer to the dialog for CancelAll()
+
 
-	TInt result = dlg->ExecuteLD();
+	TInt result = iSelectDlg->ExecuteLD();
 
-    RemoveDialogFromArray();
-    
+
+    iSelectDlg = 0;
     if ( iObserver )
         {
         iObserver->ReportDialogEventL( 
@@ -981,7 +980,11 @@
 //-----------------------------------------------------------------------------
 //
 EXPORT_C void CBrowserDialogsProvider::CancelAll()
-	{
+    {
+	 if(iSelectDlg  )
+        iSelectDlg->CancelPopup();
+		
+    iDialogs.Close();
     // Empty the array
     iDialogs.ResetAndDestroy();
 	}