[gtksourceview] hovercontext: track success count from providers
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtksourceview] hovercontext: track success count from providers
- Date: Thu, 21 Apr 2022 01:22:47 +0000 (UTC)
commit 54ddfa229e0532625c1fd2181464cc7f9603faaa
Author: Christian Hergert <chergert redhat com>
Date: Wed Apr 20 18:22:37 2022 -0700
hovercontext: track success count from providers
Only return success if at least one provider suceeded.
gtksourceview/gtksourcehovercontext.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
---
diff --git a/gtksourceview/gtksourcehovercontext.c b/gtksourceview/gtksourcehovercontext.c
index 36ef73c8..30b7a748 100644
--- a/gtksourceview/gtksourcehovercontext.c
+++ b/gtksourceview/gtksourcehovercontext.c
@@ -62,6 +62,7 @@ G_DEFINE_TYPE (GtkSourceHoverContext, gtk_source_hover_context, G_TYPE_OBJECT)
typedef struct
{
guint n_active;
+ guint n_success;
} Populate;
static void
@@ -239,10 +240,24 @@ gtk_source_hover_context_populate_cb (GObject *object,
g_clear_error (&error);
}
+ else
+ {
+ state->n_success++;
+ }
if (--state->n_active == 0)
{
- g_task_return_boolean (task, TRUE);
+ if (state->n_success > 0)
+ {
+ g_task_return_boolean (task, TRUE);
+ }
+ else
+ {
+ g_task_return_new_error (task,
+ G_IO_ERROR,
+ G_IO_ERROR_NOT_SUPPORTED,
+ "No hover providers populated the context");
+ }
}
g_object_unref (task);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]