[gnome-builder/wip/gtk4-port: 1089/1774] plugins/buildui: add API to change warning/error filters
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder/wip/gtk4-port: 1089/1774] plugins/buildui: add API to change warning/error filters
- Date: Mon, 11 Jul 2022 22:31:34 +0000 (UTC)
commit 1956e78b9b509374fc58f708de94577a1b76ba10
Author: Christian Hergert <chergert redhat com>
Date: Fri May 20 15:38:19 2022 -0700
plugins/buildui: add API to change warning/error filters
src/plugins/buildui/gbp-buildui-status-popover.c | 24 ++++++++++++++++++++----
src/plugins/buildui/gbp-buildui-status-popover.h | 4 +++-
2 files changed, 23 insertions(+), 5 deletions(-)
---
diff --git a/src/plugins/buildui/gbp-buildui-status-popover.c
b/src/plugins/buildui/gbp-buildui-status-popover.c
index 401bdf428..2f50d452e 100644
--- a/src/plugins/buildui/gbp-buildui-status-popover.c
+++ b/src/plugins/buildui/gbp-buildui-status-popover.c
@@ -30,16 +30,17 @@
struct _GbpBuilduiStatusPopover
{
- GtkPopover parent_instance;
+ GtkPopover parent_instance;
/* Owned references */
IdeSignalGroup *pipeline_signals;
GHashTable *deduplicator;
- GtkCustomFilter *error_filter;
- GtkCustomFilter *warning_filter;
/* Template references */
- GListStore *diagnostics;
+ GListStore *diagnostics;
+ GtkStack *stack;
+ GtkCustomFilter *error_filter;
+ GtkCustomFilter *warning_filter;
};
G_DEFINE_FINAL_TYPE (GbpBuilduiStatusPopover, gbp_buildui_status_popover, GTK_TYPE_POPOVER)
@@ -169,6 +170,7 @@ gbp_buildui_status_popover_class_init (GbpBuilduiStatusPopoverClass *klass)
gtk_widget_class_set_template_from_resource (widget_class,
"/plugins/buildui/gbp-buildui-status-popover.ui");
gtk_widget_class_bind_template_child (widget_class, GbpBuilduiStatusPopover, diagnostics);
gtk_widget_class_bind_template_child (widget_class, GbpBuilduiStatusPopover, error_filter);
+ gtk_widget_class_bind_template_child (widget_class, GbpBuilduiStatusPopover, stack);
gtk_widget_class_bind_template_child (widget_class, GbpBuilduiStatusPopover, warning_filter);
gtk_widget_class_bind_template_callback (widget_class, gbp_buildui_status_popover_activate_cb);
@@ -239,3 +241,17 @@ gbp_buildui_status_popover_new (IdeContext *context)
return self;
}
+
+void
+gbp_buildui_status_popover_set_page (GbpBuilduiStatusPopover *self,
+ const char *page)
+{
+ GtkWidget *visible_child;
+
+ g_return_if_fail (GBP_IS_BUILDUI_STATUS_POPOVER (self));
+ g_return_if_fail (page != NULL);
+
+ gtk_stack_set_visible_child_name (self->stack, page);
+ visible_child = gtk_stack_get_visible_child (self->stack);
+ gtk_widget_grab_focus (visible_child);
+}
diff --git a/src/plugins/buildui/gbp-buildui-status-popover.h
b/src/plugins/buildui/gbp-buildui-status-popover.h
index c12543f28..0027f670f 100644
--- a/src/plugins/buildui/gbp-buildui-status-popover.h
+++ b/src/plugins/buildui/gbp-buildui-status-popover.h
@@ -30,6 +30,8 @@ G_BEGIN_DECLS
G_DECLARE_FINAL_TYPE (GbpBuilduiStatusPopover, gbp_buildui_status_popover, GBP, BUILDUI_STATUS_POPOVER,
GtkPopover)
-GbpBuilduiStatusPopover *gbp_buildui_status_popover_new (IdeContext *context);
+GbpBuilduiStatusPopover *gbp_buildui_status_popover_new (IdeContext *context);
+void gbp_buildui_status_popover_set_page (GbpBuilduiStatusPopover *self,
+ const char *page);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]