[gnome-initial-setup/shell/4765: 146/362] display: reload configuration when screen changes
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-initial-setup/shell/4765: 146/362] display: reload configuration when screen changes
- Date: Thu, 19 Mar 2015 01:33:20 +0000 (UTC)
commit dd7ff2db398a3b41f72b535e3b76c39a7660d5b3
Author: Cosimo Cecchi <cosimo endlessm com>
Date: Mon Aug 11 11:37:10 2014 -0700
display: reload configuration when screen changes
This way, we won't have stale information when toggling the checkbox
again.
[endlessm/eos-shell#3020]
.../pages/display/gis-display-page.c | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
---
diff --git a/gnome-initial-setup/pages/display/gis-display-page.c
b/gnome-initial-setup/pages/display/gis-display-page.c
index 79319b1..9c9fc45 100644
--- a/gnome-initial-setup/pages/display/gis-display-page.c
+++ b/gnome-initial-setup/pages/display/gis-display-page.c
@@ -39,6 +39,8 @@ typedef struct {
GnomeRRScreen *screen;
GnomeRRConfig *current_config;
GnomeRROutputInfo *current_output;
+
+ guint screen_changed_id;
} GisDisplayPagePrivate;
G_DEFINE_TYPE_WITH_PRIVATE (GisDisplayPage, gis_display_page, GIS_TYPE_PAGE);
@@ -136,6 +138,12 @@ gis_display_page_dispose (GObject *gobject)
GisDisplayPage *page = GIS_DISPLAY_PAGE (gobject);
GisDisplayPagePrivate *priv = gis_display_page_get_instance_private (page);
+ if (priv->screen_changed_id != 0)
+ {
+ g_signal_handler_disconnect (priv->screen, priv->screen_changed_id);
+ priv->screen_changed_id = 0;
+ }
+
g_clear_object (&priv->current_config);
g_clear_object (&priv->screen);
@@ -176,6 +184,10 @@ gis_display_page_constructed (GObject *object)
return;
}
+ priv->screen_changed_id = g_signal_connect_swapped (priv->screen,
+ "changed",
+ G_CALLBACK (read_screen_config),
+ page);
read_screen_config (page);
widget = WID ("overscan_checkbutton");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]