]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/vscroll.cpp
Check for m_treeCtrl!=NULL, [ wxwindows-Patches-1953459 ] wxGenericDirCtrl::SetFocus...
[wxWidgets.git] / src / generic / vscroll.cpp
index 530417aca39dc84bd630f1efac547552cd2054c2..a948519a9aa731cfe20d4b5cc425c890eaf463e4 100644 (file)
@@ -2,7 +2,7 @@
 // Name:        src/generic/vscroll.cpp
 // Purpose:     wxVScrolledWindow implementation
 // Author:      Vadim Zeitlin
 // Name:        src/generic/vscroll.cpp
 // Purpose:     wxVScrolledWindow implementation
 // Author:      Vadim Zeitlin
-// Modified by: Brad Anderson
+// Modified by: Brad Anderson, David Warkentin
 // Created:     30.05.03
 // RCS-ID:      $Id$
 // Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwindows.org>
 // Created:     30.05.03
 // RCS-ID:      $Id$
 // Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwindows.org>
@@ -157,6 +157,7 @@ wxVarScrollHelperBase::wxVarScrollHelperBase(wxWindow *win)
     m_win =
     m_targetWindow = (wxWindow *)NULL;
 
     m_win =
     m_targetWindow = (wxWindow *)NULL;
 
+    m_physicalScrolling = true;
     m_handler = NULL;
 
     m_win = win;
     m_handler = NULL;
 
     m_win = win;
@@ -600,7 +601,12 @@ bool wxVarScrollHelperBase::DoScrollToUnit(size_t unit)
     }
     else // scroll the window
     {
     }
     else // scroll the window
     {
+        // Avoid scrolling visible parts of the screen on Mac
+#ifdef __WXMAC__
+        if (m_physicalScrolling && m_targetWindow->IsShownOnScreen())
+#else
         if ( m_physicalScrolling )
         if ( m_physicalScrolling )
+#endif
         {
             wxCoord dx = 0,
                     dy = GetUnitsSize(GetVisibleBegin(), unitFirstOld);
         {
             wxCoord dx = 0,
                     dy = GetUnitsSize(GetVisibleBegin(), unitFirstOld);