Flow.Launcher/Plugins/Flow.Launcher.Plugin.WindowsSettings/Helper/ResultHelper.cs

227 lines
8.8 KiB
C#
Raw Permalink Normal View History

using System;
using System.ComponentModel;
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
2021-11-30 19:27:51 +00:00
using Flow.Launcher.Plugin.WindowsSettings.Classes;
using Flow.Launcher.Plugin.WindowsSettings.Properties;
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
2021-11-30 19:27:51 +00:00
namespace Flow.Launcher.Plugin.WindowsSettings.Helper
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
{
/// <summary>
/// Helper class to easier work with results
/// </summary>
internal static class ResultHelper
{
2021-07-19 09:17:09 +00:00
private static IPublicAPI? _api;
public static void Init(IPublicAPI api) => _api = api;
2022-12-31 15:43:07 +00:00
private static List<Result> GetDefaultResults(in IEnumerable<WindowsSetting> list,
string windowsSettingIconPath,
string controlPanelIconPath)
{
return list.Select(entry =>
{
var result = NewSettingResult(100, entry.Type, windowsSettingIconPath, controlPanelIconPath, entry);
AddOptionalToolTip(entry, result);
return result;
}).ToList();
}
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
/// <summary>
/// Return a list with <see cref="Result"/>s, based on the given list.
/// </summary>
/// <param name="list">The original result list to convert.</param>
2021-07-20 03:11:36 +00:00
/// <param name="query">Query for specific result List</param>
/// <param name="windowsSettingIconPath">The path to the icon of each entry.</param>
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
/// <returns>A list with <see cref="Result"/>.</returns>
internal static List<Result> GetResultList(
in IEnumerable<WindowsSetting> list,
2021-07-19 09:17:09 +00:00
Query query,
string windowsSettingIconPath,
string controlPanelIconPath)
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
{
if (string.IsNullOrWhiteSpace(query.Search))
{
2022-12-31 15:43:07 +00:00
return GetDefaultResults(list, windowsSettingIconPath, controlPanelIconPath);
}
2021-07-19 09:17:09 +00:00
var resultList = new List<Result>();
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
foreach (var entry in list)
{
// Adjust the score to lower the order of many irrelevant matches from area strings
// that may only be for description.
const int nonNameMatchScoreAdj = 10;
2021-07-20 03:11:36 +00:00
2021-07-20 03:11:36 +00:00
Result? result;
Debug.Assert(_api != null, nameof(_api) + " != null");
var nameMatch = _api.FuzzySearch(query.Search, entry.Name);
if (nameMatch.IsSearchPrecisionScoreMet())
{
var settingResult = NewSettingResult(nameMatch.Score, entry.Type, windowsSettingIconPath, controlPanelIconPath, entry);
2021-07-20 03:11:36 +00:00
settingResult.TitleHighlightData = nameMatch.MatchData;
result = settingResult;
}
else
{
var areaMatch = _api.FuzzySearch(query.Search, entry.Area);
if (areaMatch.IsSearchPrecisionScoreMet())
{
var settingResult = NewSettingResult(areaMatch.Score - nonNameMatchScoreAdj, entry.Type, windowsSettingIconPath, controlPanelIconPath, entry);
2021-07-20 03:11:36 +00:00
result = settingResult;
}
else
{
result = entry.AltNames?
.Select(altName => _api.FuzzySearch(query.Search, altName))
.Where(match => match.IsSearchPrecisionScoreMet())
.Select(altNameMatch => NewSettingResult(altNameMatch.Score - nonNameMatchScoreAdj, entry.Type, windowsSettingIconPath, controlPanelIconPath, entry))
2021-07-20 03:11:36 +00:00
.FirstOrDefault();
}
2021-09-26 23:28:22 +00:00
if (result is null && entry.Keywords is not null)
{
2021-10-30 02:53:52 +00:00
string[] searchKeywords = query.SearchTerms;
2021-09-26 23:28:22 +00:00
if (searchKeywords
.All(x => entry
.Keywords
.SelectMany(x => x)
.Contains(x, StringComparer.CurrentCultureIgnoreCase))
)
result = NewSettingResult(nonNameMatchScoreAdj, entry.Type, windowsSettingIconPath, controlPanelIconPath, entry);
2021-09-26 23:28:22 +00:00
}
2021-07-20 03:11:36 +00:00
}
2021-09-26 23:28:22 +00:00
2021-07-19 09:17:09 +00:00
if (result is null)
continue;
AddOptionalToolTip(entry, result);
resultList.Add(result);
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
}
return resultList;
}
2022-12-31 15:43:07 +00:00
private const int TaskLinkScorePenalty = 50;
private static Result NewSettingResult(int score, string type, string windowsSettingIconPath, string controlPanelIconPath, WindowsSetting entry) => new()
{
Action = _ => DoOpenSettingsAction(entry),
IcoPath = type == "AppSettingsApp" ? windowsSettingIconPath : controlPanelIconPath,
2022-06-11 19:21:41 +00:00
Glyph = entry.IconGlyph,
SubTitle = GetSubtitle(entry.Area, type),
2022-06-11 19:21:41 +00:00
Title = entry.Name,
ContextData = entry,
2022-12-31 15:43:07 +00:00
Score = score - (type == "TaskLink" ? TaskLinkScorePenalty : 0),
};
private static string GetSubtitle(string section, string entryType)
{
var settingType = entryType == "AppSettingsApp" ? Resources.AppSettingsApp : Resources.AppControlPanel;
return $"{settingType} > {section}";
}
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
/// <summary>
/// Add a tool-tip to the given <see cref="Result"/>, based o the given <see cref="IWindowsSetting"/>.
/// </summary>
/// <param name="entry">The <see cref="WindowsSetting"/> that contain informations for the tool-tip.</param>
/// <param name="result">The <see cref="Result"/> that need a tool-tip.</param>
private static void AddOptionalToolTip(WindowsSetting entry, Result result)
{
var toolTipText = new StringBuilder();
var settingType = entry.Type == "AppSettingsApp" ? Resources.AppSettingsApp : Resources.AppControlPanel;
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
toolTipText.AppendLine($"{Resources.Application}: {settingType}");
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
toolTipText.AppendLine($"{Resources.Area}: {entry.Area}");
if (entry.AltNames != null && entry.AltNames.Any())
{
var altList = entry.AltNames.Aggregate((current, next) => $"{current}, {next}");
toolTipText.AppendLine($"{Resources.AlternativeName}: {altList}");
}
toolTipText.Append($"{Resources.Command}: {entry.Command}");
if (!string.IsNullOrEmpty(entry.Note))
{
toolTipText.AppendLine(string.Empty);
toolTipText.AppendLine(string.Empty);
toolTipText.Append($"{Resources.Note}: {entry.Note}");
}
2021-07-19 08:32:57 +00:00
result.TitleToolTip = toolTipText.ToString();
result.SubTitleToolTip = result.TitleToolTip;
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
}
/// <summary>
/// Open the settings page of the given <see cref="IWindowsSetting"/>.
/// </summary>
/// <param name="entry">The <see cref="WindowsSetting"/> that contain the information to open the setting on command level.</param>
/// <returns><see langword="true"/> if the settings could be opened, otherwise <see langword="false"/>.</returns>
private static bool DoOpenSettingsAction(WindowsSetting entry)
{
ProcessStartInfo processStartInfo;
var command = entry.Command;
2021-10-30 05:11:17 +00:00
command = Environment.ExpandEnvironmentVariables(command);
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
if (command.Contains(' '))
{
var commandSplit = command.Split(' ');
2021-07-19 09:17:09 +00:00
var file = commandSplit.First();
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
var arguments = command[file.Length..].TrimStart();
processStartInfo = new ProcessStartInfo(file, arguments)
{
UseShellExecute = false,
};
}
else
{
processStartInfo = new ProcessStartInfo(command)
{
UseShellExecute = true,
};
}
try
{
Process.Start(processStartInfo);
return true;
}
catch (Win32Exception)
{
try
{
processStartInfo.UseShellExecute = true;
processStartInfo.Verb = "runas";
Process.Start(processStartInfo);
return true;
}
catch (Exception exception)
{
Log.Exception("can't open settings on elevated permission", exception, typeof(ResultHelper));
return false;
}
}
[Run-Plugin] Settings plugin (#11663) * Current settings plugin state on fresh master * typo fixes * Add to YML * Add to WXS * Address feedback - highlight the note in the tool-tip a little bit * Address feedback add extra note for "Manage known networks" * Address feedback - Show type of settings in sub-line and remove extra ControlPanel prefix in json * Add "WiFi" as alternative name for each Wi-Fi setting * Add a few more alternative names * Make RESX happy * exclude WindowsSettings.json from spell checker because all entries are placeholders for the translation * Translate all alternative names * Translate all notes * fix for not find "wifi" * fix typo * typo fixes and remove debug * Address feedback - correct author * Address feedback - settings entries * Address feedback - code changes * Address feedback - RESX changes and tool-tip * fix typo * Address feedback - remove superfluous interface * Address feedback - Update RESX * Address feedback - simplification * Address feedback - remove enumeration * Address feedback - move big function in extra helper classes * Address feedback - move big function in extra helper class * Address feedback - correct namespace * Address feedback - move translation to translation helper and make translation more robust * fix typo * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/ResultHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Main.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * fix build * Address feedback * ups * Address feedback - Correct windows update settings name * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/WindowsSettings.json Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * adding in dependencies so when you build Launcher, all plugins are included * Address feedback - add optional updates * Address feedback - use build numebr instaed of Windows version * Address feedback - Log difference between registry values + fix wrong ValueType (ushort -> uint) * Address feebdback - improved warning message on different registry values * fix typo * removed not need using * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Update src/modules/launcher/Plugins/Microsoft.PowerToys.Run.Plugin.WindowsSettings/Helper/UnsupportedSettingsHelper.cs Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> * Addrress feedback, don't copy embed file * Address feedback - Remove duplicated or not available settings * Address feedback - Improve scoring * Address feedback - Add extra filter * Address feedback - replace the are filter sign with a better one * Address feedback - fix unwanted behavior * Address feedback - Change class name * Address feedback - Rename settings type * typo fix * Fix installer * Comment out localization support Co-authored-by: Sekan, Tobias <tobias.sekan@startmail.com> Co-authored-by: Heiko <61519853+htcfreek@users.noreply.github.com> Co-authored-by: crutkas <crutkas@microsoft.com>
2021-06-09 15:04:03 +00:00
catch (Exception exception)
{
Log.Exception("can't open settings", exception, typeof(ResultHelper));
return false;
}
}
}
}