summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/dri2/dri_drawable.c
diff options
context:
space:
mode:
authorJakob Bornecrantz <wallbraker@gmail.com>2009-03-04 00:35:33 +0100
committerJakob Bornecrantz <wallbraker@gmail.com>2009-03-04 00:35:33 +0100
commit28c325f8d3925d703a0cc5a3d3d3fa57b7f11fe4 (patch)
treeea3e03a08d06bad7f3a7f2b2eeb1941ec2c038ce /src/gallium/state_trackers/dri2/dri_drawable.c
parentb7b046150bc61604777baa8a57f81d770837bd10 (diff)
st/dri2: Hook up flush_frontbuffer
Doesn't do anything because we can't tell the X server about any changes to the fake front buffer.
Diffstat (limited to 'src/gallium/state_trackers/dri2/dri_drawable.c')
-rw-r--r--src/gallium/state_trackers/dri2/dri_drawable.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/dri2/dri_drawable.c b/src/gallium/state_trackers/dri2/dri_drawable.c
index 5c8f3ba866..8a00c6caf1 100644
--- a/src/gallium/state_trackers/dri2/dri_drawable.c
+++ b/src/gallium/state_trackers/dri2/dri_drawable.c
@@ -44,6 +44,15 @@
#include "util/u_memory.h"
+static void
+dri_copy_to_front(__DRIdrawablePrivate *dPriv,
+ struct pipe_surface *from,
+ int x, int y, unsigned w, unsigned h)
+{
+ /* TODO send a message to the Xserver to copy to the real front buffer */
+}
+
+
static struct pipe_surface *
dri_surface_from_handle(struct pipe_screen *screen,
unsigned handle,
@@ -185,6 +194,16 @@ dri_get_buffers(__DRIdrawablePrivate *dPriv)
void
+dri_flush_frontbuffer(struct pipe_screen *screen,
+ struct pipe_surface *surf,
+ void *context_private)
+{
+ struct dri_context *ctx = (struct dri_context *)context_private;
+ dri_copy_to_front(ctx->dPriv, surf, 0, 0, surf->width, surf->height);
+}
+
+
+void
dri_swap_buffers(__DRIdrawablePrivate * dPriv)
{
/* not needed for dri2 */