diff --git a/ClassicalSharp/2D/Drawing/CanvasDrawer2D.cs b/ClassicalSharp/2D/Drawing/CanvasDrawer2D.cs
index 1336dfe81..076d9bb73 100644
--- a/ClassicalSharp/2D/Drawing/CanvasDrawer2D.cs
+++ b/ClassicalSharp/2D/Drawing/CanvasDrawer2D.cs
@@ -39,12 +39,6 @@ namespace ClassicalSharp {
brush.SetStyle( Paint.Style.FillAndStroke );
}
- [Obsolete]
- public override void DrawRoundedRect( FastColour colour, float radius, float x, float y, float width, float height ) {
- RectF rec = new RectF( x, y, x + width, y + height );
- c.DrawRoundRect( rec, radius, radius, GetOrCreateBrush( colour ) );
- }
-
public override void Clear( FastColour colour ) {
c.DrawColor( colour );
}
diff --git a/ClassicalSharp/2D/Drawing/GdiPlusDrawer2D.cs b/ClassicalSharp/2D/Drawing/GdiPlusDrawer2D.cs
index af1d74152..2b10e4f10 100644
--- a/ClassicalSharp/2D/Drawing/GdiPlusDrawer2D.cs
+++ b/ClassicalSharp/2D/Drawing/GdiPlusDrawer2D.cs
@@ -38,27 +38,6 @@ namespace ClassicalSharp {
}
}
- [Obsolete("Method is not guaranteed to work on all platforms.")]
- public override void DrawRoundedRect( FastColour colour, float radius, float x, float y, float width, float height ) {
- GraphicsPath path = new GraphicsPath();
- float x1 = x, y1 = y, x2 = x + width, y2 = y + height;
-
- float r = radius, dia = radius * 2;
- path.AddArc( x1, y1, dia, dia, 180, 90 );
- path.AddLine( x1 + r, y1, x2 - r, y1 );
- path.AddArc( x2 - dia, y1, dia, dia, 270, 90 );
- path.AddLine( x2, y1 + r, x2, y2 - r );
- path.AddArc( x2 - dia, y2 - dia, dia, dia, 0, 90 );
- path.AddLine( x1 + r, y2, x2 - r, y2 );
- path.AddArc( x1, y2 - dia, dia, dia, 90, 90 );
- path.AddLine( x1, y1 + r, x1, y2 - r );
- path.CloseAllFigures();
-
- using( Brush brush = new SolidBrush( colour ) )
- g.FillPath( brush, path );
- path.Dispose();
- }
-
public override void Clear( FastColour colour ) {
g.Clear( colour );
}
diff --git a/ClassicalSharp/2D/Drawing/IDrawer2D.cs b/ClassicalSharp/2D/Drawing/IDrawer2D.cs
index 6cb260358..3e9a8c6fd 100644
--- a/ClassicalSharp/2D/Drawing/IDrawer2D.cs
+++ b/ClassicalSharp/2D/Drawing/IDrawer2D.cs
@@ -32,11 +32,6 @@ namespace ClassicalSharp {
/// at the specified coordinates in the currently bound bitmap.
public abstract void DrawRectBounds( FastColour colour, float lineWidth, int x, int y, int width, int height );
- /// Draws a 2D rectangle with rounded borders of the specified dimensions
- /// at the specified coordinates in the currently bound bitmap.
- [Obsolete("Method is not guaranteed to work on all platforms.")]
- public abstract void DrawRoundedRect( FastColour colour, float radius, float x, float y, float width, float height );
-
/// Clears the entire bound bitmap to the specified colour.
public abstract void Clear( FastColour colour );
diff --git a/Launcher2/LauncherWindow.cs b/Launcher2/LauncherWindow.cs
index aed0f5988..5accff8ad 100644
--- a/Launcher2/LauncherWindow.cs
+++ b/Launcher2/LauncherWindow.cs
@@ -177,9 +177,11 @@ namespace Launcher {
LauncherSkin.SaveToOptions();
Options.Save();
}
+
if( ShouldUpdate )
Updater.Patcher.LaunchUpdateScript();
- Window.Close();
+ if( Window.Exists )
+ Window.Close();
}
void Display() {
diff --git a/Launcher2/Updater/Patcher.cs b/Launcher2/Updater/Patcher.cs
index 0b756e53e..61a970ec6 100644
--- a/Launcher2/Updater/Patcher.cs
+++ b/Launcher2/Updater/Patcher.cs
@@ -34,10 +34,16 @@ namespace Launcher.Updater {
int code = chmod( path, (flags << 6) | (flags << 3) | 4 );
if( code != 0 )
throw new InvalidOperationException( "chmod returned : " + code );
- info = new ProcessStartInfo( "xterm", '"' + path + '"');
+
+ //if( OpenTK.Configuration.RunningOnMacOS )
+ // info = new ProcessStartInfo( "/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal",
+ // '"' + path + '"');
+ //else
+ info = new ProcessStartInfo( "xterm", '"' + path + '"');
}
info.CreateNoWindow = false;
info.UseShellExecute = false;
+ info.WorkingDirectory = Program.AppDirectory;
Process.Start( info );
}
@@ -47,7 +53,8 @@ namespace Launcher.Updater {
static void MakeUpdatesFolder( byte[] zipData ) {
using( MemoryStream stream = new MemoryStream( zipData ) ) {
ZipReader reader = new ZipReader();
- Directory.CreateDirectory( "CS_Update" );
+ string path = Path.Combine( Program.AppDirectory, "CS_Update" );
+ Directory.CreateDirectory( path );
reader.ShouldProcessZipEntry = (f) => true;
reader.ProcessZipEntry = ProcessZipEntry;