From d10a73f5093066753b13e08593bf01cc44bbdf72 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Fri, 29 Mar 2019 04:00:59 +0100 Subject: [PATCH] textview: Paint border windows in the right spot Fixes textview-border-windows reftest --- gtk/gtktextview.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c index 6da0b597e9..0f378211e8 100644 --- a/gtk/gtktextview.c +++ b/gtk/gtktextview.c @@ -637,6 +637,8 @@ static void text_window_size_allocate (GtkTextWindow *win, GdkRectangle *rect); static void text_window_invalidate (GtkTextWindow *win); +static gint text_window_get_x (GtkTextWindow *win); +static gint text_window_get_y (GtkTextWindow *win); static gint text_window_get_width (GtkTextWindow *win); static gint text_window_get_height (GtkTextWindow *win); @@ -5398,17 +5400,19 @@ paint_border_window (GtkTextView *text_view, GtkTextWindow *text_window, GtkStyleContext *context) { - gint w, h; + gint x, y, w, h; if (text_window == NULL) return; + x = text_window_get_x (text_window); + y = text_window_get_y (text_window); w = text_window_get_width (text_window); h = text_window_get_height (text_window); gtk_style_context_save_to_node (context, text_window->css_node); - gtk_snapshot_render_background (snapshot, context, 0, 0, w, h); + gtk_snapshot_render_background (snapshot, context, x, y, w, h); gtk_style_context_restore (context); } @@ -8981,6 +8985,18 @@ text_window_invalidate (GtkTextWindow *win) gtk_widget_queue_draw (win->widget); } +static gint +text_window_get_x (GtkTextWindow *win) +{ + return win->allocation.x; +} + +static gint +text_window_get_y (GtkTextWindow *win) +{ + return win->allocation.y; +} + static gint text_window_get_width (GtkTextWindow *win) {