mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-09-02 20:18:53 +02:00
## Summary Make the new WinUI 3 Keyboard Manager editor the default by flipping `useNewEditor` from `false` to `true` everywhere a default is supplied. ## Behavior - **New installs / new `settings.json`** → new editor enabled - **Upgrades from a version before the `useNewEditor` key existed** → new editor enabled (the key is missing, so the default kicks in) - **Users who have explicitly toggled the setting** → unchanged (we only change the default, not stored values) - The "Go back to classic" button in the KBM settings page is untouched ## Changes - `src/settings-ui/Settings.UI.Library/KeyboardManagerProperties.cs` — `UseNewEditor` property initializer now `true` - `src/modules/keyboardmanager/dll/dllmain.cpp` — `m_useNewEditor` member init + `GetNamedBoolean` fallback now `true`; warn-log message updated to match - `src/modules/cmdpal/ext/Microsoft.CmdPal.Ext.PowerToys/Modules/KeyboardManagerModuleCommandProvider.cs` — both fallback paths in `IsUseNewEditorEnabled` (file missing / unreadable) now return `true`, so the "Open New Editor" CmdPal command surfaces by default ## Validation Built locally on ARM64 Debug (exit code 0): - `src/modules/keyboardmanager/dll` - `src/modules/cmdpal/ext/Microsoft.CmdPal.Ext.PowerToys` - `src/settings-ui/Settings.UI.Library` Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
44 lines
1.5 KiB
C#
44 lines
1.5 KiB
C#
// Copyright (c) Microsoft Corporation
|
|
// The Microsoft Corporation licenses this file to you under the MIT license.
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
using System.Collections.Generic;
|
|
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
using Settings.UI.Library.Attributes;
|
|
|
|
namespace Microsoft.PowerToys.Settings.UI.Library
|
|
{
|
|
public class KeyboardManagerProperties
|
|
{
|
|
[JsonPropertyName("activeConfiguration")]
|
|
[CmdConfigureIgnoreAttribute]
|
|
public GenericProperty<string> ActiveConfiguration { get; set; }
|
|
|
|
// List of all Keyboard Configurations.
|
|
[JsonPropertyName("keyboardConfigurations")]
|
|
[CmdConfigureIgnoreAttribute]
|
|
public GenericProperty<List<string>> KeyboardConfigurations { get; set; }
|
|
|
|
public HotkeySettings DefaultEditorShortcut => new HotkeySettings(true, false, false, true, 0x51);
|
|
|
|
public KeyboardManagerProperties()
|
|
{
|
|
EditorShortcut = DefaultEditorShortcut;
|
|
KeyboardConfigurations = new GenericProperty<List<string>>(new List<string> { "default", });
|
|
ActiveConfiguration = new GenericProperty<string>("default");
|
|
}
|
|
|
|
public HotkeySettings EditorShortcut { get; set; }
|
|
|
|
[JsonPropertyName("useNewEditor")]
|
|
public bool UseNewEditor { get; set; } = true;
|
|
|
|
public string ToJsonString()
|
|
{
|
|
return JsonSerializer.Serialize(this);
|
|
}
|
|
}
|
|
}
|