summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Hellstrom <thellstrom@vmware.com>2017-09-05 10:07:13 +0200
committerThomas Hellstrom <thellstrom@vmware.com>2017-09-07 12:43:29 +0200
commite96d175c7d2edf4639721bad83aa41e341e47952 (patch)
treea83e5bf5161bea27a6e93e0069854bc208474b46
parenta727c804a2c17db306c68e259ae845aa6382d3b1 (diff)
loader/dri3: Make sure we invalidate a drawable on size change
If we're seeing a drawable size change, in particular after processing a configure notify event, make sure we invalidate so that the state tracker picks up the new geometry. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
-rw-r--r--src/loader/loader_dri3_helper.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/loader/loader_dri3_helper.c b/src/loader/loader_dri3_helper.c
index 51e4e97fb2..bcd5a66ad2 100644
--- a/src/loader/loader_dri3_helper.c
+++ b/src/loader/loader_dri3_helper.c
@@ -348,6 +348,7 @@ dri3_handle_present_event(struct loader_dri3_drawable *draw,
draw->width = ce->width;
draw->height = ce->height;
draw->vtable->set_drawable_size(draw, draw->width, draw->height);
+ draw->ext->flush->invalidate(draw->dri_drawable);
break;
}
case XCB_PRESENT_COMPLETE_NOTIFY: {
@@ -1592,6 +1593,7 @@ loader_dri3_update_drawable_geometry(struct loader_dri3_drawable *draw)
draw->width = geom_reply->width;
draw->height = geom_reply->height;
draw->vtable->set_drawable_size(draw, draw->width, draw->height);
+ draw->ext->flush->invalidate(draw->dri_drawable);
free(geom_reply);
}