summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2023-02-17 17:01:45 -0800
committerChristian Hergert <chergert@redhat.com>2023-02-17 17:01:45 -0800
commit9e8d9e16afd15f37b8b7873d6dd21096767b94e7 (patch)
treee7d33a6c9d069e72c58dbc33935040a4756a8864
parent63b7c886e605ea9971315d05f82aad9da2f0c05f (diff)
downloadgtksourceview-9e8d9e16afd15f37b8b7873d6dd21096767b94e7.tar.gz
snippets: include top-margin in focus-position
-rw-r--r--gtksourceview/gtksourceview-snippets.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gtksourceview/gtksourceview-snippets.c b/gtksourceview/gtksourceview-snippets.c
index e538ddba..7cb4c68b 100644
--- a/gtksourceview/gtksourceview-snippets.c
+++ b/gtksourceview/gtksourceview-snippets.c
@@ -73,10 +73,15 @@ gtk_source_view_snippets_scroll_to_insert (GtkSourceViewSnippets *snippets)
GtkTextIter iter;
GdkRectangle area;
GdkRectangle visible_rect;
+ guint top_margin;
double x, y;
g_assert (snippets != NULL);
+ g_object_get (snippets->view,
+ "top-margin", &top_margin,
+ NULL);
+
mark = gtk_text_buffer_get_insert (GTK_TEXT_BUFFER (snippets->buffer));
gtk_text_buffer_get_iter_at_mark (GTK_TEXT_BUFFER (snippets->buffer), &iter, mark);
gtk_text_view_get_iter_location (GTK_TEXT_VIEW (snippets->view), &iter, &area);
@@ -97,7 +102,7 @@ gtk_source_view_snippets_scroll_to_insert (GtkSourceViewSnippets *snippets)
y = visible_rect.y;
gtk_adjustment_set_value (gtk_scrollable_get_hadjustment (GTK_SCROLLABLE (snippets->view)), x);
- gtk_adjustment_set_value (gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (snippets->view)), y);
+ gtk_adjustment_set_value (gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (snippets->view)), y + top_margin);
gtk_source_view_snippets_update_informative (snippets);
}