diff --git a/SparkleShare/Common/StatusIconController.cs b/SparkleShare/Common/StatusIconController.cs index d992a5e3..8b1558d3 100644 --- a/SparkleShare/Common/StatusIconController.cs +++ b/SparkleShare/Common/StatusIconController.cs @@ -35,38 +35,38 @@ namespace SparkleShare { public class ProjectInfo { - private BaseRepository repo; + readonly BaseRepository repo; - public string Name { get { return this.repo.Name; }} - public string Path { get { return this.repo.LocalPath; }} + public string Name { get { return repo.Name; }} + public string Path { get { return repo.LocalPath; }} - public bool IsPaused { get { return this.repo.Status == SyncStatus.Paused; }} - public bool HasError { get { return this.repo.Status == SyncStatus.Error; }} + public bool IsPaused { get { return repo.Status == SyncStatus.Paused; }} + public bool HasError { get { return repo.Status == SyncStatus.Error; }} public string StatusMessage { get { string status_message = "Waiting to sync"; - if (!this.repo.LastSync.Equals (DateTime.MinValue)) - status_message = string.Format ("✓ Synced {0}", this.repo.LastSync.ToPrettyDate ()); + if (!repo.LastSync.Equals (DateTime.MinValue)) + status_message = string.Format ("✓ Synced {0}", repo.LastSync.ToPrettyDate ()); - if (this.repo.Status == SyncStatus.SyncUp) - status_message = "Sending changes… " + this.repo.ProgressPercentage + "%"; + if (repo.Status == SyncStatus.SyncUp) + status_message = "Sending changes… " + repo.ProgressPercentage + "%"; - if (this.repo.Status == SyncStatus.SyncDown) - status_message = "Receiving changes… " + this.repo.ProgressPercentage + "%"; + if (repo.Status == SyncStatus.SyncDown) + status_message = "Receiving changes… " + repo.ProgressPercentage + "%"; - if (this.repo.Status == SyncStatus.SyncUp || this.repo.Status == SyncStatus.SyncDown) { - if (this.repo.ProgressSpeed > 0) - status_message += " " + this.repo.ProgressSpeed.ToSize () + "/s"; + if (repo.Status == SyncStatus.SyncUp || repo.Status == SyncStatus.SyncDown) { + if (repo.ProgressSpeed > 0) + status_message += " " + repo.ProgressSpeed.ToSize () + "/s"; } - if (IsPaused) { + if (IsPaused) return "Paused"; - } else if (HasError) { - switch (this.repo.Error) { + if (HasError) { + switch (repo.Error) { case ErrorStatus.HostUnreachable: return "Can’t reach the host"; case ErrorStatus.HostIdentityChanged: return "The host’s identity has changed"; case ErrorStatus.AuthenticationFailed: return "Authentication failed"; @@ -86,7 +86,7 @@ namespace SparkleShare { public Dictionary UnsyncedChangesInfo { get { - Dictionary changes_info = new Dictionary (); + var changes_info = new Dictionary (); int changes_count = 0; foreach (Change change in repo.UnsyncedChanges) { @@ -148,14 +148,14 @@ namespace SparkleShare { get { string progress_speed = ""; - if (SparkleShare.Controller.ProgressSpeedDown == 0 && SparkleShare.Controller.ProgressSpeedUp > 0) { + if (SparkleShare.Controller.ProgressSpeedDown == 0.0 && SparkleShare.Controller.ProgressSpeedUp > 0.0) { progress_speed = SparkleShare.Controller.ProgressSpeedUp.ToSize () + "/s "; - } else if (SparkleShare.Controller.ProgressSpeedUp == 0 && SparkleShare.Controller.ProgressSpeedDown > 0) { + } else if (SparkleShare.Controller.ProgressSpeedUp == 0.0 && SparkleShare.Controller.ProgressSpeedDown > 0.0) { progress_speed = SparkleShare.Controller.ProgressSpeedDown.ToSize () + "/s "; - } else if (SparkleShare.Controller.ProgressSpeedUp > 0 && - SparkleShare.Controller.ProgressSpeedDown > 0) { + } else if (SparkleShare.Controller.ProgressSpeedUp > 0.0 && + SparkleShare.Controller.ProgressSpeedDown > 0.0) { progress_speed = "Up: " + SparkleShare.Controller.ProgressSpeedUp.ToSize () + "/s " + "Down: " + SparkleShare.Controller.ProgressSpeedDown.ToSize () + "/s"; @@ -204,7 +204,6 @@ namespace SparkleShare { SparkleShare.Controller.OnIdle += delegate { if (CurrentState != IconState.Error) { CurrentState = IconState.Idle; - UpdateStateText (); } @@ -217,31 +216,31 @@ namespace SparkleShare { }; SparkleShare.Controller.OnSyncing += delegate { - int repos_syncing_up = 0; - int repos_syncing_down = 0; - - foreach (BaseRepository repo in SparkleShare.Controller.Repositories) { - if (repo.Status == SyncStatus.SyncUp) - repos_syncing_up++; - - if (repo.Status == SyncStatus.SyncDown) - repos_syncing_down++; - } - - if (repos_syncing_up > 0 && - repos_syncing_down > 0) { - - CurrentState = IconState.Syncing; - StateText = "Syncing changes…"; - - } else if (repos_syncing_down == 0) { - CurrentState = IconState.SyncingUp; - StateText = "Sending changes…"; - - } else { - CurrentState = IconState.SyncingDown; - StateText = "Receiving changes…"; - } + int repos_syncing_up = 0; + int repos_syncing_down = 0; + + foreach (BaseRepository repo in SparkleShare.Controller.Repositories) { + if (repo.Status == SyncStatus.SyncUp) + repos_syncing_up++; + + if (repo.Status == SyncStatus.SyncDown) + repos_syncing_down++; + } + + if (repos_syncing_up > 0 && + repos_syncing_down > 0) { + + CurrentState = IconState.Syncing; + StateText = "Syncing…"; + + } else if (repos_syncing_down == 0) { + CurrentState = IconState.SyncingUp; + StateText = "Sending…"; + + } else { + CurrentState = IconState.SyncingDown; + StateText = "Receiving…"; + } if (ProgressPercentage > 0) StateText += " " + ProgressPercentage + "% " + ProgressSpeed; @@ -253,7 +252,7 @@ namespace SparkleShare { SparkleShare.Controller.OnError += delegate { CurrentState = IconState.Error; - StateText = "Some changes weren’t synced"; + StateText = "Not everything synced"; UpdateFolders (); @@ -266,7 +265,7 @@ namespace SparkleShare { // FIXME: Work around a race condition causing // the icon to not always show the right state - Timers.Timer timer = new Timers.Timer () { Interval = 30 * 1000 }; + var timer = new Timers.Timer { Interval = 30 * 1000 }; timer.Elapsed += delegate { UpdateIconEvent (CurrentState); @@ -282,7 +281,7 @@ namespace SparkleShare { if (Projects.Length == 0) return StateText = "Welcome to SparkleShare!"; else - return StateText = "✓ Projects up to date " + GetPausedCount (); + return StateText = "✓ Synced " + GetPausedCount (); } @@ -391,18 +390,18 @@ namespace SparkleShare { } - private Object projects_lock = new Object (); + readonly object projects_lock = new object (); - private void UpdateFolders () + void UpdateFolders () { - lock (this.projects_lock) { - List projects = new List (); + var projects = new List (); + lock (projects_lock) { foreach (BaseRepository repo in SparkleShare.Controller.Repositories) projects.Add (new ProjectInfo (repo)); - - Projects = projects.ToArray (); } + + Projects = projects.ToArray (); } } }