[gnome-builder/gnome-builder-3-32] buildui: switch to build panel on new builds



commit d816a66e98c22772adad6b68ae1f905c3e491b5e
Author: Christian Hergert <chergert redhat com>
Date:   Fri Apr 26 21:05:41 2019 -0700

    buildui: switch to build panel on new builds
    
    This helps the user having to switch back to build panes when a build
    starts and fails (such as when using the run button).

 src/plugins/buildui/gbp-buildui-workspace-addin.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
---
diff --git a/src/plugins/buildui/gbp-buildui-workspace-addin.c 
b/src/plugins/buildui/gbp-buildui-workspace-addin.c
index fd98d0309..c37e4e916 100644
--- a/src/plugins/buildui/gbp-buildui-workspace-addin.c
+++ b/src/plugins/buildui/gbp-buildui-workspace-addin.c
@@ -202,6 +202,20 @@ static const GActionEntry actions[] = {
   { "view-output", on_view_output_cb },
 };
 
+static void
+gbp_buildui_workspace_addin_build_started (GbpBuilduiWorkspaceAddin *self,
+                                           IdePipeline              *pipeline,
+                                           IdeBuildManager          *build_manager)
+{
+  g_assert (IDE_IS_MAIN_THREAD ());
+  g_assert (GBP_IS_BUILDUI_WORKSPACE_ADDIN (self));
+  g_assert (IDE_IS_PIPELINE (pipeline));
+  g_assert (IDE_IS_BUILD_MANAGER (build_manager));
+
+  if (ide_pipeline_get_requested_phase (pipeline) > IDE_PIPELINE_PHASE_CONFIGURE)
+    dzl_dock_item_present (DZL_DOCK_ITEM (self->log_pane));
+}
+
 static void
 gbp_buildui_workspace_addin_load (IdeWorkspaceAddin *addin,
                                   IdeWorkspace      *workspace)
@@ -377,6 +391,11 @@ gbp_buildui_workspace_addin_load (IdeWorkspaceAddin *addin,
                                    G_CALLBACK (gbp_buildui_workspace_addin_notify_busy),
                                    self,
                                    G_CONNECT_SWAPPED);
+  dzl_signal_group_connect_object (self->build_manager_signals,
+                                   "build-started",
+                                   G_CALLBACK (gbp_buildui_workspace_addin_build_started),
+                                   self,
+                                   G_CONNECT_SWAPPED);
   dzl_signal_group_set_target (self->build_manager_signals, build_manager);
 }
 


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