From 49362ce5ab6909cc3e4af1b8f6a448e95affe0fd Mon Sep 17 00:00:00 2001 From: qianlifeng Date: Sun, 17 Aug 2014 15:57:25 +0800 Subject: [PATCH] Add afterload event for LoadDefaultConfig --- Wox.Infrastructure/Storage/BaseStorage.cs | 13 +++++++------ .../Storage/UserSettings/UserSettingStorage.cs | 4 +++- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Wox.Infrastructure/Storage/BaseStorage.cs b/Wox.Infrastructure/Storage/BaseStorage.cs index 6b9fd4f89f..f19065c446 100644 --- a/Wox.Infrastructure/Storage/BaseStorage.cs +++ b/Wox.Infrastructure/Storage/BaseStorage.cs @@ -44,7 +44,10 @@ namespace Wox.Infrastructure.Storage } } - protected virtual void LoadDefaultConfig() { } + protected virtual T LoadDefaultConfig() + { + return storage; + } private void Load() { @@ -61,19 +64,17 @@ namespace Wox.Infrastructure.Storage try { storage = JsonConvert.DeserializeObject(json); - OnAfterLoadConfig(storage); } catch (Exception) { - //no-op - LoadDefaultConfig(); + storage = LoadDefaultConfig(); } } else { - LoadDefaultConfig(); + storage = LoadDefaultConfig(); } - + OnAfterLoadConfig(storage); } public void Save() diff --git a/Wox.Infrastructure/Storage/UserSettings/UserSettingStorage.cs b/Wox.Infrastructure/Storage/UserSettings/UserSettingStorage.cs index d4e941a30c..ec3b96813f 100644 --- a/Wox.Infrastructure/Storage/UserSettings/UserSettingStorage.cs +++ b/Wox.Infrastructure/Storage/UserSettings/UserSettingStorage.cs @@ -143,7 +143,7 @@ namespace Wox.Infrastructure.Storage.UserSettings get { return "config"; } } - protected override void LoadDefaultConfig() + protected override UserSettingStorage LoadDefaultConfig() { Theme = "Dark"; ReplaceWinR = true; @@ -157,6 +157,8 @@ namespace Wox.Infrastructure.Storage.UserSettings OpacityMode = OpacityMode.Normal; LeaveCmdOpen = false; HideWhenDeactive = false; + + return this; } protected override void OnAfterLoadConfig(UserSettingStorage storage)