From c365e20d596587c4d6d8956cb71c3d4a97332db8 Mon Sep 17 00:00:00 2001 From: Christopher Lloyd Date: Sun, 3 Feb 2008 06:10:46 +0000 Subject: [PATCH] - Fixed problem with -[NSWindow setMenu:] causing window display prior to awakeFromNib - Changed some of the build install permissions from a-w to og-w as u-w was causing problems --- AppKit/AppKit.xcodeproj/project.pbxproj | 1 + AppKit/NSWindow.m | 5 ++++- AppKit/OpenGL.subproj/NSOpenGLView.m | 5 +++-- Cocoa/Cocoa.xcodeproj/project.pbxproj | 1 + Foundation/Foundation.xcodeproj/project.pbxproj | 1 + OpenGL/OpenGL.xcodeproj/project.pbxproj | 1 + objc/objc.xcodeproj/project.pbxproj | 1 + 7 files changed, 12 insertions(+), 3 deletions(-) diff --git a/AppKit/AppKit.xcodeproj/project.pbxproj b/AppKit/AppKit.xcodeproj/project.pbxproj index 236fca1f..7f7b5c4e 100644 --- a/AppKit/AppKit.xcodeproj/project.pbxproj +++ b/AppKit/AppKit.xcodeproj/project.pbxproj @@ -3427,6 +3427,7 @@ GCC_PREFIX_HEADER = ""; GCC_UNROLL_LOOPS = YES; INFOPLIST_FILE = Info.plist; + INSTALL_MODE_FLAG = "og-w,a+rX"; INSTALL_PATH = /Developer/Cocotron/1.0/Windows/i386/Frameworks; OTHER_CFLAGS = ( "-DAPPKIT_INSIDE_BUILD", diff --git a/AppKit/NSWindow.m b/AppKit/NSWindow.m index f150516f..e53524f7 100755 --- a/AppKit/NSWindow.m +++ b/AppKit/NSWindow.m @@ -1917,7 +1917,10 @@ NSString *NSWindowDidAnimateNotification=@"NSWindowDidAnimateNotification"; frame=[self frame]; frame.size.height+=(newSize.height-oldSize.height); - [self setFrame:frame display:YES]; + // no display because setMenu: is called before awakeFromNib + [self setFrame:frame display:NO]; + // do we even need this? + [_backgroundView setNeedsDisplay:YES]; } _menu=[menu copy]; diff --git a/AppKit/OpenGL.subproj/NSOpenGLView.m b/AppKit/OpenGL.subproj/NSOpenGLView.m index 4f28c433..93692c2c 100755 --- a/AppKit/OpenGL.subproj/NSOpenGLView.m +++ b/AppKit/OpenGL.subproj/NSOpenGLView.m @@ -81,7 +81,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI } -(void)update { - [[self openGLContext] update]; +// we don't want to create the context if it doesn't exist + [_context update]; } -(void)reshape { @@ -89,7 +90,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI } -(void)prepareOpenGL { -// do nothing? +// do nothing } -(BOOL)isOpaque { diff --git a/Cocoa/Cocoa.xcodeproj/project.pbxproj b/Cocoa/Cocoa.xcodeproj/project.pbxproj index 5200e2f6..c5a1ce94 100644 --- a/Cocoa/Cocoa.xcodeproj/project.pbxproj +++ b/Cocoa/Cocoa.xcodeproj/project.pbxproj @@ -298,6 +298,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PREFIX_HEADER = ""; INFOPLIST_FILE = Info.plist; + INSTALL_MODE_FLAG = "og-w,a+rX"; INSTALL_PATH = /Developer/Cocotron/1.0/Windows/i386/Frameworks; OTHER_CFLAGS = ( "-DCOCOA_INSIDE_BUILD", diff --git a/Foundation/Foundation.xcodeproj/project.pbxproj b/Foundation/Foundation.xcodeproj/project.pbxproj index 947a89d5..833e0f73 100644 --- a/Foundation/Foundation.xcodeproj/project.pbxproj +++ b/Foundation/Foundation.xcodeproj/project.pbxproj @@ -8514,6 +8514,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_UNROLL_LOOPS = YES; INFOPLIST_FILE = Info.plist; + INSTALL_MODE_FLAG = "og-w,a+rX"; INSTALL_PATH = /Developer/Cocotron/1.0/Windows/i386/Frameworks; OTHER_CFLAGS = ( "-DFOUNDATION_INSIDE_BUILD", diff --git a/OpenGL/OpenGL.xcodeproj/project.pbxproj b/OpenGL/OpenGL.xcodeproj/project.pbxproj index b3fa6c1b..bab59238 100644 --- a/OpenGL/OpenGL.xcodeproj/project.pbxproj +++ b/OpenGL/OpenGL.xcodeproj/project.pbxproj @@ -199,6 +199,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PREFIX_HEADER = ""; INFOPLIST_FILE = Info.plist; + INSTALL_MODE_FLAG = "og-w,a+rX"; INSTALL_PATH = /Developer/Cocotron/1.0/Windows/i386/Frameworks; OTHER_LDFLAGS = ( "-shared", diff --git a/objc/objc.xcodeproj/project.pbxproj b/objc/objc.xcodeproj/project.pbxproj index 78dda30f..4cba5d76 100644 --- a/objc/objc.xcodeproj/project.pbxproj +++ b/objc/objc.xcodeproj/project.pbxproj @@ -577,6 +577,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PREFIX_HEADER = ""; INFOPLIST_FILE = Info.plist; + INSTALL_MODE_FLAG = "og-w,a+rX"; INSTALL_PATH = /Developer/Cocotron/1.0/Windows/i386/Frameworks; OTHER_CFLAGS = ( "-DOBJC_INSIDE_BUILD",