aboutsummaryrefslogtreecommitdiffstats
path: root/embed/mozilla
diff options
context:
space:
mode:
Diffstat (limited to 'embed/mozilla')
-rw-r--r--embed/mozilla/EphyPromptService.cpp24
-rw-r--r--embed/mozilla/EphyPromptService.h16
2 files changed, 31 insertions, 9 deletions
diff --git a/embed/mozilla/EphyPromptService.cpp b/embed/mozilla/EphyPromptService.cpp
index c1105182d..7e015bac7 100644
--- a/embed/mozilla/EphyPromptService.cpp
+++ b/embed/mozilla/EphyPromptService.cpp
@@ -31,7 +31,6 @@
#include <nsCOMPtr.h>
#include <nsIDOMWindow.h>
#include <nsServiceManagerUtils.h>
-#include <nsIStringBundle.h>
#include "ephy-embed-shell.h"
#include "ephy-gui.h"
@@ -40,6 +39,9 @@
#include "AutoModalDialog.h"
#include "EphyUtils.h"
+#undef ENABLE_AUTHPROMPT2
+#ifdef ENABLE_AUTHPROMPT2
+#include <nsIStringBundle.h>
#include "EphyPromptService.h"
#include "nsIChannel.h"
#include "nsIProxiedChannel.h"
@@ -49,6 +51,7 @@
#include "nsNetUtil.h"
#include "nsIIDNService.h"
#include "nsIAuthInformation.h"
+#endif /* ENABLE_AUTHPROMPT2 */
#define TIMEOUT 1000 /* ms */
#define TIMEOUT_DATA_KEY "timeout"
@@ -648,15 +651,18 @@ Prompter::ConvertAndEscapeButtonText(const PRUnichar *aText,
}
/* FIXME: needs THREADSAFE? */
-#if HAVE_NSINONBLOCKINGALERTSERVICE_H
-NS_IMPL_ISUPPORTS3 (EphyPromptService,
+#ifdef ENABLE_AUTHPROMPT2 /* gecko 1.9 only */
+NS_IMPL_THEADSAFE_ISUPPORTS3 (EphyPromptService,
+ nsIPromptService,
+ nsIPromptService2,
+ nsINonBlockingAlertService)
+#elif defined(HAVE_NSINONBLOCKINGALERTSERVICE_H)
+NS_IMPL_ISUPPORTS2 (EphyPromptService,
nsIPromptService,
- nsIPromptService2,
nsINonBlockingAlertService)
#else
-NS_IMPL_ISUPPORTS2 (EphyPromptService,
- nsIPromptService,
- nsIPromptService2)
+NS_IMPL_ISUPPORTS1 (EphyPromptService,
+ nsIPromptService)
#endif
EphyPromptService::EphyPromptService()
@@ -894,6 +900,8 @@ EphyPromptService::ShowNonBlockingAlert (nsIDOMWindow *aParent,
#endif /* HAVE_NSINONBLOCKINGALERTSERVICE_H */
+#ifdef ENABLE_AUTHPROMPT2
+
static void
NS_GetAuthHostPort(nsIChannel* aChannel, nsIAuthInformation* aAuthInfo,
PRBool machineProcessing, nsCString& host, PRInt32* port)
@@ -1104,3 +1112,5 @@ NS_METHOD EphyPromptService::AsyncPromptAuth(nsIDOMWindow *aParent,
{
return NS_ERROR_NOT_IMPLEMENTED;
}
+
+#endif /* ENABLE_AUTHPROMPT2 */
diff --git a/embed/mozilla/EphyPromptService.h b/embed/mozilla/EphyPromptService.h
index ffde73164..0c2b1fa02 100644
--- a/embed/mozilla/EphyPromptService.h
+++ b/embed/mozilla/EphyPromptService.h
@@ -22,12 +22,15 @@
#define EPHY_PROMPT_SERVICE_H
#include <nsIPromptService.h>
-#include <nsIPromptService2.h>
#if HAVE_NSINONBLOCKINGALERTSERVICE_H
#include <nsINonBlockingAlertService.h>
#endif
+#ifdef ENABLE_AUTHPROMPT2
+#include <nsIPromptService2.h>
+#endif
+
#define EPHY_PROMPT_SERVICE_IID \
{ /* 6e8b90d4-78a6-41c5-98da-b1559a40d30d */ \
0x6e8b90d4, 0x78a6, 0x41c5, \
@@ -35,7 +38,12 @@
#define EPHY_PROMPT_SERVICE_CLASSNAME "Epiphany Prompt Service"
-class EphyPromptService : public nsIPromptService2
+class EphyPromptService :
+#ifdef ENABLE_AUTHPROMPT2
+ public nsIPromptService2
+#else
+ public nsIPromptService
+#endif
#if HAVE_NSINONBLOCKINGALERTSERVICE_H
, public nsINonBlockingAlertService
#endif
@@ -43,7 +51,9 @@ class EphyPromptService : public nsIPromptService2
public:
NS_DECL_ISUPPORTS
NS_DECL_NSIPROMPTSERVICE
+#ifdef ENABLE_AUTHPROMPT2
NS_DECL_NSIPROMPTSERVICE2
+#endif
#if HAVE_NSINONBLOCKINGALERTSERVICE_H
NS_DECL_NSINONBLOCKINGALERTSERVICE
#endif
@@ -52,6 +62,7 @@ public:
virtual ~EphyPromptService();
protected:
+#ifdef ENABLE_AUTHPROMPT2
static nsresult PromptPasswordAdapter(nsIPromptService* aService,
nsIDOMWindow* aParent,
nsIChannel* aChannel,
@@ -60,6 +71,7 @@ public:
const PRUnichar* aCheckLabel,
PRBool* aCheckValue,
PRBool* retval);
+#endif /* ENABLE_AUTHPROMPT2 */
};
#endif /* EPHY_PROMPT_SERVICE_H */