[gnome-control-center] power: Use GTK widget types
- From: Robert Ancell <rancell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center] power: Use GTK widget types
- Date: Sun, 13 Dec 2020 21:00:10 +0000 (UTC)
commit d06375fc82e107d89cdba45448e71814377cc12a
Author: Robert Ancell <robert ancell canonical com>
Date: Wed Nov 25 10:17:38 2020 +1300
power: Use GTK widget types
panels/power/cc-power-panel.c | 104 ++++++++++++++++++++---------------------
panels/power/cc-power-panel.ui | 18 +++----
2 files changed, 59 insertions(+), 63 deletions(-)
---
diff --git a/panels/power/cc-power-panel.c b/panels/power/cc-power-panel.c
index 451ae85d3..9da51e3df 100644
--- a/panels/power/cc-power-panel.c
+++ b/panels/power/cc-power-panel.c
@@ -24,6 +24,7 @@
#include <libupower-glib/upower.h>
#include <glib/gi18n.h>
#include <gnome-settings-daemon/gsd-enums.h>
+#include <handy.h>
#ifdef HAVE_NETWORK_MANAGER
#include <NetworkManager.h>
@@ -58,24 +59,25 @@
struct _CcPowerPanel
{
- CcPanel parent_instance;
+ CcPanel parent_instance;
+
+ GtkDialog *automatic_suspend_dialog;
+ GtkListStore *idle_time_liststore;
+ GtkScrolledWindow *main_scroll;
+ HdyClamp *main_box;
+ GtkListStore *power_button_liststore;
+ GtkBox *power_vbox;
+ GtkComboBox *suspend_on_battery_delay_combo;
+ GtkLabel *suspend_on_battery_delay_label;
+ GtkLabel *suspend_on_battery_label;
+ GtkSwitch *suspend_on_battery_switch;
+ GtkComboBox *suspend_on_ac_delay_combo;
+ GtkLabel *suspend_on_ac_label;
+ GtkSwitch *suspend_on_ac_switch;
GSettings *gsd_settings;
GSettings *session_settings;
GSettings *interface_settings;
- GtkWidget *main_scroll;
- GtkWidget *main_box;
- GtkWidget *vbox_power;
- GtkWidget *suspend_on_battery_switch;
- GtkWidget *suspend_on_battery_label;
- GtkWidget *suspend_on_battery_delay_label;
- GtkWidget *suspend_on_battery_delay_combo;
- GtkWidget *suspend_on_ac_switch;
- GtkWidget *suspend_on_ac_label;
- GtkWidget *suspend_on_ac_delay_combo;
- GtkWidget *automatic_suspend_dialog;
- GtkListStore *liststore_idle_time;
- GtkListStore *liststore_power_button;
UpClient *up_client;
GPtrArray *devices;
gboolean has_batteries;
@@ -153,7 +155,7 @@ cc_power_panel_dispose (GObject *object)
g_clear_object (&self->gsd_settings);
g_clear_object (&self->session_settings);
g_clear_object (&self->interface_settings);
- g_clear_pointer (&self->automatic_suspend_dialog, gtk_widget_destroy);
+ g_clear_pointer ((GtkWidget **) &self->automatic_suspend_dialog, gtk_widget_destroy);
g_clear_pointer (&self->devices, g_ptr_array_unref);
g_clear_object (&self->up_client);
g_clear_object (&self->bt_rfkill);
@@ -190,20 +192,20 @@ cc_power_panel_class_init (CcPowerPanelClass *klass)
gtk_widget_class_set_template_from_resource (widget_class,
"/org/gnome/control-center/power/cc-power-panel.ui");
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, automatic_suspend_dialog);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, idle_time_liststore);
gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, main_scroll);
gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, main_box);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, vbox_power);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, automatic_suspend_dialog);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_switch);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_label);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_delay_label);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, power_button_liststore);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, power_vbox);
gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_delay_combo);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_ac_switch);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_ac_label);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_delay_label);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_label);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_battery_switch);
gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_ac_delay_combo);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, automatic_suspend_dialog);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, liststore_idle_time);
- gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, liststore_power_button);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_ac_label);
+ gtk_widget_class_bind_template_child (widget_class, CcPowerPanel, suspend_on_ac_switch);
+
}
static GtkWidget *
@@ -717,12 +719,11 @@ set_ac_battery_ui_mode (CcPowerPanel *self)
if (!has_batteries)
{
- gtk_widget_hide (self->suspend_on_battery_switch);
- gtk_widget_hide (self->suspend_on_battery_label);
- gtk_widget_hide (self->suspend_on_battery_delay_label);
- gtk_widget_hide (self->suspend_on_battery_delay_combo);
- gtk_label_set_label (GTK_LABEL (self->suspend_on_ac_label),
- _("When _idle"));
+ gtk_widget_hide (GTK_WIDGET (self->suspend_on_battery_switch));
+ gtk_widget_hide (GTK_WIDGET (self->suspend_on_battery_label));
+ gtk_widget_hide (GTK_WIDGET (self->suspend_on_battery_delay_label));
+ gtk_widget_hide (GTK_WIDGET (self->suspend_on_battery_delay_combo));
+ gtk_label_set_label (self->suspend_on_ac_label, _("When _idle"));
}
}
@@ -1149,16 +1150,14 @@ static void
activate_row (CcPowerPanel *self,
GtkListBoxRow *row)
{
- GtkWidget *w;
GtkWidget *toplevel;
if (row == GTK_LIST_BOX_ROW (self->automatic_suspend_row))
{
- w = self->automatic_suspend_dialog;
toplevel = gtk_widget_get_toplevel (GTK_WIDGET (self));
- gtk_window_set_transient_for (GTK_WINDOW (w), GTK_WINDOW (toplevel));
- gtk_window_set_modal (GTK_WINDOW (w), TRUE);
- gtk_window_present (GTK_WINDOW (w));
+ gtk_window_set_transient_for (GTK_WINDOW (self->automatic_suspend_dialog), GTK_WINDOW (toplevel));
+ gtk_window_set_modal (GTK_WINDOW (self->automatic_suspend_dialog), TRUE);
+ gtk_window_present (GTK_WINDOW (self->automatic_suspend_dialog));
}
}
@@ -1378,7 +1377,7 @@ add_power_saving_section (CcPowerPanel *self)
gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
gtk_widget_set_halign (label, GTK_ALIGN_START);
gtk_widget_set_margin_bottom (label, 12);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), label, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, label, FALSE, TRUE, 0);
gtk_widget_show (label);
widget = gtk_list_box_new ();
@@ -1404,7 +1403,7 @@ add_power_saving_section (CcPowerPanel *self)
gtk_frame_set_shadow_type (GTK_FRAME (box), GTK_SHADOW_IN);
gtk_widget_set_margin_bottom (box, 32);
gtk_container_add (GTK_CONTAINER (box), widget);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), box, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, box, FALSE, TRUE, 0);
row = add_brightness_row (self, BRIGHTNESS_DEVICE_SCREEN, _("_Screen Brightness"),
&self->brightness_scale);
g_signal_connect_object (self->brightness_scale, "notify::has-brightness",
@@ -1480,7 +1479,7 @@ add_power_saving_section (CcPowerPanel *self)
gtk_widget_show (self->idle_delay_combo);
gtk_combo_box_set_entry_text_column (GTK_COMBO_BOX (self->idle_delay_combo), 0);
gtk_combo_box_set_model (GTK_COMBO_BOX (self->idle_delay_combo),
- GTK_TREE_MODEL (self->liststore_idle_time));
+ GTK_TREE_MODEL (self->idle_time_liststore));
value = g_settings_get_uint (self->session_settings, "idle-delay");
set_value_for_combo (GTK_COMBO_BOX (self->idle_delay_combo), value);
g_signal_connect_object (self->idle_delay_combo, "changed",
@@ -1513,8 +1512,6 @@ add_power_saving_section (CcPowerPanel *self)
/* Automatic suspend row */
if (can_suspend)
{
- GtkWidget *dialog;
-
self->automatic_suspend_row = row = gtk_list_box_row_new ();
gtk_widget_show (row);
box = row_box_new ();
@@ -1533,8 +1530,7 @@ add_power_saving_section (CcPowerPanel *self)
gtk_container_add (GTK_CONTAINER (widget), row);
gtk_size_group_add_widget (self->row_sizegroup, row);
- dialog = self->automatic_suspend_dialog;
- g_signal_connect (dialog, "delete-event", G_CALLBACK (gtk_widget_hide_on_delete), NULL);
+ g_signal_connect (self->automatic_suspend_dialog, "delete-event", G_CALLBACK
(gtk_widget_hide_on_delete), NULL);
g_signal_connect_object (self->gsd_settings, "changed", G_CALLBACK (on_suspend_settings_changed),
self, G_CONNECT_SWAPPED);
g_settings_bind_with_mapping (self->gsd_settings, "sleep-inactive-battery-type",
@@ -1544,7 +1540,7 @@ add_power_saving_section (CcPowerPanel *self)
g_object_set_data (G_OBJECT (self->suspend_on_battery_delay_combo), "_gsettings_key",
"sleep-inactive-battery-timeout");
value = g_settings_get_int (self->gsd_settings, "sleep-inactive-battery-timeout");
- set_value_for_combo (GTK_COMBO_BOX (self->suspend_on_battery_delay_combo), value);
+ set_value_for_combo (self->suspend_on_battery_delay_combo, value);
g_signal_connect_object (self->suspend_on_battery_delay_combo, "changed",
G_CALLBACK (combo_time_changed_cb), self, G_CONNECT_SWAPPED);
g_object_bind_property (self->suspend_on_battery_switch, "active",
self->suspend_on_battery_delay_combo, "sensitive",
@@ -1557,7 +1553,7 @@ add_power_saving_section (CcPowerPanel *self)
g_object_set_data (G_OBJECT (self->suspend_on_ac_delay_combo), "_gsettings_key",
"sleep-inactive-ac-timeout");
value = g_settings_get_int (self->gsd_settings, "sleep-inactive-ac-timeout");
- set_value_for_combo (GTK_COMBO_BOX (self->suspend_on_ac_delay_combo), value);
+ set_value_for_combo (self->suspend_on_ac_delay_combo, value);
g_signal_connect_object (self->suspend_on_ac_delay_combo, "changed",
G_CALLBACK (combo_time_changed_cb), self, G_CONNECT_SWAPPED);
g_object_bind_property (self->suspend_on_ac_switch, "active", self->suspend_on_ac_delay_combo,
"sensitive",
@@ -1884,13 +1880,13 @@ add_power_profiles_section (CcPowerPanel *self)
gtk_label_set_xalign (GTK_LABEL (label), 0.0);
gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
gtk_widget_set_halign (label, GTK_ALIGN_START);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), label, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, label, FALSE, TRUE, 0);
label = gtk_label_new (_("Affects system performance and power usage."));
gtk_widget_show (label);
gtk_label_set_xalign (GTK_LABEL (label), 0.0);
gtk_widget_set_margin_bottom (label, 6);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), label, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, label, FALSE, TRUE, 0);
widget = gtk_list_box_new ();
gtk_widget_show (widget);
@@ -1918,7 +1914,7 @@ add_power_profiles_section (CcPowerPanel *self)
gtk_frame_set_shadow_type (GTK_FRAME (box), GTK_SHADOW_IN);
gtk_widget_set_margin_bottom (box, 32);
gtk_container_add (GTK_CONTAINER (box), widget);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), box, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, box, FALSE, TRUE, 0);
props = g_variant_get_child_value (variant, 0);
performance_inhibited = variant_lookup_string (props, "PerformanceInhibited");
@@ -2018,7 +2014,7 @@ add_general_section (CcPowerPanel *self)
gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
gtk_widget_set_halign (label, GTK_ALIGN_START);
gtk_widget_set_margin_bottom (label, 12);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), label, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, label, FALSE, TRUE, 0);
widget = gtk_list_box_new ();
gtk_widget_show (widget);
@@ -2041,7 +2037,7 @@ add_general_section (CcPowerPanel *self)
gtk_frame_set_shadow_type (GTK_FRAME (box), GTK_SHADOW_IN);
gtk_widget_set_margin_bottom (box, 32);
gtk_container_add (GTK_CONTAINER (box), widget);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), box, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, box, FALSE, TRUE, 0);
can_suspend = can_suspend_or_hibernate (self, "CanSuspend");
can_hibernate = can_suspend_or_hibernate (self, "CanHibernate");
@@ -2067,7 +2063,7 @@ add_general_section (CcPowerPanel *self)
self->power_button_combo = gtk_combo_box_text_new ();
gtk_widget_show (self->power_button_combo);
gtk_combo_box_set_entry_text_column (GTK_COMBO_BOX (self->power_button_combo), 0);
- model = GTK_TREE_MODEL (self->liststore_power_button);
+ model = GTK_TREE_MODEL (self->power_button_liststore);
populate_power_button_model (model, can_suspend, can_hibernate);
gtk_combo_box_set_model (GTK_COMBO_BOX (self->power_button_combo), model);
button_value = g_settings_get_enum (self->gsd_settings, "power-button-action");
@@ -2117,7 +2113,7 @@ add_battery_section (CcPowerPanel *self)
self->battery_section = box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_widget_show (box);
gtk_widget_set_margin_bottom (box, 32);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), box, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, box, FALSE, TRUE, 0);
s = g_markup_printf_escaped ("<b>%s</b>", _("Battery"));
self->battery_heading = widget = gtk_label_new (s);
@@ -2164,7 +2160,7 @@ add_device_section (CcPowerPanel *self)
gtk_widget_show (box);
gtk_widget_set_margin_top (box, 6);
gtk_widget_set_margin_bottom (box, 32);
- gtk_box_pack_start (GTK_BOX (self->vbox_power), box, FALSE, TRUE, 0);
+ gtk_box_pack_start (self->power_vbox, box, FALSE, TRUE, 0);
s = g_markup_printf_escaped ("<b>%s</b>", _("Devices"));
self->device_heading = widget = gtk_label_new (s);
@@ -2247,6 +2243,6 @@ cc_power_panel_init (CcPowerPanel *self)
}
up_client_changed (self);
- self->focus_adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (self->main_scroll));
+ self->focus_adjustment = gtk_scrolled_window_get_vadjustment (self->main_scroll);
gtk_container_set_focus_vadjustment (GTK_CONTAINER (self->main_box), self->focus_adjustment);
}
diff --git a/panels/power/cc-power-panel.ui b/panels/power/cc-power-panel.ui
index 74aed35cd..6d7380dbe 100644
--- a/panels/power/cc-power-panel.ui
+++ b/panels/power/cc-power-panel.ui
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
- <object class="GtkListStore" id="liststore_time">
+ <object class="GtkListStore" id="time_liststore">
<columns>
<!-- column-name name -->
<column type="gchararray"/>
@@ -51,7 +51,7 @@
</row>
</data>
</object>
- <object class="GtkListStore" id="liststore_idle_time">
+ <object class="GtkListStore" id="idle_time_liststore">
<columns>
<!-- column-name name -->
<column type="gchararray"/>
@@ -101,7 +101,7 @@
</row>
</data>
</object>
- <object class="GtkListStore" id="liststore_power_button">
+ <object class="GtkListStore" id="power_button_liststore">
<columns>
<!-- column-name name -->
<column type="gchararray"/>
@@ -125,7 +125,7 @@
<property name="margin_start">12</property>
<property name="margin_end">12</property>
<child>
- <object class="GtkBox" id="vbox_power">
+ <object class="GtkBox" id="power_vbox">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="orientation">vertical</property>
@@ -147,12 +147,12 @@
<property name="resizable">False</property>
<property name="use_header_bar">1</property>
<child internal-child="vbox">
- <object class="GtkBox" id="asdf">
+ <object class="GtkBox">
<property name="can_focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">2</property>
<child>
- <object class="GtkGrid" id="grid1">
+ <object class="GtkGrid">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_start">12</property>
@@ -213,7 +213,7 @@
<property name="can_focus">False</property>
<property name="entry_text_column">0</property>
<property name="id_column">1</property>
- <property name="model">liststore_time</property>
+ <property name="model">time_liststore</property>
</object>
<packing>
<property name="left_attach">2</property>
@@ -261,7 +261,7 @@
<property name="can_focus">False</property>
<property name="entry_text_column">0</property>
<property name="id_column">1</property>
- <property name="model">liststore_time</property>
+ <property name="model">time_liststore</property>
</object>
<packing>
<property name="left_attach">2</property>
@@ -283,7 +283,7 @@
<placeholder/>
</child>
<child>
- <object class="GtkLabel" id="suspend_on_ac_delay_label">
+ <object class="GtkLabel">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_start">20</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]