On 2/7/20 4:17 AM, Gerd Hoffmann wrote:
When specified just set null_cursor to NULL so we get the default
pointer instead of a blank pointer.
Signed-off-by: Gerd Hoffmann <kraxel@xxxxxxxxxx>
---
ui/gtk.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ui/gtk.c b/ui/gtk.c
index d18892d1de61..a685d1ae0848 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -2243,8 +2243,12 @@ static void gtk_display_init(DisplayState *ds, DisplayOptions *opts)
textdomain("qemu");
window_display = gtk_widget_get_display(s->window);
- s->null_cursor = gdk_cursor_new_for_display(window_display,
- GDK_BLANK_CURSOR);
+ if (s->opts->has_show_cursor && s->opts->show_cursor) {
+ s->null_cursor = NULL; /* default pointer */
+ } else {
+ s->null_cursor = gdk_cursor_new_for_display(window_display,
+ GDK_BLANK_CURSOR);
+ }
I think it would make more sense to have all the logic related to what
cursor is used in the same location, instead of split up between here
and gd_update_cursor(). This would also match the behavior of the SDL
and cocoa backends a little better.
s->mouse_mode_notifier.notify = gd_mouse_mode_change;
qemu_add_mouse_mode_change_notifier(&s->mouse_mode_notifier);