diff options
author | Jonas Ådahl <jadahl@gmail.com> | 2019-01-03 16:40:42 +0100 |
---|---|---|
committer | Jonas Ådahl <jadahl@gmail.com> | 2019-01-16 17:09:51 +0000 |
commit | c45d5f53ff0f96855319dce968b5082bcc5f37ed (patch) | |
tree | ce84e8d3f1f46a7d8c3c0a5e37f48f4592391de6 | |
parent | 4e402b397267169e578005cd89bb5bbdaf70853b (diff) | |
download | mutter-c45d5f53ff0f96855319dce968b5082bcc5f37ed.tar.gz |
cursor-tracker: Emit `cursor-changed` after renderer was updated
Otherwise the cursor retrieved via meta_cursor_renderer_get_cursor() is
out of date.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/357
-rw-r--r-- | src/backends/meta-cursor-tracker.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/backends/meta-cursor-tracker.c b/src/backends/meta-cursor-tracker.c index 7ff0e7b0c..0d49327f4 100644 --- a/src/backends/meta-cursor-tracker.c +++ b/src/backends/meta-cursor-tracker.c @@ -118,11 +118,15 @@ change_cursor_renderer (MetaCursorTracker *tracker) static void sync_cursor (MetaCursorTracker *tracker) { - if (update_displayed_cursor (tracker)) - g_signal_emit (tracker, signals[CURSOR_CHANGED], 0); + gboolean cursor_changed = FALSE; + + cursor_changed = update_displayed_cursor (tracker); if (update_effective_cursor (tracker)) change_cursor_renderer (tracker); + + if (cursor_changed) + g_signal_emit (tracker, signals[CURSOR_CHANGED], 0); } static void |