From abf0984da31215bd02e84e8df6d6e1631a077ebb Mon Sep 17 00:00:00 2001 From: KamilDev Date: Wed, 22 Apr 2026 16:04:11 +1000 Subject: [PATCH 1/2] Add option to hide access-key markers in menu names --- .../BluePointLilac.Methods/ResourceString.cs | 28 +++++++++++++++++++ .../Controls/DetailedEditDialog.cs | 2 +- .../Controls/DetailedEditList.cs | 6 ++-- .../Controls/EnhanceMenuList.cs | 10 +++---- .../Controls/GuidBlockedItem.cs | 2 +- ContextMenuManager/Controls/IEItem.cs | 2 +- .../Controls/Interfaces/ITsiGuidItem.cs | 4 +-- .../Controls/Interfaces/ITsiTextItem.cs | 2 +- ContextMenuManager/Controls/OpenWithItem.cs | 4 +-- ContextMenuManager/Controls/RuleItem.cs | 2 +- ContextMenuManager/Controls/SendToItem.cs | 4 +-- ContextMenuManager/Controls/ShellExItem.cs | 2 +- ContextMenuManager/Controls/ShellItem.cs | 4 +-- ContextMenuManager/Controls/ShellNewItem.cs | 4 +-- ContextMenuManager/Controls/UwpModeItem.cs | 2 +- ContextMenuManager/Controls/WinXItem.cs | 4 +-- ContextMenuManager/Methods/AppConfig.cs | 6 ++++ ContextMenuManager/Methods/AppString.cs | 1 + .../Resources/Texts/AppLanguageDic.ini | 1 + ContextMenuManager/Views/AppSettingView.xaml | 23 ++++++++++++++- .../Views/AppSettingView.xaml.cs | 11 ++++++++ languages/en-US.ini | 1 + languages/zh-CN.ini | 1 + 23 files changed, 98 insertions(+), 28 deletions(-) diff --git a/ContextMenuManager/BluePointLilac.Methods/ResourceString.cs b/ContextMenuManager/BluePointLilac.Methods/ResourceString.cs index 6d9a45d6..23b1af2b 100644 --- a/ContextMenuManager/BluePointLilac.Methods/ResourceString.cs +++ b/ContextMenuManager/BluePointLilac.Methods/ResourceString.cs @@ -24,5 +24,33 @@ public static string GetDirectString(string resStr) SHLoadIndirectString(resStr, outBuff, 1024, IntPtr.Zero); return outBuff.ToString(); } + + /// Strips Win32 menu access-key markers so the list matches what Explorer actually renders. + /// The raw menu text, typically read from the registry. + /// The input unchanged when the setting is off or no '&' is present; otherwise the text with single '&' removed and '&&' collapsed to a literal '&'. + /// Leaving the setting off preserves the raw registry text for power users who want to see the mnemonic markers. + public static string StripMnemonics(string text) + { + if (string.IsNullOrEmpty(text) || !AppConfig.StripMenuMnemonics) return text; + if (text.IndexOf('&') < 0) return text; + + var sb = new StringBuilder(text.Length); + for (var i = 0; i < text.Length; i++) + { + if (text[i] == '&') + { + if (i + 1 < text.Length && text[i + 1] == '&') + { + sb.Append('&'); + i++; + } + } + else + { + sb.Append(text[i]); + } + } + return sb.ToString(); + } } } diff --git a/ContextMenuManager/Controls/DetailedEditDialog.cs b/ContextMenuManager/Controls/DetailedEditDialog.cs index 3826f084..4ab23c63 100644 --- a/ContextMenuManager/Controls/DetailedEditDialog.cs +++ b/ContextMenuManager/Controls/DetailedEditDialog.cs @@ -15,7 +15,7 @@ public bool ShowDialog() public bool RunDialog(MainWindow owner) { var dialog = ContentDialogHost.CreateDialog( - AppString.Dialog.DetailedEdit.Replace("%s", GuidInfo.GetText(GroupGuid)), + AppString.Dialog.DetailedEdit.Replace("%s", ResourceString.StripMnemonics(GuidInfo.GetText(GroupGuid))), owner); var list = new DetailedEditList diff --git a/ContextMenuManager/Controls/DetailedEditList.cs b/ContextMenuManager/Controls/DetailedEditList.cs index 4dcd2478..c337e208 100644 --- a/ContextMenuManager/Controls/DetailedEditList.cs +++ b/ContextMenuManager/Controls/DetailedEditList.cs @@ -43,12 +43,12 @@ public override void LoadItems() groupItem = new FoldGroupItem(this, groupXN.SelectSingleNode(attribute)?.InnerText, pathType); foreach (XmlElement textXE in groupXN.SelectNodes("Text")) { - if (XmlDicHelper.JudgeCulture(textXE)) groupItem.Text = ResourceString.GetDirectString(textXE.GetAttribute("Value")); + if (XmlDicHelper.JudgeCulture(textXE)) groupItem.Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(textXE.GetAttribute("Value"))); } if (guids.Count > 0) { groupItem.Control.Tag = guids; - if (string.IsNullOrWhiteSpace(groupItem.Text)) groupItem.Text = GuidInfo.GetText(guids[0]); + if (string.IsNullOrWhiteSpace(groupItem.Text)) groupItem.Text = ResourceString.StripMnemonics(GuidInfo.GetText(guids[0])); groupItem.Image = GuidInfo.GetImage(guids[0]); var filePath = GuidInfo.GetFilePath(guids[0]); var clsidPath = GuidInfo.GetClsidPath(guids[0]); @@ -95,7 +95,7 @@ string GetRuleFullRegPath(string regPath) // 获取文本、提示文本 foreach (XmlElement textXE in itemXE.SelectNodes("Text")) { - if (XmlDicHelper.JudgeCulture(textXE)) info.Text = ResourceString.GetDirectString(textXE.GetAttribute("Value")); + if (XmlDicHelper.JudgeCulture(textXE)) info.Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(textXE.GetAttribute("Value"))); } foreach (XmlElement tipXE in itemXE.SelectNodes("Tip")) { diff --git a/ContextMenuManager/Controls/EnhanceMenuList.cs b/ContextMenuManager/Controls/EnhanceMenuList.cs index 85af08f3..3b5b8ba2 100644 --- a/ContextMenuManager/Controls/EnhanceMenuList.cs +++ b/ContextMenuManager/Controls/EnhanceMenuList.cs @@ -26,7 +26,7 @@ public override void LoadItems() { if (XmlDicHelper.JudgeCulture(textXE)) { - text = ResourceString.GetDirectString(textXE.GetAttribute("Value")); + text = ResourceString.StripMnemonics(ResourceString.GetDirectString(textXE.GetAttribute("Value"))); } } if (string.IsNullOrEmpty(path) || string.IsNullOrEmpty(text)) continue; @@ -72,7 +72,7 @@ private void LoadShellItems(XmlNode shellXN, FoldGroupItem groupItem) foreach (XmlElement szXE in itemXE.SelectNodes("Value/REG_SZ")) { if (!XmlDicHelper.JudgeCulture(szXE)) continue; - if (szXE.HasAttribute("MUIVerb")) item.Text = ResourceString.GetDirectString(szXE.GetAttribute("MUIVerb")); + if (szXE.HasAttribute("MUIVerb")) item.Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(szXE.GetAttribute("MUIVerb"))); if (szXE.HasAttribute("Icon")) item.Image = ResourceIcon.GetIcon(szXE.GetAttribute("Icon"))?.ToBitmap(); else if (szXE.HasAttribute("HasLUAShield")) item.Image = AppImage.Shield; } @@ -101,7 +101,7 @@ private void LoadShellItems(XmlNode shellXN, FoldGroupItem groupItem) } } item.Image ??= AppImage.NotFound; - if (string.IsNullOrWhiteSpace(item.Text)) item.Text = keyName; + if (string.IsNullOrWhiteSpace(item.Text)) item.Text = ResourceString.StripMnemonics(keyName); var tip = ""; foreach (XmlElement tipXE in itemXE.SelectNodes("Tip")) { @@ -137,10 +137,10 @@ private void LoadShellExItems(XmlNode shellExXN, FoldGroupItem groupItem) { if (XmlDicHelper.JudgeCulture(textXE)) { - item.Text = ResourceString.GetDirectString(textXE.InnerText); + item.Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(textXE.InnerText)); } } - if (string.IsNullOrWhiteSpace(item.Text)) item.Text = GuidInfo.GetText(guid); + if (string.IsNullOrWhiteSpace(item.Text)) item.Text = ResourceString.StripMnemonics(GuidInfo.GetText(guid)); if (string.IsNullOrWhiteSpace(item.DefaultKeyName)) item.DefaultKeyName = guid.ToString("B"); var tip = ""; foreach (XmlElement tipXE in itemXN.SelectNodes("Tip")) diff --git a/ContextMenuManager/Controls/GuidBlockedItem.cs b/ContextMenuManager/Controls/GuidBlockedItem.cs index ef88295f..6ff20a10 100644 --- a/ContextMenuManager/Controls/GuidBlockedItem.cs +++ b/ContextMenuManager/Controls/GuidBlockedItem.cs @@ -38,7 +38,7 @@ public GuidBlockedItem(GuidBlockedList list, string value) : base(list) if (list != null) Image = AppImage.SystemFile; } - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); } public string Value { get; set; } diff --git a/ContextMenuManager/Controls/IEItem.cs b/ContextMenuManager/Controls/IEItem.cs index be72fc93..fb64c16e 100644 --- a/ContextMenuManager/Controls/IEItem.cs +++ b/ContextMenuManager/Controls/IEItem.cs @@ -31,7 +31,7 @@ public string RegPath set { regPath = value; - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) Image = ItemImage; } } diff --git a/ContextMenuManager/Controls/Interfaces/ITsiGuidItem.cs b/ContextMenuManager/Controls/Interfaces/ITsiGuidItem.cs index 11453117..75369795 100644 --- a/ContextMenuManager/Controls/Interfaces/ITsiGuidItem.cs +++ b/ContextMenuManager/Controls/Interfaces/ITsiGuidItem.cs @@ -96,7 +96,7 @@ private void AddGuidDic() { writer.DeleteSection(section); GuidInfo.RemoveDic(Item.Guid); - listItem.Text = Item.ItemText; + listItem.Text = ResourceString.StripMnemonics(Item.ItemText); listItem.Image = GuidInfo.GetImage(Item.Guid); } return; @@ -117,7 +117,7 @@ private void AddGuidDic() GuidInfo.RemoveDic(Item.Guid); writer.SetValue(section, "Text", dlg.ItemText); writer.SetValue(section, "Icon", dlg.ItemIconLocation); - listItem.Text = dlg.ItemText; + listItem.Text = ResourceString.StripMnemonics(dlg.ItemText); listItem.Image = dlg.ItemIcon; } } diff --git a/ContextMenuManager/Controls/Interfaces/ITsiTextItem.cs b/ContextMenuManager/Controls/Interfaces/ITsiTextItem.cs index 6ce8eb02..69bd0bbb 100644 --- a/ContextMenuManager/Controls/Interfaces/ITsiTextItem.cs +++ b/ContextMenuManager/Controls/Interfaces/ITsiTextItem.cs @@ -15,7 +15,7 @@ public ChangeTextMenuItem(ITsiTextItem item) : base(AppString.Menu.ChangeText) { Click += (sender, e) => { - var name = ChangeText(item.Text); + var name = ChangeText(item.ItemText ?? item.Text); if (name != null) item.ItemText = name; }; } diff --git a/ContextMenuManager/Controls/OpenWithItem.cs b/ContextMenuManager/Controls/OpenWithItem.cs index 948f099c..aa129fa4 100644 --- a/ContextMenuManager/Controls/OpenWithItem.cs +++ b/ContextMenuManager/Controls/OpenWithItem.cs @@ -33,7 +33,7 @@ public string RegPath { regPath = value; ItemFilePath = ObjectPath.ExtractFilePath(ItemCommand); - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) Image = ItemIcon.ToBitmap(); } } @@ -60,7 +60,7 @@ public string ItemText set { Registry.SetValue(AppPath, "FriendlyAppName", value); - Text = ResourceString.GetDirectString(value); + Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(value)); } } diff --git a/ContextMenuManager/Controls/RuleItem.cs b/ContextMenuManager/Controls/RuleItem.cs index 725f91ca..ec648e13 100644 --- a/ContextMenuManager/Controls/RuleItem.cs +++ b/ContextMenuManager/Controls/RuleItem.cs @@ -16,7 +16,7 @@ public RuleItem(MyList list, ItemInfo info) : base(list) RestartExplorer = info.RestartExplorer; if (list != null) { - Text = info.Text; + Text = ResourceString.StripMnemonics(info.Text); Image = info.Image; BtnShowMenu = new MenuButton(this); TsiSearch = new WebSearchMenuItem(this); diff --git a/ContextMenuManager/Controls/SendToItem.cs b/ContextMenuManager/Controls/SendToItem.cs index 73850ac3..5ac5a22d 100644 --- a/ContextMenuManager/Controls/SendToItem.cs +++ b/ContextMenuManager/Controls/SendToItem.cs @@ -26,7 +26,7 @@ public string FilePath { filePath = value; if (IsShortcut) ShellLink = new ShellLink(value); - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) Image = ItemImage; } } @@ -90,7 +90,7 @@ public string ItemText set { DesktopIni.SetLocalizedFileNames(FilePath, value); - Text = ResourceString.GetDirectString(value); + Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(value)); ExplorerRestarter.Show(); } } diff --git a/ContextMenuManager/Controls/ShellExItem.cs b/ContextMenuManager/Controls/ShellExItem.cs index d1cfdf93..f1361cdf 100644 --- a/ContextMenuManager/Controls/ShellExItem.cs +++ b/ContextMenuManager/Controls/ShellExItem.cs @@ -65,7 +65,7 @@ public string RegPath set { regPath = value; - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) Image = GuidInfo.GetImage(Guid); } } diff --git a/ContextMenuManager/Controls/ShellItem.cs b/ContextMenuManager/Controls/ShellItem.cs index a6d3818f..eebda0fd 100644 --- a/ContextMenuManager/Controls/ShellItem.cs +++ b/ContextMenuManager/Controls/ShellItem.cs @@ -48,7 +48,7 @@ public string RegPath set { regPath = value; - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) { Image = ItemIcon.ToBitmap(); @@ -275,7 +275,7 @@ public string ItemText else { Registry.SetValue(RegPath, "MUIVerb", value); - Text = ResourceString.GetDirectString(value); + Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(value)); } } } diff --git a/ContextMenuManager/Controls/ShellNewItem.cs b/ContextMenuManager/Controls/ShellNewItem.cs index a9107278..962adfce 100644 --- a/ContextMenuManager/Controls/ShellNewItem.cs +++ b/ContextMenuManager/Controls/ShellNewItem.cs @@ -68,7 +68,7 @@ public string RegPath set { regPath = value; - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) Image = ItemIcon.ToBitmap(); } } @@ -141,7 +141,7 @@ public string ItemText { RegistryEx.DeleteValue(RegPath, "MenuText"); Registry.SetValue(DefaultOpenModePath, "FriendlyTypeName", value); - Text = ResourceString.GetDirectString(value); + Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(value)); } } diff --git a/ContextMenuManager/Controls/UwpModeItem.cs b/ContextMenuManager/Controls/UwpModeItem.cs index c213e909..80e2dac4 100644 --- a/ContextMenuManager/Controls/UwpModeItem.cs +++ b/ContextMenuManager/Controls/UwpModeItem.cs @@ -19,7 +19,7 @@ public UwpModeItem(MyList list, string uwpName, Guid guid) : base(list) { Guid = guid; UwpName = uwpName; - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (list != null) { InitializeComponents(); diff --git a/ContextMenuManager/Controls/WinXItem.cs b/ContextMenuManager/Controls/WinXItem.cs index 8fc9e415..f4c08ff1 100644 --- a/ContextMenuManager/Controls/WinXItem.cs +++ b/ContextMenuManager/Controls/WinXItem.cs @@ -40,7 +40,7 @@ public string FilePath { filePath = value; ShellLink = new ShellLink(value); - Text = ItemText; + Text = ResourceString.StripMnemonics(ItemText); if (List != null) Image = ItemImage; } } @@ -86,7 +86,7 @@ public string ItemText { DesktopIni.SetLocalizedFileNames(FilePath, value); } - Text = ResourceString.GetDirectString(value); + Text = ResourceString.StripMnemonics(ResourceString.GetDirectString(value)); ExplorerRestarter.Show(); } } diff --git a/ContextMenuManager/Methods/AppConfig.cs b/ContextMenuManager/Methods/AppConfig.cs index 63d12090..11bac99b 100644 --- a/ContextMenuManager/Methods/AppConfig.cs +++ b/ContextMenuManager/Methods/AppConfig.cs @@ -285,6 +285,12 @@ public static bool HideSysStoreItems set => SetGeneralValue("HideSysStoreItems", value ? 1 : 0); } + public static bool StripMenuMnemonics + { + get => GetGeneralValue("StripMenuMnemonics") == "1"; + set => SetGeneralValue("StripMenuMnemonics", value ? 1 : 0); + } + public static bool RequestUseGithub { get diff --git a/ContextMenuManager/Methods/AppString.cs b/ContextMenuManager/Methods/AppString.cs index e109ea82..425e12fc 100644 --- a/ContextMenuManager/Methods/AppString.cs +++ b/ContextMenuManager/Methods/AppString.cs @@ -378,6 +378,7 @@ public static class Other public static string OpenMoreExplorer { get; set; } public static string HideDisabledItems { get; set; } public static string HideSysStoreItems { get; set; } + public static string StripMenuMnemonics { get; set; } public static string SetPerceivedType { get; set; } public static string SetDefaultDropEffect { get; set; } public static string TopMost { get; set; } diff --git a/ContextMenuManager/Properties/Resources/Texts/AppLanguageDic.ini b/ContextMenuManager/Properties/Resources/Texts/AppLanguageDic.ini index 68967797..5a9273b6 100644 --- a/ContextMenuManager/Properties/Resources/Texts/AppLanguageDic.ini +++ b/ContextMenuManager/Properties/Resources/Texts/AppLanguageDic.ini @@ -323,6 +323,7 @@ CustomEngine = 自定义 SetCustomEngine = 设置搜索引擎 (以 %s 代替搜索关键词) HideDisabledItems = 隐藏已禁用的菜单项目 HideSysStoreItems = 隐藏公共引用中的系统菜单 +StripMenuMnemonics = 隐藏菜单项名称中的快捷键符号(&) SetPerceivedType = 设置扩展名为 %s 的文件感知类型为 SetDefaultDropEffect = 设置文件对象默认拖拽命令为 TopMost = 使窗口始终在屏幕最上方 diff --git a/ContextMenuManager/Views/AppSettingView.xaml b/ContextMenuManager/Views/AppSettingView.xaml index f2b2a760..1f539cbc 100644 --- a/ContextMenuManager/Views/AppSettingView.xaml +++ b/ContextMenuManager/Views/AppSettingView.xaml @@ -296,7 +296,7 @@ - + @@ -314,6 +314,27 @@ OnContent="" Toggled="HideSysStoreItemsCheckBox_OnChanged" /> + + + + + + + + + + + + + diff --git a/ContextMenuManager/Views/AppSettingView.xaml.cs b/ContextMenuManager/Views/AppSettingView.xaml.cs index cd733568..56bc6a58 100644 --- a/ContextMenuManager/Views/AppSettingView.xaml.cs +++ b/ContextMenuManager/Views/AppSettingView.xaml.cs @@ -40,6 +40,7 @@ public void RefreshFromConfig() OpenMoreExplorerCheckBox.IsOn = AppConfig.OpenMoreExplorer; HideDisabledItemsCheckBox.IsOn = AppConfig.HideDisabledItems; HideSysStoreItemsCheckBox.IsOn = AppConfig.HideSysStoreItems; + StripMenuMnemonicsCheckBox.IsOn = AppConfig.StripMenuMnemonics; var showHideSysStore = WinOsVersion.Current >= WinOsVersion.Win7; HideSysStoreRow.Visibility = showHideSysStore ? Visibility.Visible : Visibility.Collapsed; @@ -110,6 +111,8 @@ private void LoadLabels() HideSysStoreItemsLabel.Text = AppString.Other.HideSysStoreItems; + StripMenuMnemonicsLabel.Text = AppString.Other.StripMenuMnemonics; + LoadDynamicOptions(); } @@ -282,6 +285,14 @@ private void HideSysStoreItemsCheckBox_OnChanged(object sender, RoutedEventArgs } } + private void StripMenuMnemonicsCheckBox_OnChanged(object sender, RoutedEventArgs e) + { + if (!isLoading) + { + AppConfig.StripMenuMnemonics = StripMenuMnemonicsCheckBox.IsOn; + } + } + private static int GetUpdateSelectIndex() { return AppConfig.UpdateFrequency switch diff --git a/languages/en-US.ini b/languages/en-US.ini index 6e32df4d..513ff186 100644 --- a/languages/en-US.ini +++ b/languages/en-US.ini @@ -327,6 +327,7 @@ CustomEngine = Custom... SetCustomEngine = Define search engine (use %s instead of search keywords) HideDisabledItems = Hide disabled items HideSysStoreItems = Hide system store items +StripMenuMnemonics = Hide access-key markers (&) in menu item names SetPerceivedType = Set %s perceived type... SetDefaultDropEffect = Set default drop effect TopMost = Always on top diff --git a/languages/zh-CN.ini b/languages/zh-CN.ini index 68967797..5a9273b6 100644 --- a/languages/zh-CN.ini +++ b/languages/zh-CN.ini @@ -323,6 +323,7 @@ CustomEngine = 自定义 SetCustomEngine = 设置搜索引擎 (以 %s 代替搜索关键词) HideDisabledItems = 隐藏已禁用的菜单项目 HideSysStoreItems = 隐藏公共引用中的系统菜单 +StripMenuMnemonics = 隐藏菜单项名称中的快捷键符号(&) SetPerceivedType = 设置扩展名为 %s 的文件感知类型为 SetDefaultDropEffect = 设置文件对象默认拖拽命令为 TopMost = 使窗口始终在屏幕最上方 From 811e79cdf888dba726cea511ba36979b0eb19a70 Mon Sep 17 00:00:00 2001 From: KamilDev Date: Wed, 22 Apr 2026 19:42:00 +1000 Subject: [PATCH 2/2] Group Hide* settings together in the settings panel Puts "Hide access-key markers" next to "Hide disabled items" and "Hide system store items", so the three Hide* rows cluster by shared intent. Dim inferred icons moves to the end. --- ContextMenuManager/Views/AppSettingView.xaml | 12 ++++++------ ContextMenuManager/Views/AppSettingView.xaml.cs | 14 +++++++------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/ContextMenuManager/Views/AppSettingView.xaml b/ContextMenuManager/Views/AppSettingView.xaml index 19f1c5ea..2aaa643f 100644 --- a/ContextMenuManager/Views/AppSettingView.xaml +++ b/ContextMenuManager/Views/AppSettingView.xaml @@ -323,17 +323,17 @@ - + + Toggled="StripMenuMnemonicsCheckBox_OnChanged" /> @@ -344,17 +344,17 @@ - + + Toggled="DimInferredIconsCheckBox_OnChanged" /> diff --git a/ContextMenuManager/Views/AppSettingView.xaml.cs b/ContextMenuManager/Views/AppSettingView.xaml.cs index a733ad10..1454773b 100644 --- a/ContextMenuManager/Views/AppSettingView.xaml.cs +++ b/ContextMenuManager/Views/AppSettingView.xaml.cs @@ -40,8 +40,8 @@ public void RefreshFromConfig() OpenMoreExplorerCheckBox.IsOn = AppConfig.OpenMoreExplorer; HideDisabledItemsCheckBox.IsOn = AppConfig.HideDisabledItems; HideSysStoreItemsCheckBox.IsOn = AppConfig.HideSysStoreItems; - DimInferredIconsCheckBox.IsOn = AppConfig.DimInferredIcons; StripMenuMnemonicsCheckBox.IsOn = AppConfig.StripMenuMnemonics; + DimInferredIconsCheckBox.IsOn = AppConfig.DimInferredIcons; var showHideSysStore = WinOsVersion.Current >= WinOsVersion.Win7; HideSysStoreRow.Visibility = showHideSysStore ? Visibility.Visible : Visibility.Collapsed; @@ -112,10 +112,10 @@ private void LoadLabels() HideSysStoreItemsLabel.Text = AppString.Other.HideSysStoreItems; - DimInferredIconsLabel.Text = AppString.Other.DimInferredIcons; - StripMenuMnemonicsLabel.Text = AppString.Other.StripMenuMnemonics; + DimInferredIconsLabel.Text = AppString.Other.DimInferredIcons; + LoadDynamicOptions(); } @@ -288,19 +288,19 @@ private void HideSysStoreItemsCheckBox_OnChanged(object sender, RoutedEventArgs } } - private void DimInferredIconsCheckBox_OnChanged(object sender, RoutedEventArgs e) + private void StripMenuMnemonicsCheckBox_OnChanged(object sender, RoutedEventArgs e) { if (!isLoading) { - AppConfig.DimInferredIcons = DimInferredIconsCheckBox.IsOn; + AppConfig.StripMenuMnemonics = StripMenuMnemonicsCheckBox.IsOn; } } - private void StripMenuMnemonicsCheckBox_OnChanged(object sender, RoutedEventArgs e) + private void DimInferredIconsCheckBox_OnChanged(object sender, RoutedEventArgs e) { if (!isLoading) { - AppConfig.StripMenuMnemonics = StripMenuMnemonicsCheckBox.IsOn; + AppConfig.DimInferredIcons = DimInferredIconsCheckBox.IsOn; } }