From 5109ff026258965af56e72a0397151335c5685e3 Mon Sep 17 00:00:00 2001 From: Havoc Pennington Date: Fri, 22 Feb 2002 16:12:13 +0000 Subject: [PATCH] implement more cleanly by using text_window->allocation.x/y instead of 2002-02-22 Havoc Pennington * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by using text_window->allocation.x/y instead of recomputing it. Fixes a bug caused by leaving out the border width here. --- ChangeLog | 6 ++++++ ChangeLog.pre-2-0 | 6 ++++++ ChangeLog.pre-2-10 | 6 ++++++ ChangeLog.pre-2-2 | 6 ++++++ ChangeLog.pre-2-4 | 6 ++++++ ChangeLog.pre-2-6 | 6 ++++++ ChangeLog.pre-2-8 | 6 ++++++ gtk/gtktextview.c | 27 ++++++--------------------- 8 files changed, 48 insertions(+), 21 deletions(-) diff --git a/ChangeLog b/ChangeLog index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 97c065b699..b5d3d430cb 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,9 @@ +2002-02-22 Havoc Pennington + + * gtk/gtktextview.c (buffer_to_widget): implement more cleanly by + using text_window->allocation.x/y instead of recomputing it. + Fixes a bug caused by leaving out the border width here. + 2002-02-22 Havoc Pennington * gtk/gtktextview.c (changed_handler): call diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c index eb45173af7..6ef7ca1d55 100644 --- a/gtk/gtktextview.c +++ b/gtk/gtktextview.c @@ -43,6 +43,7 @@ #include "gtktextview.h" #include "gtkimmulticontext.h" #include "gdk/gdkkeysyms.h" +#include "gtksizegroup.h" /* FIXME http://bugzilla.gnome.org/show_bug.cgi?id=72258 */ #include "gtktextutil.h" #include "gtkwindow.h" #include @@ -6710,33 +6711,17 @@ buffer_to_widget (GtkTextView *text_view, gint buffer_y, gint *window_x, gint *window_y) -{ - gint focus_edge_width; - gboolean interior_focus; - gint focus_width; - - gtk_widget_style_get (GTK_WIDGET (text_view), - "interior_focus", &interior_focus, - "focus_line_width", &focus_width, - NULL); - - if (interior_focus) - focus_edge_width = 0; - else - focus_edge_width = focus_width; - +{ if (window_x) { - *window_x = buffer_x - text_view->xoffset + focus_edge_width; - if (text_view->left_window) - *window_x += text_view->left_window->allocation.width; + *window_x = buffer_x - text_view->xoffset; + *window_x += text_view->text_window->allocation.x; } if (window_y) { - *window_y = buffer_y - text_view->yoffset + focus_edge_width; - if (text_view->top_window) - *window_y += text_view->top_window->allocation.height; + *window_y = buffer_y - text_view->yoffset; + *window_y += text_view->text_window->allocation.y; } }