summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
841e47c)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52018
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
break ;
case kEventControlVisibilityChanged :
break ;
case kEventControlVisibilityChanged :
- thisWindow->MacVisibilityChanged() ;
+ // we might have two native controls attributed to the same wxWindow instance
+ // eg a scrollview and an embedded textview, make sure we only fire for the 'outer'
+ // control, as otherwise native and wx visibility are different
+ if ( thisWindow->GetPeer() != NULL && thisWindow->GetPeer()->GetControlRef() == controlRef )
+ {
+ thisWindow->MacVisibilityChanged() ;
+ }
break ;
case kEventControlEnabledStateChanged :
break ;
case kEventControlEnabledStateChanged :
{
#if TARGET_API_MAC_OSX
if ( m_peer && m_peer->Ok() )
{
#if TARGET_API_MAC_OSX
if ( m_peer && m_peer->Ok() )
+ {
+ bool peerVis = m_peer->IsVisible();
+ bool wxVis = wxWindowBase::IsShownOnScreen();
+ if( peerVis != wxVis )
+ {
+ wxVis = wxWindowBase::IsShownOnScreen();
+ return wxVis;
+ }
+
return m_peer->IsVisible();
return m_peer->IsVisible();
#endif
return wxWindowBase::IsShownOnScreen();
#endif
return wxWindowBase::IsShownOnScreen();