Commit Graph

17890 Commits

Author SHA1 Message Date
Alexander Larsson
5378324a18 Ref imp even in non-native windows and don't NULL out in destroy so that get_screen works after destroy. 2009-04-02 10:15:18 +02:00
Alexander Larsson
e63de13f40 Correct type checks on gdk_window_set_group entry. 2009-04-02 10:15:18 +02:00
Alexander Larsson
40827b99db When creating native window, set the native background 2009-04-02 10:15:18 +02:00
Alexander Larsson
959d940812 Need to split up impl changing and reparenting so we can recompute abs_x/y inbetween 2009-04-02 10:15:17 +02:00
Alexander Larsson
26569bd54f Avoid flickering by using more temp unset bg 2009-04-02 10:15:17 +02:00
Alexander Larsson
c8bdac7508 Recompute abs_x/y before reparenting windows due to new native window parent 2009-04-02 10:15:17 +02:00
Alexander Larsson
acf1954f12 Don't destroy NULL region 2009-04-02 10:15:17 +02:00
Alexander Larsson
4202cc0c60 Fix gdk_window_get_root_origin and gdk_window_get_frame_extents when called on non-toplevels 2009-04-02 10:15:17 +02:00
Alexander Larsson
ed5564ee3a Ensure we show native window when creating them for already visible windows 2009-04-02 10:15:17 +02:00
Alexander Larsson
d73859fe16 Move native window showing/hiding out of is_impl, we may need to do this for emulated windows too 2009-04-02 10:15:17 +02:00
Alexander Larsson
9f2c97dd80 Ensure that we always invalidate newly exposed areas, as X may not (due to temp bg none) 2009-04-02 10:15:17 +02:00
Alexander Larsson
4a0cb4a240 Various fixes for native windows:
move_region_on_impl() - doesn't need to copy anything if dx/dy == 0
Ensure that we queue an update when invalidating an empty area but we have outstanding moves
Temporarily unset background when moving native child windows
2009-04-02 10:15:17 +02:00
Alexander Larsson
76e23f00da Update abs_x/y before moving native children 2009-04-02 10:15:17 +02:00
Alexander Larsson
4442463481 Move all native children (recursively) in gdk_window_scroll 2009-04-02 10:15:16 +02:00
Alexander Larsson
f6e1b0ac17 Ensure that we're properly hiding impl window if one of its parent non-impl windows are hidden
Also, add some debug printing code to list the GdkWindow tree
2009-04-02 10:15:16 +02:00
Alexander Larsson
a38e797941 Don't remove composited childrens area when processing updates
Handle shape when processing updates
Make sure we reset the old clips before setting new cairo clips
2009-04-02 10:15:16 +02:00
Alexander Larsson
890503099f Handle mask == NULL in shape_combine_mask 2009-04-02 10:15:16 +02:00
Alexander Larsson
d7e369c27a Implement input shapes 2009-04-02 10:15:16 +02:00
Alexander Larsson
e14e05addc Remove shape_combine_mask from backend. Make X11 backend use XShapeCombineMask directly to unset region 2009-04-02 10:15:16 +02:00
Alexander Larsson
4ba2b181bf Implement shaped windows 2009-04-02 10:15:16 +02:00
Alexander Larsson
062da50b9f Add _gdk_windowing_window_get_shape 2009-04-02 10:15:16 +02:00
Alexander Larsson
0d540e935b Create _gdk_drawable_create_cairo_surface to ugly typechecking 2009-04-02 10:15:15 +02:00
Alexander Larsson
0ba99e6e7b Make gdk_windowing_window_destroy a GdkWindowImpl method 2009-04-02 10:15:15 +02:00
Alexander Larsson
36ce54878b Make _gdk_windowing_window_queue_translation a GdkWindiwImpl call 2009-04-02 10:15:15 +02:00
Alexander Larsson
f22211c881 Remove unnecessary clear_area method in GdkWindowImpl 2009-04-02 10:15:15 +02:00
Alexander Larsson
d093be43e7 For implicit grabs, we grab the *event* window, not the pointer window 2009-04-02 10:15:15 +02:00
Alexander Larsson
83ee69740e Handle cursors right with grabs 2009-04-02 10:15:15 +02:00
Alexander Larsson
7b2b9a0219 Implement cursors 2009-04-02 10:15:15 +02:00
Alexander Larsson
f2b50ff638 Fix crossing event order and some details 2009-04-02 10:15:15 +02:00
Alexander Larsson
b771c9924d New approach to motion event handling 2009-04-02 10:15:11 +02:00
Alexander Larsson
afc81c9e64 gdk_window_draw_points() - make sure we use the offset points 2009-04-02 10:14:08 +02:00
Alexander Larsson
d74d94ce69 Implement flicker free handling of window moves/resizes 2009-04-02 10:14:08 +02:00
Alexander Larsson
1f5e104495 Add _gdk_pixmap_set_as_backing which is a way to get GraphicsExposures on pixmaps reported to the window they are backing store for 2009-04-02 10:14:08 +02:00
Alexander Larsson
5587130d48 Don't access event after freeing it 2009-04-02 10:14:08 +02:00
Alexander Larsson
1babb5400b Share the code to copy impl window regions w/ update_area 2009-04-02 10:14:08 +02:00
Alexander Larsson
dc0e339697 Don't actually clear background when mapped, as that causes ugly flashed. Just queue a repaint.
This is what the X backend does too.
2009-04-02 10:14:08 +02:00
Alexander Larsson
ee4211b9a8 Move flushing code to non-implicit-paint only call.
This is in preparation for other types of buffering
2009-04-02 10:14:08 +02:00
Alexander Larsson
62a52f8fd3 Don't include composited childen in window clip region, update region when setting composited 2009-04-02 10:14:08 +02:00
Alexander Larsson
191e8d1587 Ensure native window if composite requested 2009-04-02 10:14:08 +02:00
Alexander Larsson
a9ca08f6eb Don't draw on input_only windows 2009-04-02 10:14:07 +02:00
Alexander Larsson
bb709321f0 Store colormap on impl window (necessary for e.g. foreign windows) 2009-04-02 10:14:07 +02:00
Alexander Larsson
2fa6f32d8e When reparenting, remove from old parent before setting the new parent
(otherwise we remove from the wrong parent)
2009-04-02 10:14:07 +02:00
Alexander Larsson
7536708c4b Don't sent native MotionHint masks on pointer grabs as then we won't get enought motion events reported. 2009-04-02 10:14:07 +02:00
Alexander Larsson
533d3058b8 Fix some return value warnings 2009-04-02 10:14:07 +02:00
Alexander Larsson
ede9c2cf74 Handle gdk_window_get_impl_window on root window 2009-04-02 10:14:07 +02:00
Alexander Larsson
077eab6edf Clear to end of window if passing zero width or height to gdk_window_clear_area (fixes clist/ctree clearing) 2009-04-02 10:14:07 +02:00
Alexander Larsson
ec5d176278 Move gdk_window_get_deskrelative_origin to the GdkWindowImpl and make the common code handle abs_x/y 2009-04-02 10:14:07 +02:00
Alexander Larsson
891440d288 The double get_composite_drawable case can happen for pixmap targets too, so move the code to gdk_draw_drawable 2009-04-02 10:14:07 +02:00
Alexander Larsson
b6e84d3105 Fix draw_drawable being offset when using window as source (testgtk text test) 2009-04-02 10:14:07 +02:00
Alexander Larsson
ac637d9d15 gdk_bitmap_create_from_data - drawable may be NULL 2009-04-02 10:14:06 +02:00