Kristian Rietveld
48b6b939d3
Implement process_updates_recurse for GdkOffscreenWindow
...
Makes offscreen windows work again.
2010-12-22 20:41:39 +01:00
Matthias Clasen
928fd84ebf
Implement some more vfuncs in GdkOffscreenWindow
2010-12-21 14:20:19 -05:00
Benjamin Otte
d55073fde6
gdk: Remove depth argument from GdkWindowImpl->get_geometry()
2010-12-06 01:02:52 +01:00
Benjamin Otte
17a0a467a1
gdk: Pass the GdkWindow to resize_cairo_surface vfunc
...
So it's in sync with all the other vfuncs.
2010-12-02 20:21:04 +01:00
Benjamin Otte
d1700d6e3c
gdk: Move ref_cairo_surface from GdkDrawable to GdkWindowImpl
...
Also make it take the actual GdkWindow, not the implementation, like all
the other vfuncs do.
2010-12-02 20:21:03 +01:00
Benjamin Otte
1bb6f48bb3
gdk: Rename GdkWindowObject to GdkWindow
...
... and remove most of the casting that used to be necessary.
2010-12-02 20:21:03 +01:00
Benjamin Otte
7acb64f983
gdk: Make GdkWindowImpl a class, not an interface
...
It's a subclass of GdkDrawable and the baseclass for GdkWindowImplX11
etc now.
2010-12-02 20:21:02 +01:00
Benjamin Otte
62622a94ae
gdk: Pass Drawable as argument
...
We're not passing a GdKWindow here, but the implementation.
2010-12-02 20:21:02 +01:00
Benjamin Otte
072498ae87
gdk: Make _gdk_window_ref_cairo_surface() protected and use it
...
... instead of _gdk_drawable_ref_cairo_surface() where appropriate.
Also, don't implement the drawable->create_cairo_surface vfunc anymore.
This is in preparation for the split of GdkWindow from GdkDrawable.
2010-12-02 20:21:02 +01:00
Milan Bouchet-Valat
2e3935ba9d
Fix missing (transfer) annotations in GDK
...
Mostly missing (transfer none).
2010-11-24 21:37:20 +01:00
Michael Natterer
0f2d1547f8
gdk: add alpha to the offscreen window's surface if its visual is RGBA
2010-10-20 17:44:23 +02:00
Matthias Clasen
bda1f35585
Inclusion cleanups in sources
...
Try to do inclusions in the same sequence, more or less.
2010-10-14 22:09:36 -04:00
Michael Natterer
9d9742f1e5
Bug 631599 - Allow to use arbitrary surfaces for offscreen windows
...
Add signal GdkWindow::create-surface which allows to use any
surface type as storage for offscreen windows.
Test the new signal in tests/gdkoffscreenbox.c
2010-10-14 13:25:23 +02:00
Michael Natterer
bef6c0a4a3
Bug 631599 - Allow to use arbitrary surfaces for offscreen windows
...
As a first step, create surfaces lazily and factor surface creation
out to a single function.
2010-10-12 11:34:20 +02:00
Kristian Rietveld
eca2af5230
Make set_cairo_surface_size a vfunc on GdkWindowImpl
...
Note the special implementation of this method on GdkOffscreenWindow
that makes sure its current surface is not destroyed.
2010-10-05 15:38:23 +02:00
Michael Natterer
06773b1e8b
gdk: remove "screen" member from GdkOffscreenWindow, it has become obsolete
...
Also remove screen parameter from _gdk_offscreen_window_new() and get
rid of a bunch on includes in gdkoffscreenwindow.c
2010-09-28 16:05:38 +02:00
Benjamin Otte
fd200f07f5
gdk: No need to clear offscreen window when showing
...
I don't think it's necessary to clear the backing surface when showing
the window, as we're going to repaint it anyway. If it's needed, we can
implement it again using internal APIs, as the public window_clear()
APIs are going away.
2010-09-26 15:11:43 +02:00
Benjamin Otte
04d5c477aa
API: Remove gdk_drawable_get_colormap()
...
And with it, remove any notion of colormaps from GdkWindow. In
particular, X11 windows will now not set attrs.colormap when calling
XCreateWindow.
2010-09-26 15:11:33 +02:00
Benjamin Otte
f08254074c
API: Remove colormap member from GdkWindowAttr
...
Also remove all code that cares about differing colormaps for child
windows.
2010-09-26 15:11:33 +02:00
Benjamin Otte
b5097de481
gdk: gdk_drawable_get_display() => gdk_window_get_display()
2010-09-26 15:11:33 +02:00
Benjamin Otte
a6ef356107
API: Remove drawable getters for visual, screen and depth
...
Removed and replaced are:
gdk_drawable_get_visual() => gdk_window_get_visual()
gdk_drawable_get_screen() => gdk_window_get_screen()
gdk_drawable_get_depth() => gdk_visual_get_depth
(gdk_window_get_visual())
2010-09-26 15:11:33 +02:00
Benjamin Otte
eee6c002d1
gdk: store the visual in the GdkWindowObject
2010-09-26 15:11:32 +02:00
Benjamin Otte
894d402c0f
API: Remove gdk_drawable_set_colormap()
2010-09-26 15:11:32 +02:00
Benjamin Otte
6a2124d566
gdk: Remove _gdk_drawable_get_source_drawable()
...
Now that we don't create pixmaps anymore, this function is not needed
anymore. The indirection it did previously is now basically moved to
gdk_window_create_similar_surface()
2010-09-26 15:11:31 +02:00
Benjamin Otte
332652f702
API: Change offscreen windows to use a cairo_surface_t
...
This requires changes to all the offscreen surface getters that used to
return a GdkPixmap before.
2010-09-26 15:11:29 +02:00
Benjamin Otte
d04bb38b28
gdk: offscreen window source drawable now is the root window
...
As the source drawable is only used for creating pixmaps these days, we
don't have to keep a real drawable around, but can just use the root
window.
2010-09-26 15:11:11 +02:00
Benjamin Otte
2c1633699f
gdk: Rewrite background handling
...
Now the window background is a cairo_pattern_t. The backends will try to
set this as good as they can on the windowing system, but no guarantees
are made on wether the windowing system supports the pattern.
Also gets rid of GDK_NO_BG as undefined behavior is not a good idea to
support, and GDK_NO_BG effectively made the window's contents undefined.
It wasn't effectively used in GTK anyway.
2010-09-26 15:03:00 +02:00
Benjamin Otte
4b57560666
gdk: Don't use clear_area_e() in offscreenwindow
...
Instead, call gdk_window_invalidate_rect() ourselves.
2010-09-26 15:02:59 +02:00
Javier Jardón
bd277fad50
Remove deprecated gdk_window_get_deskrelative_origin() and its implementations
2010-09-09 00:50:46 +02:00
Matthias Clasen
075661d376
generic damage generation for offscreen windows
...
Generating damage from gdk drawing api doesn't help for cairo rendering
...and the gdk drawing api is gone anyway. Bug 621571
2010-08-10 21:02:30 +02:00
Benjamin Otte
1308731580
gdk: Don't require allocating window background colors anymore
...
X!! allocates the colors itself now.
2010-08-10 21:02:30 +02:00
Benjamin Otte
6a48a042c7
API: remove GdkGC
...
XXX: Some traces in the win32 code are left. I suppose they'd best be
replaced using Cairo.
2010-08-10 21:02:29 +02:00
Benjamin Otte
4c16995868
gdk: remove get_composite_drawable vfunc
...
The vfunc is not used anymore.
2010-08-10 21:02:29 +02:00
Benjamin Otte
61d4a019f8
API: remove gdk_draw_drawable()
2010-08-10 21:02:29 +02:00
Benjamin Otte
65ac54bb23
gdk: Make window moves a custom vfunc
...
The window move code needs special attention for multiple reasons:
- invalid areas for expose events need to be modified
- self-copy is not supported by Cairo
- in X11, copying from an overlapped Window might cause unexposed areas
to be copied in, spo expose events for those need to be generated.
This was all special cased in various parts of the code. By making it an
explicit vfunc, we can work around it.
2010-08-10 21:02:28 +02:00
Benjamin Otte
600fbd3e74
API: remove gdk_draw_rectangle()
2010-08-10 21:02:28 +02:00
Benjamin Otte
9ee5176492
API: remove gdk_draw_point(s)
2010-08-10 21:02:27 +02:00
Benjamin Otte
a9e99e7f5b
API: remove gdk_draw_{line,lines,segments}
...
Those were the 3 intermixed line drawing calls.
2010-08-10 21:02:27 +02:00
Benjamin Otte
e85dfc7cc4
API: remove gdk_draw_polygon()
2010-08-10 21:02:27 +02:00
Benjamin Otte
559ae63f01
API: remove gdk_draw_arc()
2010-08-10 21:02:27 +02:00
Benjamin Otte
6f5084551a
API: remove gdk_drawable_copy_to_image()
2010-08-10 21:02:26 +02:00
Benjamin Otte
b926ce719b
API: remove gdk_draw_image()
2010-08-10 21:02:26 +02:00
Benjamin Otte
4f8dbd4a8d
API: Remove gdk_draw_pixbuf()
2010-08-10 21:02:25 +02:00
Benjamin Otte
2db020890e
offscreenwindow: Copy old to new pixmap using Cairo
2010-07-26 16:42:49 +02:00
Javier Jardón
404e7d0e00
gdk/: fully remove gdkalias hacks
...
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:21:31 +02:00
Benjamin Otte
300e6b84cd
s/GdkRegion/cairo_region_t/ in all of gtk
...
https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-06-29 16:06:38 +02:00
Benjamin Otte
3e96cfe8fc
Deprecate the GdkRegion API
...
Includes fixing all callers to use the cairo region API instead. This is
usually just replacing the function names, the only difference is
gdk_region_get_rectangles() being replaced by
cairo_region_num_rectangles() and cairo_region_get_rectangle() which
required a bit more work.
https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-06-29 16:06:38 +02:00
Javier Jardón
4cf4470fcd
Remove deprecated GdkDrawable functions
...
Remove gdk_drawable_get_data(), gdk_drawable_set_data(),
gdk_drawable_ref(), gdk_drawable_unref(),
gdk_draw_string(), gdk_draw_text(), gdk_draw_text_wc()
2010-06-19 21:39:22 +02:00
Matthias Clasen
bd4609b140
Merge the xi2-for-master branch
2010-05-25 18:38:44 -04:00
Matthias Clasen
aadb190b77
Fix a thinko in computing damage for segments
...
The code was not taking the endpoint of the first segment into account.
This was reported in bug 604747.
2009-12-18 19:17:04 -05:00