mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-10 10:50:10 +00:00
Don't use impl->position_info.clip_rect for toplevels. (#107068, reported
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com> * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): Don't use impl->position_info.clip_rect for toplevels. (#107068, reported by Thomas Mirlacher)
This commit is contained in:
parent
df58bb7f8a
commit
ccfd33c5a5
@ -1,3 +1,9 @@
|
|||||||
|
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
|
||||||
|
Don't use impl->position_info.clip_rect for toplevels.
|
||||||
|
(#107068, reported by Thomas Mirlacher)
|
||||||
|
|
||||||
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
|
||||||
|
Don't use impl->position_info.clip_rect for toplevels.
|
||||||
|
(#107068, reported by Thomas Mirlacher)
|
||||||
|
|
||||||
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
|
||||||
|
Don't use impl->position_info.clip_rect for toplevels.
|
||||||
|
(#107068, reported by Thomas Mirlacher)
|
||||||
|
|
||||||
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
|
||||||
|
Don't use impl->position_info.clip_rect for toplevels.
|
||||||
|
(#107068, reported by Thomas Mirlacher)
|
||||||
|
|
||||||
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
|
||||||
|
Don't use impl->position_info.clip_rect for toplevels.
|
||||||
|
(#107068, reported by Thomas Mirlacher)
|
||||||
|
|
||||||
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
|
||||||
|
@ -402,7 +402,7 @@ gdk_window_scroll (GdkWindow *window,
|
|||||||
GdkRegion *invalidate_region;
|
GdkRegion *invalidate_region;
|
||||||
GdkWindowImplX11 *impl;
|
GdkWindowImplX11 *impl;
|
||||||
GdkWindowObject *obj;
|
GdkWindowObject *obj;
|
||||||
GdkRectangle dest_rect;
|
GdkRectangle src_rect, dest_rect;
|
||||||
|
|
||||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||||
|
|
||||||
@ -419,12 +419,23 @@ gdk_window_scroll (GdkWindow *window,
|
|||||||
if (obj->update_area)
|
if (obj->update_area)
|
||||||
gdk_region_offset (obj->update_area, dx, dy);
|
gdk_region_offset (obj->update_area, dx, dy);
|
||||||
|
|
||||||
invalidate_region = gdk_region_rectangle (&impl->position_info.clip_rect);
|
/* impl->position_info.clip_rect isn't meaningful for toplevels */
|
||||||
|
if (GDK_WINDOW_TYPE (window) == GDK_WINDOW_CHILD)
|
||||||
|
src_rect = impl->position_info.clip_rect;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
src_rect.x = 0;
|
||||||
|
src_rect.y = 0;
|
||||||
|
src_rect.width = impl->width;
|
||||||
|
src_rect.height = impl->height;
|
||||||
|
}
|
||||||
|
|
||||||
dest_rect = impl->position_info.clip_rect;
|
invalidate_region = gdk_region_rectangle (&src_rect);
|
||||||
|
|
||||||
|
dest_rect = src_rect;
|
||||||
dest_rect.x += dx;
|
dest_rect.x += dx;
|
||||||
dest_rect.y += dy;
|
dest_rect.y += dy;
|
||||||
gdk_rectangle_intersect (&dest_rect, &impl->position_info.clip_rect, &dest_rect);
|
gdk_rectangle_intersect (&dest_rect, &src_rect, &dest_rect);
|
||||||
|
|
||||||
if (dest_rect.width > 0 && dest_rect.height > 0)
|
if (dest_rect.width > 0 && dest_rect.height > 0)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user