diff --git a/embedding/browser/macbuild/webBrowser.xml b/embedding/browser/macbuild/webBrowser.xml
index 3c5441833902..2e939164980d 100644
--- a/embedding/browser/macbuild/webBrowser.xml
+++ b/embedding/browser/macbuild/webBrowser.xml
@@ -1007,13 +1007,6 @@
Text
-
- Name
- nsNonPersistAuthPrompt.cpp
- MacOS
- Text
-
-
Name
nsWebBrowserContentPolicy.cpp
@@ -1080,11 +1073,6 @@
nsCommandHandler.cpp
MacOS
-
- Name
- nsNonPersistAuthPrompt.cpp
- MacOS
-
Name
nsWebBrowserContentPolicy.cpp
@@ -2051,13 +2039,6 @@
Text
-
- Name
- nsNonPersistAuthPrompt.cpp
- MacOS
- Text
-
-
Name
nsWebBrowserContentPolicy.cpp
@@ -2124,11 +2105,6 @@
nsCommandHandler.cpp
MacOS
-
- Name
- nsNonPersistAuthPrompt.cpp
- MacOS
-
Name
nsWebBrowserContentPolicy.cpp
@@ -2182,12 +2158,6 @@
nsWebBrowser.cpp
MacOS
-
- webBrowserDebug.shlb
- Name
- nsNonPersistAuthPrompt.cpp
- MacOS
-
webBrowserDebug.shlb
Name
diff --git a/embedding/browser/webBrowser/Makefile.in b/embedding/browser/webBrowser/Makefile.in
index a678380f8e67..0f88e6133d9a 100644
--- a/embedding/browser/webBrowser/Makefile.in
+++ b/embedding/browser/webBrowser/Makefile.in
@@ -40,7 +40,6 @@ REQUIRES = xpcom \
shistory \
webshell \
windowwatcher \
- wallet \
appcomps \
webbrowserpersist \
unicharutil \
@@ -72,7 +71,6 @@ CPPSRCS = \
nsDocShellTreeOwner.cpp \
nsWebBrowser.cpp \
nsCommandHandler.cpp \
- nsNonPersistAuthPrompt.cpp \
nsWebBrowserContentPolicy.cpp \
$(NULL)
diff --git a/embedding/browser/webBrowser/makefile.win b/embedding/browser/webBrowser/makefile.win
index 53eb734abd5a..60acc230407d 100644
--- a/embedding/browser/webBrowser/makefile.win
+++ b/embedding/browser/webBrowser/makefile.win
@@ -33,7 +33,6 @@ REQUIRES = xpcom \
shistory \
webshell \
windowwatcher \
- wallet \
gfx \
content \
history \
@@ -67,7 +66,6 @@ CPP_OBJS= \
.\$(OBJDIR)\nsDocShellTreeOwner.obj \
.\$(OBJDIR)\nsWebBrowser.obj \
.\$(OBJDIR)\nsCommandHandler.obj \
- .\$(OBJDIR)\nsNonPersistAuthPrompt.obj \
.\$(OBJDIR)\nsWebBrowserContentPolicy.obj \
$(NULL)
diff --git a/embedding/browser/webBrowser/nsDocShellTreeOwner.cpp b/embedding/browser/webBrowser/nsDocShellTreeOwner.cpp
index 2cafc426f7e8..4d27844a5962 100644
--- a/embedding/browser/webBrowser/nsDocShellTreeOwner.cpp
+++ b/embedding/browser/webBrowser/nsDocShellTreeOwner.cpp
@@ -26,7 +26,6 @@
// Local Includes
#include "nsDocShellTreeOwner.h"
#include "nsWebBrowser.h"
-#include "nsNonPersistAuthPrompt.h"
// Helper Classes
#include "nsIGenericFactory.h"
@@ -37,6 +36,7 @@
#include "nsXPIDLString.h"
#include "nsReadableUtils.h"
#include "nsUnicharUtils.h"
+#include "nsISimpleEnumerator.h"
// Interfaces needed to be included
#include "nsIContextMenuListener.h"
@@ -61,7 +61,6 @@
#include "nsIWindowWatcher.h"
#include "nsPIWindowWatcher.h"
#include "nsIPrompt.h"
-#include "nsIWalletService.h"
#include "nsRect.h"
#include "nsIWebBrowserChromeFocus.h"
diff --git a/embedding/components/build/macbuild/EmbedComponentsIDL.xml b/embedding/components/build/macbuild/EmbedComponentsIDL.xml
index 2f130d937e28..32b97f5ddbac 100644
--- a/embedding/components/build/macbuild/EmbedComponentsIDL.xml
+++ b/embedding/components/build/macbuild/EmbedComponentsIDL.xml
@@ -842,6 +842,13 @@
Text
+
+ Name
+ nsIAuthPromptWrapper.idl
+ MacOS
+ Text
+
+
@@ -924,6 +931,11 @@
nsIControllerCommandManager.idl
MacOS
+
+ Name
+ nsIAuthPromptWrapper.idl
+ MacOS
+
@@ -1715,6 +1727,13 @@
Text
+
+ Name
+ nsIAuthPromptWrapper.idl
+ MacOS
+ Text
+
+
@@ -1797,6 +1816,11 @@
nsIControllerCommandManager.idl
MacOS
+
+ Name
+ nsIAuthPromptWrapper.idl
+ MacOS
+
@@ -1903,6 +1927,12 @@
nsIControllerCommandManager.idl
MacOS
+
+ headers
+ Name
+ nsIAuthPromptWrapper.idl
+ MacOS
+
diff --git a/embedding/components/windowwatcher/public/Makefile.in b/embedding/components/windowwatcher/public/Makefile.in
index 5accd728033e..5f75a79f7d31 100644
--- a/embedding/components/windowwatcher/public/Makefile.in
+++ b/embedding/components/windowwatcher/public/Makefile.in
@@ -34,6 +34,7 @@ XPIDLSRCS = nsIDialogParamBlock.idl \
nsPIPromptService.idl \
nsIWindowWatcher.idl \
nsPIWindowWatcher.idl \
+ nsIAuthPromptWrapper.idl \
$(NULL)
include $(topsrcdir)/config/rules.mk
diff --git a/embedding/components/windowwatcher/public/makefile.win b/embedding/components/windowwatcher/public/makefile.win
index b88a9d73a3c3..007ef6a2fcd0 100644
--- a/embedding/components/windowwatcher/public/makefile.win
+++ b/embedding/components/windowwatcher/public/makefile.win
@@ -28,6 +28,7 @@ XPIDLSRCS = \
.\nsPIPromptService.idl \
.\nsIWindowWatcher.idl \
.\nsPIWindowWatcher.idl \
+ .\nsIAuthPromptWrapper.idl \
$(NULL)
include <$(DEPTH)\config\rules.mak>
diff --git a/embedding/components/windowwatcher/src/Makefile.in b/embedding/components/windowwatcher/src/Makefile.in
index 5752a420a3c7..632e408a6a32 100644
--- a/embedding/components/windowwatcher/src/Makefile.in
+++ b/embedding/components/windowwatcher/src/Makefile.in
@@ -39,7 +39,6 @@ REQUIRES = xpcom \
docshell \
webbrwsr \
embed_base \
- wallet \
intl \
$(NULL)
diff --git a/embedding/components/windowwatcher/src/makefile.win b/embedding/components/windowwatcher/src/makefile.win
index 991acb5b29a4..92683d206210 100644
--- a/embedding/components/windowwatcher/src/makefile.win
+++ b/embedding/components/windowwatcher/src/makefile.win
@@ -33,7 +33,6 @@ REQUIRES = xpcom \
docshell \
webBrowser_core \
embed_base \
- wallet \
intl \
$(NULL)
diff --git a/embedding/components/windowwatcher/src/nsPrompt.cpp b/embedding/components/windowwatcher/src/nsPrompt.cpp
index 3dcf1ac7a9e7..1bb4104f33ba 100644
--- a/embedding/components/windowwatcher/src/nsPrompt.cpp
+++ b/embedding/components/windowwatcher/src/nsPrompt.cpp
@@ -37,11 +37,10 @@
* ***** END LICENSE BLOCK ***** */
#include "nsIServiceManager.h"
-#include "nsIWalletService.h"
+#include "nsIAuthPromptWrapper.h"
#include "nsPrompt.h"
#include "nsReadableUtils.h"
-static NS_DEFINE_CID(kSingleSignOnPromptCID, NS_SINGLESIGNONPROMPT_CID);
nsresult
NS_NewPrompter(nsIPrompt **result, nsIDOMWindow *aParent)
@@ -83,8 +82,9 @@ NS_NewAuthPrompter(nsIAuthPrompt **result, nsIDOMWindow *aParent)
}
*result = prompter;
- // wrap the base prompt in an nsISingleSignOnPrompt, if available
- nsCOMPtr siPrompt = do_CreateInstance(kSingleSignOnPromptCID);
+ // wrap the base prompt in an nsIAuthPromptWrapper, if available
+ // the impl used here persists prompt data and pre-fills the dialogs
+ nsCOMPtr siPrompt = do_CreateInstance("@mozilla.org/wallet/single-sign-on-prompt;1");
if (siPrompt) {
// then single sign-on is installed
rv = siPrompt->SetPromptDialogs(prompter);