[gtk+] image: background and border should be drawn around the widget
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] image: background and border should be drawn around the widget
- Date: Fri, 15 Jun 2012 00:49:30 +0000 (UTC)
commit d40c496e6eacb9f95c2b27eaebf58d320c2b9387
Author: Benjamin Otte <otte redhat com>
Date: Thu Jun 14 20:06:39 2012 +0200
image: background and border should be drawn around the widget
... not around the contents. If you want the widget to not be larger
than the contents, don't use ALIGN_FILL.
gtk/gtkimage.c | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
---
diff --git a/gtk/gtkimage.c b/gtk/gtkimage.c
index 14f3efc..e32b1b7 100644
--- a/gtk/gtkimage.c
+++ b/gtk/gtkimage.c
@@ -1384,6 +1384,13 @@ gtk_image_draw (GtkWidget *widget,
context = gtk_widget_get_style_context (widget);
+ gtk_render_background (context, cr,
+ 0, 0,
+ gtk_widget_get_allocated_width (widget), gtk_widget_get_allocated_height (widget));
+ gtk_render_frame (context, cr,
+ 0, 0,
+ gtk_widget_get_allocated_width (widget), gtk_widget_get_allocated_height (widget));
+
gtk_misc_get_alignment (misc, &xalign, &yalign);
gtk_image_get_preferred_size (image, &width, &height);
_gtk_misc_get_padding_and_border (misc, &border);
@@ -1391,11 +1398,8 @@ gtk_image_draw (GtkWidget *widget,
if (gtk_widget_get_direction (widget) != GTK_TEXT_DIR_LTR)
xalign = 1.0 - xalign;
- x = floor ((gtk_widget_get_allocated_width (widget) - width) * xalign);
- y = floor ((gtk_widget_get_allocated_height (widget) - height) * yalign);
-
- gtk_render_background (context, cr, x, y, width, height);
- gtk_render_frame (context, cr, x, y, width, height);
+ x = floor ((gtk_widget_get_allocated_width (widget) - width) * xalign) + border.left;
+ y = floor ((gtk_widget_get_allocated_height (widget) - height) * yalign) + border.top;
x += border.left;
y += border.top;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]