aboutsummaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-08-14 01:24:44 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-08-14 01:24:44 +0800
commit59c73e97a64345cb4e6dd9f9542bb94094fd1917 (patch)
treeab45edb7e3f4603cbb3f4b767462e57233329049 /shell
parenta44eac756d55b0210cc541e1d9b7138805a2133e (diff)
downloadgsoc2013-evolution-59c73e97a64345cb4e6dd9f9542bb94094fd1917.tar.gz
gsoc2013-evolution-59c73e97a64345cb4e6dd9f9542bb94094fd1917.tar.zst
gsoc2013-evolution-59c73e97a64345cb4e6dd9f9542bb94094fd1917.zip
Update GConf when the online/offline button is clicked.
Diffstat (limited to 'shell')
-rw-r--r--shell/e-shell-window-actions.c16
-rw-r--r--shell/e-shell.c4
2 files changed, 20 insertions, 0 deletions
diff --git a/shell/e-shell-window-actions.c b/shell/e-shell-window-actions.c
index a53412c00b..235456e954 100644
--- a/shell/e-shell-window-actions.c
+++ b/shell/e-shell-window-actions.c
@@ -1361,9 +1361,17 @@ action_work_offline_cb (GtkAction *action,
EShellWindow *shell_window)
{
EShell *shell;
+ EShellSettings *shell_settings;
shell = e_shell_window_get_shell (shell_window);
+ shell_settings = e_shell_get_shell_settings (shell);
+
e_shell_set_online (shell, FALSE);
+
+ /* XXX The sense of the setting is reversed. Would be more
+ * intuitive and less error-prone as "start-online". */
+ e_shell_settings_set_boolean (
+ shell_settings, "start-offline", TRUE);
}
/**
@@ -1379,9 +1387,17 @@ action_work_online_cb (GtkAction *action,
EShellWindow *shell_window)
{
EShell *shell;
+ EShellSettings *shell_settings;
shell = e_shell_window_get_shell (shell_window);
+ shell_settings = e_shell_get_shell_settings (shell);
+
e_shell_set_online (shell, TRUE);
+
+ /* XXX The sense of the setting is reversed. Would be more
+ * intuitive and less error-prone as "start-online". */
+ e_shell_settings_set_boolean (
+ shell_settings, "start-offline", FALSE);
}
/**
diff --git a/shell/e-shell.c b/shell/e-shell.c
index 5b1e3beb78..e8a95b1523 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -967,6 +967,10 @@ shell_init (EShell *shell)
* otherwise the GConf bindings will not get set up. */
e_shell_settings_install_property_for_key (
+ "start-offline",
+ "/apps/evolution/shell/start_offline");
+
+ e_shell_settings_install_property_for_key (
"disable-application-handlers",
"/desktop/gnome/lockdown/disable_application_handlers");