[Settings]Fix minor issues in showing shortcuts in Flyout and Dashboard (#31754)

This commit is contained in:
Davide Giacometti
2024-03-12 17:51:28 +01:00
committed by GitHub
parent a36e119204
commit c41c9b6107
4 changed files with 25 additions and 7 deletions

View File

@@ -7,6 +7,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:tkcontrols="using:CommunityToolkit.WinUI.Controls" xmlns:tkcontrols="using:CommunityToolkit.WinUI.Controls"
xmlns:tkconverters="using:CommunityToolkit.WinUI.Converters"
xmlns:ui="using:CommunityToolkit.WinUI" xmlns:ui="using:CommunityToolkit.WinUI"
xmlns:viewModels="using:Microsoft.PowerToys.Settings.UI.ViewModels" xmlns:viewModels="using:Microsoft.PowerToys.Settings.UI.ViewModels"
mc:Ignorable="d"> mc:Ignorable="d">
@@ -20,6 +21,8 @@
<Setter Property="Height" Value="32" /> <Setter Property="Height" Value="32" />
<Setter Property="FontFamily" Value="{ThemeResource SymbolThemeFontFamily}" /> <Setter Property="FontFamily" Value="{ThemeResource SymbolThemeFontFamily}" />
</Style> </Style>
<tkconverters:StringVisibilityConverter x:Key="StringVisibilityConverter" />
</Page.Resources> </Page.Resources>
<Grid> <Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
@@ -79,7 +82,6 @@
AutomationProperties.Name="{x:Bind Label}" AutomationProperties.Name="{x:Bind Label}"
Click="ModuleButton_Click" Click="ModuleButton_Click"
Tag="{x:Bind Tag}" Tag="{x:Bind Tag}"
ToolTipService.ToolTip="{x:Bind ToolTip}"
Visibility="{x:Bind Visible, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource BoolToVisibilityConverter}}"> Visibility="{x:Bind Visible, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource BoolToVisibilityConverter}}">
<controls:FlyoutMenuButton.Content> <controls:FlyoutMenuButton.Content>
<TextBlock <TextBlock
@@ -95,6 +97,9 @@
</Image.Source> </Image.Source>
</Image> </Image>
</controls:FlyoutMenuButton.Icon> </controls:FlyoutMenuButton.Icon>
<ToolTipService.ToolTip>
<ToolTip Content="{x:Bind ToolTip}" Visibility="{x:Bind ToolTip, Converter={StaticResource StringVisibilityConverter}}" />
</ToolTipService.ToolTip>
</controls:FlyoutMenuButton> </controls:FlyoutMenuButton>
</DataTemplate> </DataTemplate>
</ItemsControl.ItemTemplate> </ItemsControl.ItemTemplate>

View File

@@ -80,13 +80,14 @@ namespace Microsoft.PowerToys.Settings.UI
this.MoveAndResize(newPosition.X, newPosition.Y, WindowWidth, WindowHeight); this.MoveAndResize(newPosition.X, newPosition.Y, WindowWidth, WindowHeight);
} }
FlyoutShellPage.SwitchToLaunchPage();
} }
if (args.WindowActivationState == Microsoft.UI.Xaml.WindowActivationState.Deactivated) if (args.WindowActivationState == Microsoft.UI.Xaml.WindowActivationState.Deactivated)
{ {
if (ViewModel.CanHide) if (ViewModel.CanHide)
{ {
FlyoutShellPage.SwitchToLaunchPage();
this.Hide(); this.Hide();
} }
} }

View File

@@ -18,7 +18,6 @@ using Microsoft.PowerToys.Settings.UI.Services;
using Microsoft.PowerToys.Settings.UI.Views; using Microsoft.PowerToys.Settings.UI.Views;
using Microsoft.UI.Xaml; using Microsoft.UI.Xaml;
using Microsoft.UI.Xaml.Controls; using Microsoft.UI.Xaml.Controls;
using Windows.UI;
namespace Microsoft.PowerToys.Settings.UI.ViewModels namespace Microsoft.PowerToys.Settings.UI.ViewModels
{ {
@@ -443,9 +442,14 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels
private ObservableCollection<DashboardModuleItem> GetModuleItemsShortcutGuide() private ObservableCollection<DashboardModuleItem> GetModuleItemsShortcutGuide()
{ {
ISettingsRepository<ShortcutGuideSettings> moduleSettingsRepository = SettingsRepository<ShortcutGuideSettings>.GetInstance(new SettingsUtils()); ISettingsRepository<ShortcutGuideSettings> moduleSettingsRepository = SettingsRepository<ShortcutGuideSettings>.GetInstance(new SettingsUtils());
var shortcut = moduleSettingsRepository.SettingsConfig.Properties.UseLegacyPressWinKeyBehavior.Value
? new List<object> { 92 } // Right Windows key code
: moduleSettingsRepository.SettingsConfig.Properties.OpenShortcutGuide.GetKeysList();
var list = new List<DashboardModuleItem> var list = new List<DashboardModuleItem>
{ {
new DashboardModuleShortcutItem() { Label = resourceLoader.GetString("ShortcutGuide_ShortDescription"), Shortcut = moduleSettingsRepository.SettingsConfig.Properties.OpenShortcutGuide.GetKeysList() }, new DashboardModuleShortcutItem() { Label = resourceLoader.GetString("ShortcutGuide_ShortDescription"), Shortcut = shortcut },
}; };
return new ObservableCollection<DashboardModuleItem>(list); return new ObservableCollection<DashboardModuleItem>(list);
} }

View File

@@ -76,12 +76,12 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels
Label = resourceLoader.GetString(ModuleHelper.GetModuleLabelResourceName(moduleType)), Label = resourceLoader.GetString(ModuleHelper.GetModuleLabelResourceName(moduleType)),
Tag = moduleType, Tag = moduleType,
Visible = ModuleHelper.GetIsModuleEnabled(generalSettingsConfig, moduleType), Visible = ModuleHelper.GetIsModuleEnabled(generalSettingsConfig, moduleType),
ToolTip = GetModuleTooltip(moduleType), ToolTip = GetModuleToolTip(moduleType),
Icon = ModuleHelper.GetModuleTypeFluentIconName(moduleType), Icon = ModuleHelper.GetModuleTypeFluentIconName(moduleType),
}); });
} }
private string GetModuleTooltip(ModuleType moduleType) private string GetModuleToolTip(ModuleType moduleType)
{ {
return moduleType switch return moduleType switch
{ {
@@ -90,7 +90,7 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels
ModuleType.PowerLauncher => SettingsRepository<PowerLauncherSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.OpenPowerLauncher.ToString(), ModuleType.PowerLauncher => SettingsRepository<PowerLauncherSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.OpenPowerLauncher.ToString(),
ModuleType.PowerOCR => SettingsRepository<PowerOcrSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.ActivationShortcut.ToString(), ModuleType.PowerOCR => SettingsRepository<PowerOcrSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.ActivationShortcut.ToString(),
ModuleType.MeasureTool => SettingsRepository<MeasureToolSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.ActivationShortcut.ToString(), ModuleType.MeasureTool => SettingsRepository<MeasureToolSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.ActivationShortcut.ToString(),
ModuleType.ShortcutGuide => SettingsRepository<ShortcutGuideSettings>.GetInstance(new SettingsUtils()).SettingsConfig.Properties.OpenShortcutGuide.ToString(), ModuleType.ShortcutGuide => GetShortcutGuideToolTip(),
_ => string.Empty, _ => string.Empty,
}; };
} }
@@ -105,6 +105,14 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels
} }
} }
private string GetShortcutGuideToolTip()
{
var shortcutGuideSettings = SettingsRepository<ShortcutGuideSettings>.GetInstance(new SettingsUtils()).SettingsConfig;
return shortcutGuideSettings.Properties.UseLegacyPressWinKeyBehavior.Value
? "Win"
: shortcutGuideSettings.Properties.OpenShortcutGuide.ToString();
}
internal void StartBugReport() internal void StartBugReport()
{ {
SendIPCMessage("{\"bugreport\": 0 }"); SendIPCMessage("{\"bugreport\": 0 }");