mirror of
				https://github.com/cookiengineer/audacity
				synced 2025-11-03 23:53:55 +01:00 
			
		
		
		
	... an inline function in a header was declared to return bool, but returned nothing. Now its type is void. This function's undefined return value was not used anywhere.
		
			
				
	
	
		
			109 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 85106af5ce61eef45d2f416908a4ff7b64728124 Mon Sep 17 00:00:00 2001
 | 
						|
From: Paul Licameli <paul.licameli@audacityteam.org>
 | 
						|
Date: Wed, 7 Dec 2016 09:31:28 -0500
 | 
						|
Subject: [PATCH] Correctly track the full-screen state on OSX 10.7 and later
 | 
						|
 | 
						|
---
 | 
						|
 include/wx/osx/cocoa/private.h |  3 +++
 | 
						|
 src/osx/cocoa/nonownedwnd.mm   | 32 +++++++++++++++++++++++++++++++-
 | 
						|
 2 files changed, 34 insertions(+), 1 deletion(-)
 | 
						|
 | 
						|
diff --git a/include/wx/osx/cocoa/private.h b/include/wx/osx/cocoa/private.h
 | 
						|
index ed731f7..0743ae9 100644
 | 
						|
--- include/wx/osx/cocoa/private.h
 | 
						|
+++ include/wx/osx/cocoa/private.h
 | 
						|
@@ -239,6 +239,8 @@ public :
 | 
						|
 
 | 
						|
     virtual bool ShowFullScreen(bool show, long style);
 | 
						|
 
 | 
						|
+    void NotifyFullScreen( bool fullScreen ) { m_isFullScreen = fullScreen; }
 | 
						|
+
 | 
						|
     virtual void ShowWithoutActivating();
 | 
						|
 
 | 
						|
     virtual void RequestUserAttention(int flags);
 | 
						|
@@ -264,6 +266,7 @@ protected :
 | 
						|
     CGWindowLevel   m_macWindowLevel;
 | 
						|
     WXWindow        m_macWindow;
 | 
						|
     void *          m_macFullScreenData ;
 | 
						|
+    bool            m_isFullScreen;
 | 
						|
     DECLARE_DYNAMIC_CLASS_NO_COPY(wxNonOwnedWindowCocoaImpl)
 | 
						|
 };
 | 
						|
 
 | 
						|
diff --git a/src/osx/cocoa/nonownedwnd.mm b/src/osx/cocoa/nonownedwnd.mm
 | 
						|
index 9e79c6a..338bcf6 100644
 | 
						|
--- src/osx/cocoa/nonownedwnd.mm
 | 
						|
+++ src/osx/cocoa/nonownedwnd.mm
 | 
						|
@@ -302,6 +302,10 @@ static NSResponder* s_nextFirstResponder = NULL;
 | 
						|
 - (void)windowDidMove:(NSNotification *)notification;
 | 
						|
 - (BOOL)windowShouldClose:(id)window;
 | 
						|
 - (BOOL)windowShouldZoom:(NSWindow *)window toFrame:(NSRect)newFrame;
 | 
						|
+// - (void)windowWillEnterFullScreen:(NSNotification *)notification;
 | 
						|
+- (void)windowDidEnterFullScreen:(NSNotification *)notification;
 | 
						|
+// - (void)windowWillExitFullScreen:(NSNotification *)notification;
 | 
						|
+- (void)windowDidExitFullScreen:(NSNotification *)notification;
 | 
						|
 
 | 
						|
 @end
 | 
						|
 
 | 
						|
@@ -534,6 +538,20 @@ extern int wxOSXGetIdFromSelector(SEL action );
 | 
						|
     return true;
 | 
						|
 }
 | 
						|
 
 | 
						|
+- (void)windowDidEnterFullScreen:(NSNotification *)notification
 | 
						|
+{
 | 
						|
+   NSWindow* window = (NSWindow*) [notification object];
 | 
						|
+   wxNonOwnedWindowCocoaImpl* windowimpl = [window WX_implementation];
 | 
						|
+   windowimpl->NotifyFullScreen(true);
 | 
						|
+}
 | 
						|
+
 | 
						|
+- (void)windowDidExitFullScreen:(NSNotification *)notification
 | 
						|
+{
 | 
						|
+   NSWindow* window = (NSWindow*) [notification object];
 | 
						|
+   wxNonOwnedWindowCocoaImpl* windowimpl = [window WX_implementation];
 | 
						|
+   windowimpl->NotifyFullScreen(false);
 | 
						|
+}
 | 
						|
+
 | 
						|
 @end
 | 
						|
 
 | 
						|
 IMPLEMENT_DYNAMIC_CLASS( wxNonOwnedWindowCocoaImpl , wxNonOwnedWindowImpl )
 | 
						|
@@ -543,12 +561,14 @@ wxNonOwnedWindowCocoaImpl::wxNonOwnedWindowCocoaImpl( wxNonOwnedWindow* nonowned
 | 
						|
 {
 | 
						|
     m_macWindow = NULL;
 | 
						|
     m_macFullScreenData = NULL;
 | 
						|
+    m_isFullScreen = false;
 | 
						|
 }
 | 
						|
 
 | 
						|
 wxNonOwnedWindowCocoaImpl::wxNonOwnedWindowCocoaImpl()
 | 
						|
 {
 | 
						|
     m_macWindow = NULL;
 | 
						|
     m_macFullScreenData = NULL;
 | 
						|
+    m_isFullScreen = false;
 | 
						|
 }
 | 
						|
 
 | 
						|
 wxNonOwnedWindowCocoaImpl::~wxNonOwnedWindowCocoaImpl()
 | 
						|
@@ -924,11 +944,21 @@ typedef struct
 | 
						|
 
 | 
						|
 bool wxNonOwnedWindowCocoaImpl::IsFullScreen() const
 | 
						|
 {
 | 
						|
-    return m_macFullScreenData != NULL ;
 | 
						|
+    if ( [ m_macWindow respondsToSelector:@selector(toggleFullScreen:) ] )
 | 
						|
+       return m_isFullScreen;
 | 
						|
+   else
 | 
						|
+      return m_macFullScreenData != NULL ;
 | 
						|
 }
 | 
						|
 
 | 
						|
 bool wxNonOwnedWindowCocoaImpl::ShowFullScreen(bool show, long WXUNUSED(style))
 | 
						|
 {
 | 
						|
+    if ( [ m_macWindow respondsToSelector:@selector(toggleFullScreen:) ] )
 | 
						|
+    {
 | 
						|
+       if ( show != m_isFullScreen )
 | 
						|
+          m_isFullScreen = show, [m_macWindow toggleFullScreen: nil];
 | 
						|
+       return true;
 | 
						|
+    }
 | 
						|
+
 | 
						|
     if ( show )
 | 
						|
     {
 | 
						|
         FullScreenData *data = (FullScreenData *)m_macFullScreenData ;
 | 
						|
-- 
 | 
						|
2.3.2 (Apple Git-55)
 | 
						|
 |