From fd049a54658f674b84ce8e4ed7da643d66c7fb2e Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Sat, 1 Feb 2014 18:26:21 +0000 Subject: [PATCH] restore non-default cursors in native widgets when unsetting wxCursor git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/gtk/window.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index e855d9fdc8..1a6acff4e2 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -3695,6 +3695,17 @@ void wxWindowGTK::GTKUpdateCursor() gdk_window_set_cursor(window, cursor); } } + if (window && cursor == NULL && m_wxwindow == NULL) + { + void* data; + gdk_window_get_user_data(window, &data); + if (data) + { + // encourage native widget to restore any non-default cursors + GtkStateType state = gtk_widget_get_state(GTK_WIDGET(data)); + g_signal_emit_by_name(data, "state-changed", state); + } + } } void wxWindowGTK::WarpPointer( int x, int y )