mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-05 02:36:19 +02:00
ignore holtkey conflict (#41729)
<!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> ## Summary of the Pull Request This PR implements functionality to ignore specific hotkey conflicts in PowerToys settings. The primary purpose is to allow users to suppress individual shortcut conflict warnings if they find their configurations work correctly despite the detected conflicts. <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist - [x] Closes: #41544 - [x] **Communication:** I've discussed this with core contributors already. If the work hasn't been agreed, this work might be rejected - [x] **Tests:** Added/updated and all pass - [x] **Localization:** All end-user-facing strings can be localized - [ ] **Dev docs:** Added/updated - [ ] **New binaries:** Added on the required places - [ ] [JSON for signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json) for new binaries - [ ] [WXS for installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs) for new binaries and localization folder - [ ] [YML for CI pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml) for new test projects - [ ] [YML for signed pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml) - [ ] **Documentation updated:** If checked, please file a pull request on [our docs repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys) and link it here: #xxx <!-- Provide a more detailed description of the PR, other things fixed, or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments - Added hotkey conflict ignore functionality with user-controllable settings - Updated shortcut control UI to support ignore states and clearer conflict messaging - Enhanced conflict detection to respect ignored shortcuts when counting conflicts <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed --------- Signed-off-by: Shawn Yuan <shuaiyuan@microsoft.com> Signed-off-by: Shuai Yuan <shuai.yuan.zju@gmail.com> Signed-off-by: Shawn Yuan (from Dev Box) <shuaiyuan@microsoft.com> Co-authored-by: Niels Laute <niels.laute@live.nl>
This commit is contained in:
@@ -2667,23 +2667,20 @@ From there, simply click on one of the supported files in the File Explorer and
|
||||
<value>Press a combination of keys to change this shortcut.
|
||||
Right-click to remove the key combination, thereby deactivating the shortcut.</value>
|
||||
</data>
|
||||
<data name="Activation_Shortcut_Reset" xml:space="preserve">
|
||||
<value>Reset</value>
|
||||
</data>
|
||||
<data name="Activation_Shortcut_Save" xml:space="preserve">
|
||||
<value>Save</value>
|
||||
</data>
|
||||
<data name="Activation_Shortcut_Title" xml:space="preserve">
|
||||
<value>Activation shortcut</value>
|
||||
</data>
|
||||
<data name="InvalidShortcut.Title" xml:space="preserve">
|
||||
<data name="InvalidShortcut.Message" xml:space="preserve">
|
||||
<value>Invalid shortcut</value>
|
||||
</data>
|
||||
<data name="InvalidShortcutWarningLabel.Text" xml:space="preserve">
|
||||
<value>Only shortcuts that start with **Windows key**, **Ctrl**, **Alt** or **Shift** are valid.</value>
|
||||
<value>A shortcut should start with **Windows key**, **Ctrl**, **Alt** or **Shift**.</value>
|
||||
<comment>The ** sequences are used for text formatting of the key names. Don't remove them on translation.</comment>
|
||||
</data>
|
||||
<data name="WarningShortcutAltGr.Title" xml:space="preserve">
|
||||
<data name="WarningShortcutAltGr.Message" xml:space="preserve">
|
||||
<value>Possible shortcut interference with Alt Gr</value>
|
||||
<comment>Alt Gr refers to the right alt key on some international keyboards</comment>
|
||||
</data>
|
||||
@@ -2691,8 +2688,8 @@ Right-click to remove the key combination, thereby deactivating the shortcut.</v
|
||||
<value>Shortcuts with **Ctrl** and **Alt** may remove functionality from some international keyboards, because **Ctrl** + **Alt** = **Alt Gr** in those keyboards.</value>
|
||||
<comment>The ** sequences are used for text formatting of the key names. Don't remove them on translation.</comment>
|
||||
</data>
|
||||
<data name="WarningShortcutConflict.Title" xml:space="preserve">
|
||||
<value>Shortcut conflict</value>
|
||||
<data name="WarningPotentialShortcutConflict.Message" xml:space="preserve">
|
||||
<value>This shortcut has a potential conflict, but the warning is ignored.</value>
|
||||
</data>
|
||||
<data name="WarningShortcutConflict.ToolTipService.ToolTip" xml:space="preserve">
|
||||
<value>A conflict has been detected for this shortcut.</value>
|
||||
@@ -5256,23 +5253,23 @@ To record a specific window, enter the hotkey with the Alt key in the opposite m
|
||||
<data name="ShortcutConflictWindow_Title" xml:space="preserve">
|
||||
<value>PowerToys shortcut conflicts</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_TitleTxt.Text" xml:space="preserve">
|
||||
<data name="ShortcutConflictWindow_TitleTxt.Title" xml:space="preserve">
|
||||
<value>PowerToys shortcut conflicts</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_Description.Text" xml:space="preserve">
|
||||
<value>Conflicting shortcuts may cause unexpected behavior. Edit them here or go to the module settings to update them.</value>
|
||||
<value>If any shortcut conflicts are detected, they’ll appear below. Conflicts can happen between PowerToys utilities or Windows system shortcuts, and may cause unexpected behavior. If everything works as expected, you can safely ignore the conflict.</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_ModulesUsingShortcut.Text" xml:space="preserve">
|
||||
<value>Conflicts found for</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_SystemCard.Header" xml:space="preserve">
|
||||
<value>System</value>
|
||||
<value>System shortcut</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_SystemCard.Description" xml:space="preserve">
|
||||
<value>Windows system shortcut</value>
|
||||
<value>This shortcut is reserved by Windows and can't be reassigned.</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_SystemShortcutMessage.Text" xml:space="preserve">
|
||||
<value>This shortcut can't be changed.</value>
|
||||
<data name="ShortcutConflictWindow_SystemShortcutLink.Content" xml:space="preserve">
|
||||
<value>See all Windows shortcuts</value>
|
||||
</data>
|
||||
<data name="ShortcutConflictWindow_SystemShortcutTooltip.Content" xml:space="preserve">
|
||||
<value>This shortcut is used by Windows and can't be changed.</value>
|
||||
@@ -5312,4 +5309,31 @@ To record a specific window, enter the hotkey with the Alt key in the opposite m
|
||||
<data name="UtilitiesHeader.Title" xml:space="preserve">
|
||||
<value>Utilities</value>
|
||||
</data>
|
||||
<data name="DismissConflictBtn.[using:Microsoft.UI.Xaml.Automation]AutomationProperties.Name" xml:space="preserve">
|
||||
<value>Dismiss</value>
|
||||
</data>
|
||||
<data name="DismissText.Text" xml:space="preserve">
|
||||
<value>Dismiss</value>
|
||||
</data>
|
||||
<data name="Shortcut_ResetBtn.[using:Microsoft.UI.Xaml.Automation]AutomationProperties.Name" xml:space="preserve">
|
||||
<value>Reset shortcut</value>
|
||||
</data>
|
||||
<data name="Shortcut_ResetToolTip.Text" xml:space="preserve">
|
||||
<value>Reset to the default shortcut</value>
|
||||
</data>
|
||||
<data name="Shortcut_Reset.Text" xml:space="preserve">
|
||||
<value>Reset</value>
|
||||
</data>
|
||||
<data name="Shortcut_ClearBtn.[using:Microsoft.UI.Xaml.Automation]AutomationProperties.Name" xml:space="preserve">
|
||||
<value>Clear shortcut</value>
|
||||
</data>
|
||||
<data name="Shortcut_ClearToolTip.Text" xml:space="preserve">
|
||||
<value>Clear and unassign this shortcut</value>
|
||||
</data>
|
||||
<data name="Shortcut_Clear.Text" xml:space="preserve">
|
||||
<value>Clear</value>
|
||||
</data>
|
||||
<data name="Shortcut_Conflict_LearnMore.Content" xml:space="preserve">
|
||||
<value>Learn more</value>
|
||||
</data>
|
||||
</root>
|
||||
Reference in New Issue
Block a user