Merge pull request #1289 from ixru/fix-cursor-visibility

Fix cursor visibility on surface commit
This commit is contained in:
Drew DeVault 2018-10-21 19:19:02 +02:00 committed by GitHub
commit 6c7e0e48b1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -853,6 +853,7 @@ static void output_cursor_commit(struct wlr_output_cursor *cursor,
cursor->enabled = wlr_surface_has_buffer(surface); cursor->enabled = wlr_surface_has_buffer(surface);
cursor->width = surface->current.width * cursor->output->scale; cursor->width = surface->current.width * cursor->output->scale;
cursor->height = surface->current.height * cursor->output->scale; cursor->height = surface->current.height * cursor->output->scale;
output_cursor_update_visible(cursor);
if (update_hotspot) { if (update_hotspot) {
cursor->hotspot_x -= surface->current.dx * cursor->output->scale; cursor->hotspot_x -= surface->current.dx * cursor->output->scale;
cursor->hotspot_y -= surface->current.dy * cursor->output->scale; cursor->hotspot_y -= surface->current.dy * cursor->output->scale;
@ -915,10 +916,9 @@ void wlr_output_cursor_set_surface(struct wlr_output_cursor *cursor,
if (surface != NULL) { if (surface != NULL) {
wl_signal_add(&surface->events.commit, &cursor->surface_commit); wl_signal_add(&surface->events.commit, &cursor->surface_commit);
wl_signal_add(&surface->events.destroy, &cursor->surface_destroy); wl_signal_add(&surface->events.destroy, &cursor->surface_destroy);
output_cursor_commit(cursor, false);
cursor->visible = false; cursor->visible = false;
output_cursor_update_visible(cursor); output_cursor_commit(cursor, false);
} else { } else {
cursor->enabled = false; cursor->enabled = false;
cursor->width = 0; cursor->width = 0;