From c6de48b178d4425acf8cad0f7a514a37063d7c93 Mon Sep 17 00:00:00 2001 From: s_falahati Date: Sat, 20 Oct 2018 03:52:48 +0330 Subject: [PATCH] Now refreshes the list of profiles when ShelExtension's context menu is opening --- .../HeliosDesktopMenuExtension.cs | 1 + .../HeliosExecutableMenuExtension.cs | 10 +++++++--- .../HeliosSteamUrlMenuExtension.cs | 10 +++++++--- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/HeliosDisplayManagement.ShellExtension/HeliosDesktopMenuExtension.cs b/HeliosDisplayManagement.ShellExtension/HeliosDesktopMenuExtension.cs index 135504c..aa6b149 100644 --- a/HeliosDisplayManagement.ShellExtension/HeliosDesktopMenuExtension.cs +++ b/HeliosDisplayManagement.ShellExtension/HeliosDesktopMenuExtension.cs @@ -39,6 +39,7 @@ namespace HeliosDisplayManagement.ShellExtension var explorerMenu = new ContextMenuStrip(); if (Profile.GetAllProfiles().Any()) { + Profile.RefreshActiveStatus(); var extensionMenu = new ToolStripMenuItem(Language.Display_Profiles, Properties.Resources.Icon_x16); foreach (var profile in Profile.GetAllProfiles()) diff --git a/HeliosDisplayManagement.ShellExtension/HeliosExecutableMenuExtension.cs b/HeliosDisplayManagement.ShellExtension/HeliosExecutableMenuExtension.cs index b0352ef..aa0d5fc 100644 --- a/HeliosDisplayManagement.ShellExtension/HeliosExecutableMenuExtension.cs +++ b/HeliosDisplayManagement.ShellExtension/HeliosExecutableMenuExtension.cs @@ -26,9 +26,13 @@ namespace HeliosDisplayManagement.ShellExtension var explorerMenu = new ContextMenuStrip(); var extensionMenu = new ToolStripMenuItem(Language.Open_under_Display_Profile, Properties.Resources.Icon_x16); - foreach (var profile in Profile.GetAllProfiles()) - extensionMenu.DropDownItems.Add(CreateProfileMenu(profile)); - extensionMenu.DropDownItems.Add(new ToolStripSeparator()); + if (Profile.GetAllProfiles().Any()) + { + Profile.RefreshActiveStatus(); + foreach (var profile in Profile.GetAllProfiles()) + extensionMenu.DropDownItems.Add(CreateProfileMenu(profile)); + extensionMenu.DropDownItems.Add(new ToolStripSeparator()); + } extensionMenu.DropDownItems.Add(new ToolStripMenuItem(Language.Manage_Profiles, Properties.Resources.Icon_x16, (sender, args) => { HeliosDisplayManagement.Open(); })); diff --git a/HeliosDisplayManagement.ShellExtension/HeliosSteamUrlMenuExtension.cs b/HeliosDisplayManagement.ShellExtension/HeliosSteamUrlMenuExtension.cs index 72da7a3..b86abb9 100644 --- a/HeliosDisplayManagement.ShellExtension/HeliosSteamUrlMenuExtension.cs +++ b/HeliosDisplayManagement.ShellExtension/HeliosSteamUrlMenuExtension.cs @@ -27,9 +27,13 @@ namespace HeliosDisplayManagement.ShellExtension var explorerMenu = new ContextMenuStrip(); var extensionMenu = new ToolStripMenuItem(Language.Open_under_Display_Profile, Properties.Resources.Icon_x16); - foreach (var profile in Profile.GetAllProfiles()) - extensionMenu.DropDownItems.Add(CreateProfileMenu(profile)); - extensionMenu.DropDownItems.Add(new ToolStripSeparator()); + if (Profile.GetAllProfiles().Any()) + { + Profile.RefreshActiveStatus(); + foreach (var profile in Profile.GetAllProfiles()) + extensionMenu.DropDownItems.Add(CreateProfileMenu(profile)); + extensionMenu.DropDownItems.Add(new ToolStripSeparator()); + } extensionMenu.DropDownItems.Add(new ToolStripMenuItem(Language.Manage_Profiles, Properties.Resources.Icon_x16, (sender, args) => { HeliosDisplayManagement.Open(); }));