aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--types/output/cursor.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/types/output/cursor.c b/types/output/cursor.c
index 41d99c12..2ddff8cd 100644
--- a/types/output/cursor.c
+++ b/types/output/cursor.c
@@ -533,6 +533,10 @@ void wlr_output_cursor_set_surface(struct wlr_output_cursor *cursor,
bool wlr_output_cursor_move(struct wlr_output_cursor *cursor,
double x, double y) {
+ // Scale coordinates for the output
+ x *= cursor->output->scale;
+ y *= cursor->output->scale;
+
if (cursor->x == x && cursor->y == y) {
return true;
}
@@ -541,11 +545,9 @@ bool wlr_output_cursor_move(struct wlr_output_cursor *cursor,
output_cursor_damage_whole(cursor);
}
- bool was_visible = cursor->visible;
- x *= cursor->output->scale;
- y *= cursor->output->scale;
cursor->x = x;
cursor->y = y;
+ bool was_visible = cursor->visible;
output_cursor_update_visible(cursor);
if (!was_visible && !cursor->visible) {