[gnome-builder/wip/gtk4-port] libide/gui: implement foreach_page in primary workspace



commit 4c1173f84dfa5cc2cbfd1c29370b827a68fcad84
Author: Christian Hergert <chergert redhat com>
Date:   Tue May 17 16:37:24 2022 -0700

    libide/gui: implement foreach_page in primary workspace

 src/libide/gui/ide-primary-workspace.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)
---
diff --git a/src/libide/gui/ide-primary-workspace.c b/src/libide/gui/ide-primary-workspace.c
index ab4f63d17..a81c2d7bb 100644
--- a/src/libide/gui/ide-primary-workspace.c
+++ b/src/libide/gui/ide-primary-workspace.c
@@ -192,6 +192,14 @@ ide_primary_workspace_get_header_bar (IdeWorkspace *workspace)
   return IDE_PRIMARY_WORKSPACE (workspace)->header_bar;
 }
 
+static void
+ide_primary_workspace_foreach_page (IdeWorkspace    *workspace,
+                                    IdePageCallback  callback,
+                                    gpointer         user_data)
+{
+  ide_grid_foreach_page (IDE_PRIMARY_WORKSPACE (workspace)->grid, callback, user_data);
+}
+
 static void
 ide_primary_workspace_dispose (GObject *object)
 {
@@ -216,16 +224,17 @@ ide_primary_workspace_class_init (IdePrimaryWorkspaceClass *klass)
 
   object_class->dispose = ide_primary_workspace_dispose;
 
+  workspace_class->add_grid_column = ide_primary_workspace_add_grid_column;
+  workspace_class->add_overlay = ide_primary_workspace_add_overlay;
   workspace_class->add_page = ide_primary_workspace_add_page;
   workspace_class->add_pane = ide_primary_workspace_add_pane;
-  workspace_class->add_overlay = ide_primary_workspace_add_overlay;
-  workspace_class->add_grid_column = ide_primary_workspace_add_grid_column;
-  workspace_class->remove_overlay = ide_primary_workspace_remove_overlay;
   workspace_class->can_search = ide_primary_workspace_can_search;
   workspace_class->context_set = ide_primary_workspace_context_set;
+  workspace_class->foreach_page = ide_primary_workspace_foreach_page;
   workspace_class->get_frame_at_position = ide_primary_workspace_get_frame_at_position;
-  workspace_class->get_most_recent_frame = ide_primary_workspace_get_most_recent_frame;
   workspace_class->get_header_bar = ide_primary_workspace_get_header_bar;
+  workspace_class->get_most_recent_frame = ide_primary_workspace_get_most_recent_frame;
+  workspace_class->remove_overlay = ide_primary_workspace_remove_overlay;
 
   ide_workspace_class_set_kind (workspace_class, "primary");
 


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