ALT Linux Bugzilla
– Attachment 4459 Details for
Bug 23770
при прокрутке изображение не перерисовывается, если окно частично закрыто (+патч)
New bug
|
Search
|
[?]
|
Help
Register
|
Log In
[x]
|
Forgot Password
Login:
[x]
|
EN
|
RU
[patch]
patch2 - using event->region instead of event->area
0001-pixbuf-renderer-use-gdk_region_get_rectangles.patch (text/plain), 1.75 KB, created by
Vladislav Zavjalov
on 2010-07-14 14:56:09 MSD
(
hide
)
Description:
patch2 - using event->region instead of event->area
Filename:
MIME Type:
Creator:
Vladislav Zavjalov
Created:
2010-07-14 14:56:09 MSD
Size:
1.75 KB
patch
obsolete
>From 3844ac8753051b03e7f11f4625aaf7d84a01fe29 Mon Sep 17 00:00:00 2001 >From: Vladislav Zavjalov <slazav@altlinux.org> >Date: Wed, 14 Jul 2010 05:54:24 +0400 >Subject: [PATCH] pixbuf-renderer: use gdk_region_get_rectangles instead of event->area > >--- > gqview/src/pixbuf-renderer.c | 34 ++++++++++++++++------------------ > 1 files changed, 16 insertions(+), 18 deletions(-) > >diff --git a/gqview/src/pixbuf-renderer.c b/gqview/src/pixbuf-renderer.c >index b873010..726de7f 100644 >--- a/gqview/src/pixbuf-renderer.c >+++ b/gqview/src/pixbuf-renderer.c >@@ -607,29 +607,27 @@ static void pixbuf_renderer_get_property(GObject *object, guint prop_id, > > static gint pixbuf_renderer_expose(GtkWidget *widget, GdkEventExpose *event) > { >- if (GTK_WIDGET_DRAWABLE(widget)) >- { >- if (!GTK_WIDGET_NO_WINDOW(widget)) >- { >- if (event->window != widget->window) >- { >- GdkRectangle area; >+ GdkRectangle *rects; >+ int nrects, n; > >- gdk_window_get_position(event->window, &area.x, &area.y); >+ if (!GTK_WIDGET_DRAWABLE(widget)) return FALSE; >+ if (GTK_WIDGET_NO_WINDOW(widget)) return FALSE; > >- area.x += event->area.x; >- area.y += event->area.y; >- area.width = event->area.width; >- area.height = event->area.height; >- pixbuf_renderer_paint(PIXBUF_RENDERER(widget), &area); >- } >- else >- { >- pixbuf_renderer_paint(PIXBUF_RENDERER(widget), &event->area); >- } >+ gdk_region_get_rectangles(event->region, &rects, &nrects); >+ >+ for (n = 0; n < nrects; n++) >+ { >+ if (event->window != widget->window) >+ { >+ GdkRectangle area; >+ gdk_window_get_position(event->window, &area.x, &area.y); >+ rects[n].x += area.x; >+ rects[n].y += area.y; > } >+ pixbuf_renderer_paint(PIXBUF_RENDERER(widget), &rects[n]); > } > >+ g_free(rects); > return FALSE; > } > >-- >1.6.5.3 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 23770
:
4458
| 4459