X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f86190702bb433f139dc2c335e2c551755def81f..07aec89fe1e7bad8010911aa8863efecfa909946:/src/osx/window_osx.cpp diff --git a/src/osx/window_osx.cpp b/src/osx/window_osx.cpp index 1a44f25e42..afbf5a0a32 100644 --- a/src/osx/window_osx.cpp +++ b/src/osx/window_osx.cpp @@ -4,7 +4,6 @@ // Author: Stefan Csomor // Modified by: // Created: 1998-01-01 -// RCS-ID: $Id$ // Copyright: (c) Stefan Csomor // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -416,6 +415,9 @@ bool wxWindowMac::Create(wxWindowMac *parent, m_windowVariant = parent->GetWindowVariant() ; + m_hScrollBarAlwaysShown = + m_vScrollBarAlwaysShown = HasFlag(wxALWAYS_SHOW_SB); + if ( m_peer != kOSXNoWidgetImpl ) { SetPeer(wxWidgetImpl::CreateUserPane( this, parent, id, pos, size , style, GetExtraStyle() )); @@ -872,16 +874,22 @@ void wxWindowMac::DoGetClientSize( int *x, int *y ) const #endif if (x) - *x = ww; + { + // we shouldn't return invalid width + if ( ww < 0 ) + ww = 0; + + *x = ww; + } + if (y) - *y = hh; -} - -double wxWindowMac::GetMagnificationFactor() const -{ - wxNonOwnedWindow* tlw = MacGetTopLevelWindow() ; - wxCHECK_MSG( tlw , 1.0, wxT("TopLevel Window missing") ) ; - return tlw->GetMagnificationFactor(); + { + // we shouldn't return invalid height + if ( hh < 0 ) + hh = 0; + + *y = hh; + } } bool wxWindowMac::SetCursor(const wxCursor& cursor) @@ -1226,7 +1234,7 @@ void wxWindowMac::DoSetClientSize(int clientwidth, int clientheight) } } -float wxWindowMac::GetContentScaleFactor() const +double wxWindowMac::GetContentScaleFactor() const { return GetPeer()->GetContentScaleFactor(); } @@ -2537,6 +2545,11 @@ bool wxWindowMac::OSXHandleClicked( double WXUNUSED(timestampsec) ) return false; } +void *wxWindowMac::OSXGetViewOrWindow() const +{ + return GetHandle(); +} + wxInt32 wxWindowMac::MacControlHit(WXEVENTHANDLERREF WXUNUSED(handler) , WXEVENTREF event ) { #if wxOSX_USE_COCOA_OR_CARBON