diff --git a/include/wx/osx/cocoa/private.h b/include/wx/osx/cocoa/private.h index 7c13d5897c..69b4d9795f 100644 --- a/include/wx/osx/cocoa/private.h +++ b/include/wx/osx/cocoa/private.h @@ -241,6 +241,10 @@ protected: // was the wx event for the current native key down event sent bool WasKeyDownSent() const; + + // Return the view to apply the font/colour to. + NSView* GetViewWithText() const; + NSEvent* m_lastKeyDownEvent; bool m_lastKeyDownWXSent; #if !wxOSX_USE_NATIVE_FLIPPED diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index 3336fa0fca..70de5721ab 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -3543,13 +3543,19 @@ void wxWidgetCocoaImpl::SetControlSize( wxWindowVariant variant ) } } +NSView* wxWidgetCocoaImpl::GetViewWithText() const +{ + if ( [m_osxView isKindOfClass:[NSScrollView class] ] ) + return [(NSScrollView*) m_osxView documentView]; + else if ( [m_osxView isKindOfClass:[NSBox class] ] ) + return [(NSBox*) m_osxView titleCell]; + + return m_osxView; +} + void wxWidgetCocoaImpl::SetFont(wxFont const& font) { - NSView* targetView = m_osxView; - if ( [m_osxView isKindOfClass:[NSScrollView class] ] ) - targetView = [(NSScrollView*) m_osxView documentView]; - else if ( [m_osxView isKindOfClass:[NSBox class] ] ) - targetView = [(NSBox*) m_osxView titleCell]; + NSView* const targetView = GetViewWithText(); if ([targetView respondsToSelector:@selector(setFont:)]) [targetView setFont: font.OSXGetNSFont()];