From 2485372366139f4f6bec48ab61e98ea1b6375b18 Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Sun, 24 Jun 2018 13:56:53 +0300 Subject: Machine Studio v 1.0.0.5 ! Forced update. Hashed passwords. --- .../ViewModels/UpdateViewVM.cs | 28 ++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/UpdateViewVM.cs') diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/UpdateViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/UpdateViewVM.cs index c8b4b6adc..d7ce29b2e 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/UpdateViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/UpdateViewVM.cs @@ -21,6 +21,7 @@ using Tango.MachineStudio.Common.Notifications; using Tango.MachineStudio.Common.StudioApplication; using Tango.MachineStudio.Common.Update; using Tango.SharedUI; +using Tango.MachineStudio.UI.Messages; namespace Tango.MachineStudio.UI.ViewModels { @@ -48,6 +49,13 @@ namespace Tango.MachineStudio.UI.ViewModels private CheckForUpdatesResponse _updateInfo; private TemporaryFolder _newPackageTempFolder; + private bool _forcedUpdate; + public bool ForcedUpdate + { + get { return _forcedUpdate; } + set { _forcedUpdate = value; RaisePropertyChangedAuto(); } + } + private UpdateStatus _status; public UpdateStatus Status { @@ -104,14 +112,30 @@ namespace Tango.MachineStudio.UI.ViewModels LatestVersion = "1.0.0.2"; Status = UpdateStatus.CheckingForUpdate; UpdateCommand = new RelayCommand(StartUpdate, () => Status == UpdateStatus.UpdateAvailable); - BackCommand = new RelayCommand(BackToApplication, () => Status != UpdateStatus.Updating); + BackCommand = new RelayCommand(BackToApplication, () => Status != UpdateStatus.Updating && !ForcedUpdate); RestartCommand = new RelayCommand(RestartApplication, () => Status == UpdateStatus.UpdateCompleted); TryAgainCommand = new RelayCommand(TryAgain, () => Status == UpdateStatus.Error); + + TangoMessenger.Default.Register(HandleForcedUpdateMessage); + } + + private void HandleForcedUpdateMessage(ForcedUpdateMessage msg) + { + ForcedUpdate = true; + InvalidateRelayCommands(); + + _updateInfo = msg.UpdateResponse; + Status = UpdateStatus.UpdateAvailable; + LatestVersion = _updateInfo.Version; + StartUpdate(); } public void OnNavigatedInto() { - CheckForUpdates(); + if (!ForcedUpdate) + { + CheckForUpdates(); + } } private void CheckForUpdates() -- cgit v1.3.1