[gtk+] inspector: Update for screen config changes
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] inspector: Update for screen config changes
- Date: Thu, 25 Feb 2016 06:22:12 +0000 (UTC)
commit 84ba01d713df386fb8b141a5c6c1fc393509a3ba
Author: Matthias Clasen <mclasen redhat com>
Date: Thu Feb 25 01:21:27 2016 -0500
inspector: Update for screen config changes
Repopulate the display section whenever the monitor configuration
changes.
gtk/inspector/general.c | 33 ++++++++++++++++++++++++++++++---
1 files changed, 30 insertions(+), 3 deletions(-)
---
diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c
index 0f40990..c99ea38 100644
--- a/gtk/inspector/general.c
+++ b/gtk/inspector/general.c
@@ -274,13 +274,26 @@ init_env (GtkInspectorGeneral *gen)
}
static void
-init_display (GtkInspectorGeneral *gen)
+populate_display (GdkScreen *screen, GtkInspectorGeneral *gen)
{
- GdkScreen *screen;
gchar *name;
gint i;
+ GList *children, *l;
+ GtkWidget *child;
+
+ children = gtk_container_get_children (GTK_CONTAINER (gen->priv->x_box));
+ for (l = children; l; l = l->next)
+ {
+ child = l->data;
+ if (gtk_widget_is_ancestor (gen->priv->x_display, child) ||
+ gtk_widget_is_ancestor (gen->priv->x_rgba, child) ||
+ gtk_widget_is_ancestor (gen->priv->x_composited, child))
+ continue;
+
+ gtk_widget_destroy (child);
+ }
+ g_list_free (children);
- screen = gdk_screen_get_default ();
name = gdk_screen_make_display_name (screen);
gtk_label_set_label (GTK_LABEL (gen->priv->x_display), name);
g_free (name);
@@ -344,6 +357,20 @@ init_display (GtkInspectorGeneral *gen)
}
static void
+init_display (GtkInspectorGeneral *gen)
+{
+ GdkScreen *screen;
+
+ screen = gdk_screen_get_default ();
+
+ g_signal_connect (screen, "size-changed", G_CALLBACK (populate_display), gen);
+ g_signal_connect (screen, "composited-changed", G_CALLBACK (populate_display), gen);
+ g_signal_connect (screen, "monitors-changed", G_CALLBACK (populate_display), gen);
+
+ populate_display (screen, gen);
+}
+
+static void
add_device (GtkInspectorGeneral *gen,
GdkDevice *device)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]