[gnome-builder] workbench: notify perspectives of fullscreen state



commit db0d2d0686c99d51cca62d1c2c7c1df9fb522200
Author: Christian Hergert <chergert redhat com>
Date:   Wed Jul 5 04:48:23 2017 -0700

    workbench: notify perspectives of fullscreen state

 libide/workbench/ide-workbench.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)
---
diff --git a/libide/workbench/ide-workbench.c b/libide/workbench/ide-workbench.c
index 60ce1f1..87d9849 100644
--- a/libide/workbench/ide-workbench.c
+++ b/libide/workbench/ide-workbench.c
@@ -1175,6 +1175,18 @@ ide_workbench_get_focus_mode (IdeWorkbench *self)
   return self->focus_mode;
 }
 
+static void
+ide_workbench_notify_addins_fullscreen (GtkWidget *perspective,
+                                        gpointer   user_data)
+{
+  IdeWorkbench *self = user_data;
+
+  g_assert (IDE_IS_WORKBENCH (self));
+  g_assert (IDE_IS_PERSPECTIVE (perspective));
+
+  ide_perspective_set_fullscreen (IDE_PERSPECTIVE (perspective),self->focus_mode);
+}
+
 void
 ide_workbench_set_focus_mode (IdeWorkbench *self,
                               gboolean      focus_mode)
@@ -1214,5 +1226,9 @@ ide_workbench_set_focus_mode (IdeWorkbench *self,
 
   g_object_unref (self->header_stack);
 
+  gtk_container_foreach (GTK_CONTAINER (self->perspectives_stack),
+                         ide_workbench_notify_addins_fullscreen,
+                         self);
+
   g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_FOCUS_MODE]);
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]