[epiphany] Make sure that sync happens only in BROWSER mode
- From: Gabriel Ivașcu <gabrielivascu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [epiphany] Make sure that sync happens only in BROWSER mode
- Date: Fri, 8 Sep 2017 13:49:52 +0000 (UTC)
commit 5afbcfdd1301e34300837c1065ebb92299f1455c
Author: Gabriel Ivascu <ivascu gabriel59 gmail com>
Date: Thu Sep 7 18:21:41 2017 +0300
Make sure that sync happens only in BROWSER mode
https://bugzilla.gnome.org/show_bug.cgi?id=787412
embed/ephy-embed-shell.c | 7 +++++--
embed/web-extension/ephy-web-extension-main.c | 6 ++++--
embed/web-extension/ephy-web-extension.c | 13 ++++++++-----
embed/web-extension/ephy-web-extension.h | 3 ++-
src/ephy-shell.c | 2 +-
5 files changed, 20 insertions(+), 11 deletions(-)
---
diff --git a/embed/ephy-embed-shell.c b/embed/ephy-embed-shell.c
index 72a94cc..5d3d22c 100644
--- a/embed/ephy-embed-shell.c
+++ b/embed/ephy-embed-shell.c
@@ -707,6 +707,7 @@ initialize_web_extensions (WebKitWebContext *web_context,
EphyEmbedShellPrivate *priv = ephy_embed_shell_get_instance_private (shell);
GVariant *user_data;
gboolean private_profile;
+ gboolean browser_mode;
const char *address;
webkit_web_context_set_web_extensions_directory (web_context, EPHY_WEB_EXTENSIONS_DIR);
@@ -714,11 +715,13 @@ initialize_web_extensions (WebKitWebContext *web_context,
address = priv->dbus_server ? g_dbus_server_get_client_address (priv->dbus_server) : NULL;
private_profile = priv->mode == EPHY_EMBED_SHELL_MODE_PRIVATE || priv->mode ==
EPHY_EMBED_SHELL_MODE_INCOGNITO;
- user_data = g_variant_new ("(msssb)",
+ browser_mode = priv->mode == EPHY_EMBED_SHELL_MODE_BROWSER;
+ user_data = g_variant_new ("(msssbb)",
address,
ephy_dot_dir (),
ephy_filters_manager_get_adblock_filters_dir (priv->filters_manager),
- private_profile);
+ private_profile,
+ browser_mode);
webkit_web_context_set_web_extensions_initialization_user_data (web_context, user_data);
}
diff --git a/embed/web-extension/ephy-web-extension-main.c b/embed/web-extension/ephy-web-extension-main.c
index 66e1e2e..1ca5ee6 100644
--- a/embed/web-extension/ephy-web-extension-main.c
+++ b/embed/web-extension/ephy-web-extension-main.c
@@ -38,9 +38,10 @@ webkit_web_extension_initialize_with_user_data (WebKitWebExtension *webkit_exten
const char *dot_dir;
const char *adblock_data_dir;
gboolean private_profile;
+ gboolean browser_mode;
GError *error = NULL;
- g_variant_get (user_data, "(m&s&s&sb)", &server_address, &dot_dir, &adblock_data_dir, &private_profile);
+ g_variant_get (user_data, "(m&s&s&sbb)", &server_address, &dot_dir, &adblock_data_dir, &private_profile,
&browser_mode);
if (!server_address) {
g_warning ("UI process did not start D-Bus server, giving up.");
@@ -60,7 +61,8 @@ webkit_web_extension_initialize_with_user_data (WebKitWebExtension *webkit_exten
webkit_extension,
server_address,
adblock_data_dir,
- private_profile);
+ private_profile,
+ browser_mode);
}
static void __attribute__((destructor))
diff --git a/embed/web-extension/ephy-web-extension.c b/embed/web-extension/ephy-web-extension.c
index 3ba991f..380d34c 100644
--- a/embed/web-extension/ephy-web-extension.c
+++ b/embed/web-extension/ephy-web-extension.c
@@ -1701,7 +1701,8 @@ ephy_web_extension_initialize (EphyWebExtension *extension,
WebKitWebExtension *wk_extension,
const char *server_address,
const char *adblock_data_dir,
- gboolean is_private_profile)
+ gboolean is_private_profile,
+ gboolean is_browser_mode)
{
GDBusAuthObserver *observer;
@@ -1716,11 +1717,13 @@ ephy_web_extension_initialize (EphyWebExtension *extension,
if (!is_private_profile) {
extension->password_manager = ephy_password_manager_new ();
- if (ephy_sync_utils_user_is_signed_in ())
- ephy_web_extension_create_sync_service (extension);
+ if (is_browser_mode) {
+ if (ephy_sync_utils_user_is_signed_in ())
+ ephy_web_extension_create_sync_service (extension);
- g_signal_connect (EPHY_SETTINGS_SYNC, "changed::"EPHY_PREFS_SYNC_USER,
- G_CALLBACK (ephy_prefs_sync_user_cb), extension);
+ g_signal_connect (EPHY_SETTINGS_SYNC, "changed::"EPHY_PREFS_SYNC_USER,
+ G_CALLBACK (ephy_prefs_sync_user_cb), extension);
+ }
}
extension->permissions_manager = ephy_permissions_manager_new ();
diff --git a/embed/web-extension/ephy-web-extension.h b/embed/web-extension/ephy-web-extension.h
index bf0f482..3475426 100644
--- a/embed/web-extension/ephy-web-extension.h
+++ b/embed/web-extension/ephy-web-extension.h
@@ -34,6 +34,7 @@ void ephy_web_extension_initialize (EphyWebExtension *extensi
WebKitWebExtension *wk_extension,
const char *server_address,
const char *adblock_data_dir,
- gboolean is_private_profile);
+ gboolean is_private_profile,
+ gboolean is_browser_mode);
G_END_DECLS
diff --git a/src/ephy-shell.c b/src/ephy-shell.c
index ed931cd..6d20dc8 100644
--- a/src/ephy-shell.c
+++ b/src/ephy-shell.c
@@ -415,7 +415,7 @@ ephy_shell_startup (GApplication *application)
"enabled",
G_BINDING_SYNC_CREATE);
- if (ephy_sync_utils_user_is_signed_in ()) {
+ if (mode == EPHY_EMBED_SHELL_MODE_BROWSER && ephy_sync_utils_user_is_signed_in ()) {
/* Create the sync service. */
ephy_shell_get_sync_service (shell);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]