diff options
author | Benjamin Franzke <benjaminfranzke@googlemail.com> | 2011-03-07 15:05:27 +0100 |
---|---|---|
committer | Kristian Høgsberg <krh@bitplanet.net> | 2011-04-22 10:11:12 -0400 |
commit | 0bf5285b44b0a8630a3b6a308e96fe7fd01572b0 (patch) | |
tree | 18577f6803688a9fb96b5135c80cb3f487f67d43 | |
parent | 589e581f76ef5aaa29499abaa82703745b69f7d5 (diff) |
Add buffer.damage request to the protocol
Thus remove the server-side used vfunc buffer::damage.
-rw-r--r-- | protocol/wayland.xml | 26 | ||||
-rw-r--r-- | wayland/wayland-server.h | 3 |
2 files changed, 18 insertions, 11 deletions
diff --git a/protocol/wayland.xml b/protocol/wayland.xml index f853c29..11976fa 100644 --- a/protocol/wayland.xml +++ b/protocol/wayland.xml @@ -110,9 +110,21 @@ <!-- A pixel buffer. Created using the drm, shm or similar objects. It has a size, visual and contents, but not a location on the - screen --> + screen. --> <interface name="wl_buffer" version="1"> - <!-- Abandon a buffer. This will invalidate the object id. --> + <!-- Notify the server that the specified area of the buffers + contents have changed. To describe a more complicated area + of damage, break down the region into rectangles and use this + request several times. + --> + <request name="damage"> + <arg name="x" type="int"/> + <arg name="y" type="int"/> + <arg name="width" type="int"/> + <arg name="height" type="int"/> + </request> + + <!-- Destroy a buffer. This will invalidate the object id. --> <request name="destroy" type="destructor"/> </interface> @@ -349,12 +361,10 @@ active? --> <request name="map_fullscreen"/> - <!-- Notify the server that the attached buffer's contents have - changed, and request a redraw. The arguments allow you to - damage only a part of the surface, but the server may ignore - it and redraw the entire contents of the surface. To - describe a more complicated area of damage, use this request - several times. --> + <!-- After attaching a new buffer, this request is used to + describe the regions where the new buffer is different from + the previous buffer and needs to be repainted. Coordinates + are relative to the new buffer. --> <request name="damage"> <arg name="x" type="int"/> <arg name="y" type="int"/> diff --git a/wayland/wayland-server.h b/wayland/wayland-server.h index 09ffcd1..e0909ed 100644 --- a/wayland/wayland-server.h +++ b/wayland/wayland-server.h @@ -125,9 +125,6 @@ struct wl_buffer { struct wl_visual *visual; int32_t width, height; void (*attach)(struct wl_buffer *buffer, struct wl_surface *surface); - void (*damage)(struct wl_buffer *buffer, - struct wl_surface *surface, - int32_t x, int32_t y, int32_t width, int32_t height); }; struct wl_listener { |