mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-03 09:46:54 +02:00
[CmdPal] Open CmdPal settings from PT settings (#39262)
* Turning description into a hyperlink * Update expect.txt * Update CmdPalPage.xaml.cs * update xaml format. Signed-off-by: Shawn Yuan <shuai.yuan.zju@gmail.com> * update. Signed-off-by: Shawn Yuan <shuaiyuan@microsoft.com> * Added logger Signed-off-by: Shawn Yuan <shuai.yuan.zju@gmail.com> * update Signed-off-by: Shawn Yuan <shuai.yuan.zju@gmail.com> --------- Signed-off-by: Shawn Yuan <shuai.yuan.zju@gmail.com> Signed-off-by: Shawn Yuan <shuaiyuan@microsoft.com> Co-authored-by: Shawn Yuan <shuai.yuan.zju@gmail.com> Co-authored-by: Shawn Yuan <shuaiyuan@microsoft.com>
This commit is contained in:
1
.github/actions/spell-check/expect.txt
vendored
1
.github/actions/spell-check/expect.txt
vendored
@@ -315,6 +315,7 @@ debugbreak
|
|||||||
declatory
|
declatory
|
||||||
decryptor
|
decryptor
|
||||||
Dedup
|
Dedup
|
||||||
|
Deeplink
|
||||||
DEFAULTBOOTSTRAPPERINSTALLFOLDER
|
DEFAULTBOOTSTRAPPERINSTALLFOLDER
|
||||||
DEFAULTCOLOR
|
DEFAULTCOLOR
|
||||||
DEFAULTFLAGS
|
DEFAULTFLAGS
|
||||||
|
|||||||
@@ -27,12 +27,17 @@
|
|||||||
Severity="Informational" />
|
Severity="Informational" />
|
||||||
|
|
||||||
<controls:SettingsGroup x:Uid="CmdPal_Activation_GroupSettings" IsEnabled="{x:Bind ViewModel.IsEnabled, Mode=OneWay}">
|
<controls:SettingsGroup x:Uid="CmdPal_Activation_GroupSettings" IsEnabled="{x:Bind ViewModel.IsEnabled, Mode=OneWay}">
|
||||||
|
|
||||||
<tkcontrols:SettingsCard x:Uid="CmdPal_ActivationShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
|
<tkcontrols:SettingsCard x:Uid="CmdPal_ActivationShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
|
||||||
<controls:ShortcutControl
|
<controls:ShortcutControl
|
||||||
MinWidth="{StaticResource SettingActionControlMinWidth}"
|
MinWidth="{StaticResource SettingActionControlMinWidth}"
|
||||||
HotkeySettings="{x:Bind Path=ViewModel.Hotkey, Mode=OneWay}"
|
HotkeySettings="{x:Bind Path=ViewModel.Hotkey, Mode=OneWay}"
|
||||||
IsEnabled="False" />
|
IsEnabled="False" />
|
||||||
|
<tkcontrols:SettingsCard.Description>
|
||||||
|
<HyperlinkButton
|
||||||
|
x:Name="CmdPalSettingsDeeplink"
|
||||||
|
x:Uid="CmdPal_DeeplinkContent"
|
||||||
|
Click="CmdPalSettingsDeeplink_Click" />
|
||||||
|
</tkcontrols:SettingsCard.Description>
|
||||||
</tkcontrols:SettingsCard>
|
</tkcontrols:SettingsCard>
|
||||||
</controls:SettingsGroup>
|
</controls:SettingsGroup>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
|
|||||||
@@ -2,6 +2,10 @@
|
|||||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||||
// See the LICENSE file in the project root for more information.
|
// See the LICENSE file in the project root for more information.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.IO;
|
||||||
|
using ManagedCommon;
|
||||||
using Microsoft.PowerToys.Settings.UI.Helpers;
|
using Microsoft.PowerToys.Settings.UI.Helpers;
|
||||||
using Microsoft.PowerToys.Settings.UI.Library;
|
using Microsoft.PowerToys.Settings.UI.Library;
|
||||||
using Microsoft.PowerToys.Settings.UI.ViewModels;
|
using Microsoft.PowerToys.Settings.UI.ViewModels;
|
||||||
@@ -29,5 +33,37 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
|||||||
{
|
{
|
||||||
ViewModel.RefreshEnabledState();
|
ViewModel.RefreshEnabledState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void LaunchApp(string appPath)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string dir = Path.GetDirectoryName(appPath);
|
||||||
|
|
||||||
|
var processStartInfo = new ProcessStartInfo
|
||||||
|
{
|
||||||
|
FileName = appPath,
|
||||||
|
Arguments = string.Empty,
|
||||||
|
WorkingDirectory = dir,
|
||||||
|
UseShellExecute = true,
|
||||||
|
Verb = "open",
|
||||||
|
CreateNoWindow = false,
|
||||||
|
};
|
||||||
|
|
||||||
|
Process process = Process.Start(processStartInfo) ?? throw new InvalidOperationException("Failed to start the process.");
|
||||||
|
process.WaitForInputIdle();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw new InvalidOperationException($"Failed to launch CmdPal settings: {ex.Message}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CmdPalSettingsDeeplink_Click(object sender, Microsoft.UI.Xaml.RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
// Launch CmdPal settings window
|
||||||
|
string launchPath = "x-cmdpal://settings";
|
||||||
|
LaunchApp(launchPath);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4996,8 +4996,8 @@ To record a specific window, enter the hotkey with the Alt key in the opposite m
|
|||||||
<data name="CmdPal_ActivationShortcut.Header" xml:space="preserve">
|
<data name="CmdPal_ActivationShortcut.Header" xml:space="preserve">
|
||||||
<value>Activation shortcut</value>
|
<value>Activation shortcut</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="CmdPal_ActivationShortcut.Description" xml:space="preserve">
|
<data name="CmdPal_DeeplinkContent.Content" xml:space="preserve">
|
||||||
<value>Go to Command Palette settings to customize the activation shortcut.</value>
|
<value>Open Command Palette settings to customize the activation shortcut</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Help_chromaCIE" xml:space="preserve">
|
<data name="Help_chromaCIE" xml:space="preserve">
|
||||||
<value>chroma (CIE LCh)</value>
|
<value>chroma (CIE LCh)</value>
|
||||||
|
|||||||
Reference in New Issue
Block a user