// 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>
private:
wxVarScrollHelperBase *m_scrollHelper;
- DECLARE_NO_COPY_CLASS(wxVarScrollHelperEvtHandler)
+ wxDECLARE_NO_COPY_CLASS(wxVarScrollHelperEvtHandler);
};
// ============================================================================
m_unitFirst = 0;
m_win =
- m_targetWindow = (wxWindow *)NULL;
+ m_targetWindow = NULL;
+ m_physicalScrolling = true;
m_handler = NULL;
m_win = win;
// to avoid flicker. We can't do this if we have children because they
// won't be scrolled
if ( m_targetWindow->GetChildren().empty() &&
- GetVisibleBegin() >= unitLastOld || GetVisibleEnd() <= unitFirstOld )
+ (GetVisibleBegin() >= unitLastOld || GetVisibleEnd() <= unitFirstOld) )
{
// the simplest case: we don't have any old units left, just redraw
// everything
}
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 )
+#endif
{
wxCoord dx = 0,
dy = GetUnitsSize(GetVisibleBegin(), unitFirstOld);