From f65401a2370a5f4012a637dc50210aa1cf2f5706 Mon Sep 17 00:00:00 2001 From: Hylke Bons Date: Sun, 15 Apr 2012 18:00:36 +0200 Subject: [PATCH] controller: move folder opening logic to base controller --- SparkleShare/Linux/SparkleController.cs | 11 +++-------- SparkleShare/Mac/SparkleController.cs | 9 +++------ SparkleShare/SparkleControllerBase.cs | 12 +++++++++--- SparkleShare/Windows/SparkleController.cs | 8 ++++---- 4 files changed, 19 insertions(+), 21 deletions(-) diff --git a/SparkleShare/Linux/SparkleController.cs b/SparkleShare/Linux/SparkleController.cs index be4814d0..fddc4490 100755 --- a/SparkleShare/Linux/SparkleController.cs +++ b/SparkleShare/Linux/SparkleController.cs @@ -204,18 +204,13 @@ namespace SparkleShare { } - public override void OpenSparkleShareFolder (string subfolder) + public override void OpenFolder (string path) { - string folder = Path.Combine (SparkleConfig.DefaultConfig.FoldersPath, subfolder); - - Process process = new Process (); - process.StartInfo.FileName = "xdg-open"; - process.StartInfo.Arguments = "\"" + folder + "\""; - process.Start (); + OpenFile (path); } - public override void OpenFile (string url) + public override void OpenFile (string path) { Process process = new Process (); process.StartInfo.FileName = "xdg-open"; diff --git a/SparkleShare/Mac/SparkleController.cs b/SparkleShare/Mac/SparkleController.cs index d567aa6f..142328ff 100755 --- a/SparkleShare/Mac/SparkleController.cs +++ b/SparkleShare/Mac/SparkleController.cs @@ -186,13 +186,10 @@ namespace SparkleShare { } - // Opens the SparkleShare folder or an (optional) subfolder - public override void OpenSparkleShareFolder (string subfolder) + public override void OpenFolder (string path) { - string folder = Path.Combine (SparkleConfig.DefaultConfig.FoldersPath, subfolder); - folder.Replace (" ", "\\ "); // Escape space-characters - - NSWorkspace.SharedWorkspace.OpenFile (folder); + path = path.Replace (" ", "\\ "); // Escape space-characters + NSWorkspace.SharedWorkspace.OpenFile (path); } diff --git a/SparkleShare/SparkleControllerBase.cs b/SparkleShare/SparkleControllerBase.cs index 142d0f25..b65b49a7 100644 --- a/SparkleShare/SparkleControllerBase.cs +++ b/SparkleShare/SparkleControllerBase.cs @@ -144,10 +144,10 @@ namespace SparkleShare { public abstract bool CreateSparkleShareFolder (); // Opens the SparkleShare folder or an (optional) subfolder - public abstract void OpenSparkleShareFolder (string subfolder); + public abstract void OpenFolder (string path); // Opens a file with the appropriate application - public abstract void OpenFile (string url); + public abstract void OpenFile (string path); private SparkleFetcherBase fetcher; @@ -736,7 +736,13 @@ namespace SparkleShare { public void OpenSparkleShareFolder () { - OpenSparkleShareFolder (""); + OpenFolder (SparkleConfig.DefaultConfig.FoldersPath); + } + + + public void OpenSparkleShareFolder (string name) + { + OpenFolder (new SparkleFolder (name).FullPath); } diff --git a/SparkleShare/Windows/SparkleController.cs b/SparkleShare/Windows/SparkleController.cs index d46dc1c7..dd9e9db0 100644 --- a/SparkleShare/Windows/SparkleController.cs +++ b/SparkleShare/Windows/SparkleController.cs @@ -180,17 +180,17 @@ namespace SparkleShare { } - public override void OpenFile (string url) + public override void OpenFile (string path) { - Process.Start (url); + Process.Start (path); } - public override void OpenSparkleShareFolder (string subfolder) + public override void OpenFolder (string path) { Process process = new Process (); process.StartInfo.FileName = "explorer"; - process.StartInfo.Arguments = Path.Combine (SparkleConfig.DefaultConfig.FoldersPath, subfolder); + process.StartInfo.Arguments = path; process.Start(); }