[gnome-control-center/wip/gbsneto/new-goa-panel: 73/76] online-accounts: add an offline message label
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center/wip/gbsneto/new-goa-panel: 73/76] online-accounts: add an offline message label
- Date: Wed, 25 Jan 2017 22:53:57 +0000 (UTC)
commit 0fd719225b8588cf54b8145ce0467fbad44eaee9
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Thu Nov 10 14:56:27 2016 -0200
online-accounts: add an offline message label
When offline, we currently block the new accounts listbox
so that users can't add new accounts. There is, however,
no visual indication that we're offline, besides the listbox.
Fix that by adding a descriptive label that's only visible
when offline.
https://bugzilla.gnome.org/show_bug.cgi?id=774222
panels/online-accounts/cc-online-accounts-panel.c | 8 +++++++-
panels/online-accounts/online-accounts.ui | 8 ++++++++
2 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/panels/online-accounts/cc-online-accounts-panel.c
b/panels/online-accounts/cc-online-accounts-panel.c
index 8266988..a57eca4 100644
--- a/panels/online-accounts/cc-online-accounts-panel.c
+++ b/panels/online-accounts/cc-online-accounts-panel.c
@@ -51,6 +51,7 @@ struct _CcGoaPanel
GtkWidget *new_account_vbox;
GtkWidget *notification_label;
GtkWidget *notification_revealer;
+ GtkWidget *offline_label;
GtkWidget *providers_listbox;
GtkWidget *remove_account_button;
GtkWidget *stack;
@@ -428,6 +429,10 @@ cc_goa_panel_init (CcGoaPanel *panel)
monitor = g_network_monitor_get_default();
g_object_bind_property (monitor, "network-available",
+ panel->offline_label, "visible",
+ G_BINDING_SYNC_CREATE | G_BINDING_INVERT_BOOLEAN);
+
+ g_object_bind_property (monitor, "network-available",
panel->providers_listbox, "sensitive",
G_BINDING_SYNC_CREATE);
@@ -461,7 +466,7 @@ cc_goa_panel_init (CcGoaPanel *panel)
fill_accounts_listbox (panel);
goa_provider_get_all (get_all_providers_cb, panel);
- gtk_widget_show_all (GTK_WIDGET (panel));
+ gtk_widget_show (GTK_WIDGET (panel));
}
static const char *
@@ -509,6 +514,7 @@ cc_goa_panel_class_init (CcGoaPanelClass *klass)
gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, new_account_vbox);
gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, notification_label);
gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, notification_revealer);
+ gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, offline_label);
gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, providers_listbox);
gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, remove_account_button);
gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, stack);
diff --git a/panels/online-accounts/online-accounts.ui b/panels/online-accounts/online-accounts.ui
index f91a484..f4d2611 100644
--- a/panels/online-accounts/online-accounts.ui
+++ b/panels/online-accounts/online-accounts.ui
@@ -93,6 +93,14 @@
</object>
</child>
<child>
+ <object class="GtkLabel" id="offline_label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="wrap">True</property>
+ <property name="label" translatable="yes">No internet connection - connect to setup new
online accounts</property>
+ </object>
+ </child>
+ <child>
<object class="GtkFrame" id="accounts_frame">
<property name="visible">True</property>
<property name="can_focus">False</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]