]> git.saurik.com Git - wxWidgets.git/commitdiff
call GTKUpdateCursor() from SetCursor()
authorVadim Zeitlin <vadim@wxwidgets.org>
Fri, 1 Sep 2006 21:44:22 +0000 (21:44 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Fri, 1 Sep 2006 21:44:22 +0000 (21:44 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/gtk/window.h
src/gtk/window.cpp

index fa4e459279c096236e4a34e0c3f7a04ca7b3e535..87003b1e6982eb3fbd25434d2fb2f2242efc1a11 100644 (file)
@@ -353,7 +353,7 @@ protected:
 
     // set the current cursor for all GdkWindows making part of this widget
     // (see GTKGetWindow)
-public:
+    //
     // should be called from OnInternalIdle() if it's overridden
     void GTKUpdateCursor();
 
index 65b0886c758f52a941255bec85a3d1bfeda1b67d..d9e6c899514141d04962a52330b991404db253a6 100644 (file)
@@ -1730,7 +1730,6 @@ gtk_window_motion_notify_callback( GtkWidget *widget,
         {
             // Rewrite cursor handling here (away from idle).
             win->SetCursor( cevent.GetCursor() );
-            win->GTKUpdateCursor();
         }
     }
 
@@ -1947,7 +1946,6 @@ gtk_window_enter_callback( GtkWidget *widget,
         {
             // Rewrite cursor handling here (away from idle).
             win->SetCursor( cevent.GetCursor() );
-            win->GTKUpdateCursor();
         }
     }
 
@@ -3536,15 +3534,12 @@ void wxWindowGTK::Lower()
 
 bool wxWindowGTK::SetCursor( const wxCursor &cursor )
 {
-    wxCHECK_MSG( (m_widget != NULL), false, wxT("invalid window") );
-
-    if (cursor == m_cursor)
-       return false;
+    if ( !wxWindowBase::SetCursor( cursor.Ok() ? cursor : *wxSTANDARD_CURSOR) )
+        return false;
 
-    if (g_isIdle)
-        wxapp_install_idle_handler();
+    GTKUpdateCursor();
 
-    return wxWindowBase::SetCursor( cursor.Ok() ? cursor : *wxSTANDARD_CURSOR );
+    return true;
 }
 
 void wxWindowGTK::GTKUpdateCursor()