info: add warning that always fallback will effect next login
This commit is contained in:
parent
17008fe565
commit
6ceea9b3ae
2 changed files with 64 additions and 19 deletions
|
@ -50,6 +50,7 @@ struct _CcInfoPanelPrivate
|
||||||
char *gnome_distributor;
|
char *gnome_distributor;
|
||||||
char *gnome_date;
|
char *gnome_date;
|
||||||
gboolean updates_available;
|
gboolean updates_available;
|
||||||
|
gboolean is_fallback;
|
||||||
|
|
||||||
GDBusConnection *session_bus;
|
GDBusConnection *session_bus;
|
||||||
GDBusProxy *pk_proxy;
|
GDBusProxy *pk_proxy;
|
||||||
|
@ -404,20 +405,6 @@ get_current_is_fallback (CcInfoPanel *self)
|
||||||
return is_fallback;
|
return is_fallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
|
||||||
get_graphics_experience (CcInfoPanel *self)
|
|
||||||
{
|
|
||||||
char *experience_str;
|
|
||||||
|
|
||||||
if (get_current_is_fallback (self))
|
|
||||||
experience_str = g_strdup (_("Fallback"));
|
|
||||||
else
|
|
||||||
experience_str = g_strdup (_("Standard"));
|
|
||||||
|
|
||||||
return experience_str;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
cc_info_panel_get_property (GObject *object,
|
cc_info_panel_get_property (GObject *object,
|
||||||
guint property_id,
|
guint property_id,
|
||||||
|
@ -736,17 +723,40 @@ switch_fallback_get_mapping (GValue *value,
|
||||||
GVariant *variant,
|
GVariant *variant,
|
||||||
gpointer data)
|
gpointer data)
|
||||||
{
|
{
|
||||||
const char *setting = g_variant_get_string (variant, NULL);
|
const char *setting;
|
||||||
|
|
||||||
|
setting = g_variant_get_string (variant, NULL);
|
||||||
g_value_set_boolean (value, strcmp (setting, "gnome") != 0);
|
g_value_set_boolean (value, strcmp (setting, "gnome") != 0);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
toggle_fallback_warning_label (CcInfoPanel *self,
|
||||||
|
gboolean visible)
|
||||||
|
{
|
||||||
|
GtkWidget *widget;
|
||||||
|
|
||||||
|
widget = WID (self->priv->builder, "graphics_logout_warning_label");
|
||||||
|
if (visible)
|
||||||
|
gtk_widget_show (widget);
|
||||||
|
else
|
||||||
|
gtk_widget_hide (widget);
|
||||||
|
}
|
||||||
|
|
||||||
static GVariant *
|
static GVariant *
|
||||||
switch_fallback_set_mapping (const GValue *value,
|
switch_fallback_set_mapping (const GValue *value,
|
||||||
const GVariantType *expected_type,
|
const GVariantType *expected_type,
|
||||||
gpointer data)
|
gpointer data)
|
||||||
{
|
{
|
||||||
gboolean is_set = g_value_get_boolean (value);
|
CcInfoPanel *self = data;
|
||||||
|
gboolean is_set;
|
||||||
|
|
||||||
|
is_set = g_value_get_boolean (value);
|
||||||
|
if (is_set != self->priv->is_fallback)
|
||||||
|
toggle_fallback_warning_label (self, TRUE);
|
||||||
|
else
|
||||||
|
toggle_fallback_warning_label (self, FALSE);
|
||||||
|
|
||||||
return g_variant_new_string (is_set ? "gnome-fallback" : "gnome");
|
return g_variant_new_string (is_set ? "gnome-fallback" : "gnome");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -767,7 +777,11 @@ info_panel_setup_graphics (CcInfoPanel *self)
|
||||||
gtk_label_set_markup (GTK_LABEL (widget), text ? text : "");
|
gtk_label_set_markup (GTK_LABEL (widget), text ? text : "");
|
||||||
g_free (text);
|
g_free (text);
|
||||||
|
|
||||||
text = get_graphics_experience (self);
|
self->priv->is_fallback = get_current_is_fallback (self);
|
||||||
|
if (self->priv->is_fallback)
|
||||||
|
text = g_strdup (_("Fallback"));
|
||||||
|
else
|
||||||
|
text = g_strdup (_("Standard"));
|
||||||
widget = WID (self->priv->builder, "graphics_experience_label");
|
widget = WID (self->priv->builder, "graphics_experience_label");
|
||||||
gtk_label_set_markup (GTK_LABEL (widget), text ? text : "");
|
gtk_label_set_markup (GTK_LABEL (widget), text ? text : "");
|
||||||
g_free (text);
|
g_free (text);
|
||||||
|
|
|
@ -631,10 +631,10 @@
|
||||||
<property name="can_focus">False</property>
|
<property name="can_focus">False</property>
|
||||||
<property name="halign">start</property>
|
<property name="halign">start</property>
|
||||||
<property name="valign">start</property>
|
<property name="valign">start</property>
|
||||||
<property name="n_rows">4</property>
|
<property name="n_rows">5</property>
|
||||||
<property name="n_columns">2</property>
|
<property name="n_columns">2</property>
|
||||||
<property name="column_spacing">12</property>
|
<property name="column_spacing">12</property>
|
||||||
<property name="row_spacing">5</property>
|
<property name="row_spacing">10</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkLabel" id="label17">
|
<object class="GtkLabel" id="label17">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
@ -740,6 +740,37 @@
|
||||||
<property name="bottom_attach">4</property>
|
<property name="bottom_attach">4</property>
|
||||||
</packing>
|
</packing>
|
||||||
</child>
|
</child>
|
||||||
|
<child>
|
||||||
|
<object class="GtkLabel" id="label34">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="xalign">1</property>
|
||||||
|
<property name="justify">right</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="top_attach">4</property>
|
||||||
|
<property name="bottom_attach">5</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
<child>
|
||||||
|
<object class="GtkLabel" id="graphics_logout_warning_label">
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="no_show_all">True</property>
|
||||||
|
<property name="xalign">0</property>
|
||||||
|
<property name="label">Will take effect at next login</property>
|
||||||
|
<property name="wrap">True</property>
|
||||||
|
<property name="selectable">True</property>
|
||||||
|
<attributes>
|
||||||
|
<attribute name="weight" value="bold"/>
|
||||||
|
</attributes>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="left_attach">1</property>
|
||||||
|
<property name="right_attach">2</property>
|
||||||
|
<property name="top_attach">4</property>
|
||||||
|
<property name="bottom_attach">5</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue