aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--shell/ChangeLog10
-rw-r--r--shell/e-shell-nm-glib.c2
-rw-r--r--shell/e-shell-nm.c2
-rw-r--r--shell/e-shell.c2
4 files changed, 13 insertions, 3 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index 6165e85386..b056e8f369 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,3 +1,13 @@
+2008-04-26 James Westby <jw+debian@jameswestby.net>
+
+ ** Fix for bug #518103
+
+ * e-shell-nm-glib.c: (e_shell_glib_network_monitor):
+ * e-shell-nm.c: (e_shell_network_monitor):
+ * e-shell.c: (e_shell_construct):
+ Check online status from NetworkManager at startup instead of using the
+ last-used-state.
+
2008-04-17 Milan Crha <mcrha@redhat.com>
** Part of fix for bug #526739
diff --git a/shell/e-shell-nm-glib.c b/shell/e-shell-nm-glib.c
index e14a2afee8..0af9e5d811 100644
--- a/shell/e-shell-nm-glib.c
+++ b/shell/e-shell-nm-glib.c
@@ -49,7 +49,7 @@ static void e_shell_glib_network_monitor (libnm_glib_ctx *ctx, gpointer user_dat
if (line_status == E_SHELL_LINE_STATUS_ONLINE && state == LIBNM_NO_NETWORK_CONNECTION) {
shell_state = GNOME_Evolution_FORCED_OFFLINE;
e_shell_go_offline (shell, window, shell_state);
- } else if (line_status == E_SHELL_LINE_STATUS_OFFLINE && state == LIBNM_ACTIVE_NETWORK_CONNECTION) {
+ } else if (line_status == E_SHELL_LINE_STATUS_FORCED_OFFLINE && state == LIBNM_ACTIVE_NETWORK_CONNECTION) {
shell_state = GNOME_Evolution_USER_ONLINE;
e_shell_go_online (shell, window, shell_state);
}
diff --git a/shell/e-shell-nm.c b/shell/e-shell-nm.c
index 65b9812632..e6a9c2930e 100644
--- a/shell/e-shell-nm.c
+++ b/shell/e-shell-nm.c
@@ -104,7 +104,7 @@ e_shell_network_monitor (DBusConnection *connection G_GNUC_UNUSED,
if (line_status == E_SHELL_LINE_STATUS_ONLINE && status == E_SHELL_LINE_DOWN) {
shell_state = GNOME_Evolution_FORCED_OFFLINE;
e_shell_go_offline (shell, window, shell_state);
- } else if (line_status == E_SHELL_LINE_STATUS_OFFLINE && status == E_SHELL_LINE_UP) {
+ } else if (line_status == E_SHELL_LINE_STATUS_FORCED_OFFLINE && status == E_SHELL_LINE_UP) {
shell_state = GNOME_Evolution_USER_ONLINE;
e_shell_go_online (shell, window, shell_state);
}
diff --git a/shell/e-shell.c b/shell/e-shell.c
index 6fa37a4fd5..6223cc0599 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -717,7 +717,7 @@ e_shell_construct (EShell *shell,
if (start_online)
e_shell_go_online (shell, NULL, GNOME_Evolution_USER_ONLINE);
else
- e_shell_go_online (shell, NULL, GNOME_Evolution_FORCED_OFFLINE);
+ e_shell_go_online (shell, NULL, GNOME_Evolution_USER_OFFLINE);
return E_SHELL_CONSTRUCT_RESULT_OK;
}