diff --git a/Launcher2/Gui/Screens/ClassiCubeScreen.cs b/Launcher2/Gui/Screens/ClassiCubeScreen.cs index 0fe5d103d..73b3712d0 100644 --- a/Launcher2/Gui/Screens/ClassiCubeScreen.cs +++ b/Launcher2/Gui/Screens/ClassiCubeScreen.cs @@ -36,12 +36,14 @@ namespace Launcher2 { if( !session.Working ) { if( session.Exception != null ) { DisplayWebException( session.Exception, session.Status ); + } else if( HasServers ) { + game.SetScreen( new ClassiCubeServersScreen( game ) ); + return; } signingIn = false; game.MakeBackground(); Resize(); - } - + } } void LoadSavedInfo( IDrawer2D drawer ) { diff --git a/Launcher2/Gui/Screens/ClassiCubeServersScreen.cs b/Launcher2/Gui/Screens/ClassiCubeServersScreen.cs index 16b36777d..617ead7fb 100644 --- a/Launcher2/Gui/Screens/ClassiCubeServersScreen.cs +++ b/Launcher2/Gui/Screens/ClassiCubeServersScreen.cs @@ -79,7 +79,7 @@ namespace Launcher2 { MakeButtonAt( "Connect", 100, 30, titleFont, Anchor.LeftOrTop, 180, 5, ConnectToServer ); MakeButtonAt( "Back", 70, 30, titleFont, Anchor.LeftOrTop, - 195, 50, (x, y) => game.SetScreen( new MainScreen( game ) ) ); + 195, 50, (x, y) => game.SetScreen( new ClassiCubeScreen( game ) ) ); MakeTableWidget(); } diff --git a/OpenTK/Platform/MacOS/CarbonGLNative.cs b/OpenTK/Platform/MacOS/CarbonGLNative.cs index 0b64ea2e6..aff78e5d6 100644 --- a/OpenTK/Platform/MacOS/CarbonGLNative.cs +++ b/OpenTK/Platform/MacOS/CarbonGLNative.cs @@ -203,7 +203,7 @@ namespace OpenTK.Platform.MacOS { protected OSStatus EventHandler( IntPtr inCaller, IntPtr inEvent, IntPtr userData ) { // bail out if the window passed in is not actually our window. - if( userData != window.WindowRef) + if( window == null || userData != window.WindowRef ) return OSStatus.EventNotHandled; EventInfo evt = new EventInfo(inEvent);