power: set no-show-all to TRUE on wifi and mobile rows

The Wi-Fi and mobile broadband row's visibility depends on related
device status. But calling gtk_widget_show_all on the whole list box
makes them visible even related device is not avialbe. Fix that by
setting no-show-all of these two widgets as TRUE.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/189
This commit is contained in:
Jonathan Kang 2018-09-30 14:30:22 +08:00 committed by Robert Ancell
parent a6acc98371
commit 4af9803f51

View file

@ -1903,6 +1903,8 @@ add_power_saving_section (CcPowerPanel *self)
gtk_label_set_mnemonic_widget (GTK_LABEL (label), self->wifi_switch);
gtk_container_add (GTK_CONTAINER (widget), row);
gtk_size_group_add_widget (self->row_sizegroup, row);
gtk_widget_show_all (row);
gtk_widget_set_no_show_all (self->wifi_row, TRUE);
self->mobile_row = row = no_prelight_row_new ();
box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 50);
@ -1933,6 +1935,8 @@ add_power_saving_section (CcPowerPanel *self)
gtk_label_set_mnemonic_widget (GTK_LABEL (label), self->mobile_switch);
gtk_container_add (GTK_CONTAINER (widget), row);
gtk_size_group_add_widget (self->row_sizegroup, row);
gtk_widget_show_all (row);
gtk_widget_set_no_show_all (self->mobile_row, TRUE);
g_signal_connect (G_OBJECT (self->mobile_switch), "notify::active",
G_CALLBACK (mobile_switch_changed), self);