aboutsummaryrefslogtreecommitdiffstats
path: root/embed/mozilla
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@it.gnome.org>2003-05-13 02:04:58 +0800
committerMarco Pesenti Gritti <mpeseng@src.gnome.org>2003-05-13 02:04:58 +0800
commit1044f92a19ab225a74e7829561cfe1733aee6913 (patch)
tree21350a323dbc696acfbfc7ffbae8b0eff9faeac7 /embed/mozilla
parent125882e6f5591567b75b377a89b4127ed7c55f6e (diff)
downloadgsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.tar
gsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.tar.gz
gsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.tar.bz2
gsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.tar.lz
gsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.tar.xz
gsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.tar.zst
gsoc2013-epiphany-1044f92a19ab225a74e7829561cfe1733aee6913.zip
Use new gnome vfs show_url api.
2003-05-12 Marco Pesenti Gritti <marco@it.gnome.org> * embed/mozilla/ExternalProtocolService.cpp: Use new gnome vfs show_url api. * embed/mozilla/MozRegisterComponents.cpp: Register external protocols ! * embed/mozilla/mozilla-embed-single.cpp: Check that the ftp handler is not epiphany, to avoid infinite loop.
Diffstat (limited to 'embed/mozilla')
-rw-r--r--embed/mozilla/ExternalProtocolService.cpp6
-rw-r--r--embed/mozilla/MozRegisterComponents.cpp7
-rw-r--r--embed/mozilla/mozilla-embed-single.cpp2
3 files changed, 11 insertions, 4 deletions
diff --git a/embed/mozilla/ExternalProtocolService.cpp b/embed/mozilla/ExternalProtocolService.cpp
index 9d9a7368c..e5213c971 100644
--- a/embed/mozilla/ExternalProtocolService.cpp
+++ b/embed/mozilla/ExternalProtocolService.cpp
@@ -19,7 +19,7 @@
#include <gtk/gtk.h>
#include <libgnome/gnome-exec.h>
#include <libgnome/gnome-i18n.h>
-#include <libgnome/gnome-url.h>
+#include <libgnomevfs/gnome-vfs-utils.h>
#include <nsString.h>
#include <nsXPIDLString.h>
@@ -100,7 +100,7 @@ NS_IMETHODIMP GExternalProtocolService::LoadUrl(nsIURI *aURL)
char *result = eel_gconf_get_string(key.get());
if (result)
{
- gnome_url_show(cSpec.get(), NULL);
+ gnome_vfs_url_show(cSpec.get());
g_free (result);
return NS_OK;
}
@@ -141,7 +141,7 @@ NS_IMETHODIMP GExternalProtocolService::LoadUrl(nsIURI *aURL)
if (ret == 0)
{
- gnome_url_show(cSpec.get(), NULL);
+ gnome_vfs_url_show(cSpec.get());
return NS_OK;
}
else
diff --git a/embed/mozilla/MozRegisterComponents.cpp b/embed/mozilla/MozRegisterComponents.cpp
index e35a88d3a..cd68b8c4d 100644
--- a/embed/mozilla/MozRegisterComponents.cpp
+++ b/embed/mozilla/MozRegisterComponents.cpp
@@ -48,9 +48,16 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(MozGlobalHistory)
NS_GENERIC_FACTORY_CONSTRUCTOR(GPrintingPromptService)
NS_GENERIC_FACTORY_CONSTRUCTOR(GIRCProtocolHandler)
NS_GENERIC_FACTORY_CONSTRUCTOR(GFtpProtocolHandler)
+NS_GENERIC_FACTORY_CONSTRUCTOR(GExternalProtocolService)
static const nsModuleComponentInfo sAppComps[] = {
{
+ G_EXTERNALPROTOCOLSERVICE_CLASSNAME,
+ G_EXTERNALPROTOCOLSERVICE_CID,
+ NS_EXTERNALPROTOCOLSERVICE_CONTRACTID,
+ GExternalProtocolServiceConstructor
+ },
+ {
G_PROGRESSDIALOG_CLASSNAME,
G_PROGRESSDIALOG_CID,
G_PROGRESSDIALOG_CONTRACTID,
diff --git a/embed/mozilla/mozilla-embed-single.cpp b/embed/mozilla/mozilla-embed-single.cpp
index d65a4fffa..aa7daee03 100644
--- a/embed/mozilla/mozilla-embed-single.cpp
+++ b/embed/mozilla/mozilla-embed-single.cpp
@@ -236,7 +236,7 @@ have_gnome_url_handler (const gchar *protocol)
cmd = eel_gconf_get_string (key);
g_free (key);
- rv = (cmd != NULL);
+ rv = (cmd != NULL && strstr (cmd, "epiphany") == NULL);
g_free (cmd);
if (!rv) return rv;