diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2016-04-15 19:34:15 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2016-04-15 19:35:00 +0100 |
commit | c3dc8310575acdbbef4565f53644384c7ce4a6f5 (patch) | |
tree | b830f624d5eebe49fadb17dca6f99995797252e1 | |
parent | d30d276aeebe666e2c71a275bb2c71781c75448b (diff) |
sna: Mark the transformed cursor image as dirty
So that when we size from transformed cursors to non-transformed, we
remember to clear the entire area.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r-- | src/sna/sna_display.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c index ff80a4e3..3b5ae87d 100644 --- a/src/sna/sna_display.c +++ b/src/sna/sna_display.c @@ -5684,8 +5684,14 @@ static struct sna_cursor *__sna_get_cursor(struct sna *sna, xf86CrtcPtr crtc) cursor->rotation = rotation; cursor->transformed = transformed; cursor->serial = sna->cursor.serial; - cursor->last_width = width; - cursor->last_height = height; + if (transformed) { + /* mark the transformed rectangle as dirty, not input */ + cursor->last_width = size; + cursor->last_height = size; + } else { + cursor->last_width = width; + cursor->last_height = height; + } return cursor; } |