diff --git a/.github/actions/spell-check/allow/names.txt b/.github/actions/spell-check/allow/names.txt index 338d9b0448..ee32855914 100644 --- a/.github/actions/spell-check/allow/names.txt +++ b/.github/actions/spell-check/allow/names.txt @@ -1,7 +1,9 @@ bdoserror crutkas +Deuchert edwinzap hallatore +harvastum mshtang nVidia robmen diff --git a/.github/actions/spell-check/expect.txt b/.github/actions/spell-check/expect.txt index 3ac98ffdad..00577dc9e8 100644 --- a/.github/actions/spell-check/expect.txt +++ b/.github/actions/spell-check/expect.txt @@ -1478,6 +1478,7 @@ PCIDLIST PCWSTR pdb pdbonly +pde pdfpreviewhandler pdo pdto diff --git a/README.md b/README.md index 62303f380c..d92d63a31b 100644 --- a/README.md +++ b/README.md @@ -28,13 +28,13 @@ Microsoft PowerToys is a set of utilities for power users to tune and streamline - Windows 11 or Windows 10 v1903 (18362) or newer. - Our installer will install the following items: - - [.NET 6.0.3 Desktop Runtime](https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-desktop-6.0.3-windows-x64-installer) or a newer 6.0.x runtime. + - [.NET 6.0.4 Desktop Runtime](https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-desktop-6.0.4-windows-x64-installer) or a newer 6.0.x runtime. - [Microsoft Edge WebView2 Runtime](https://go.microsoft.com/fwlink/p/?LinkId=2124703) bootstrapper. This will install the latest version. - [Windows App SDK Runtime 1.0.3](https://docs.microsoft.com/en-us/windows/apps/windows-app-sdk/downloads). This will install version 1.0.3 if this or newer version is not installed already. ### Via GitHub with EXE [Recommended] - [Microsoft PowerToys GitHub releases page][github-release-link], click on `Assets` at the bottom to show the files available in the release and then click on `PowerToysSetup-0.57.0-x64.exe` to download the PowerToys installer. + [Microsoft PowerToys GitHub releases page][github-release-link], click on `Assets` at the bottom to show the files available in the release and then click on `PowerToysSetup-0.58.0-x64.exe` to download the PowerToys installer. This is our preferred method. @@ -69,117 +69,117 @@ For guidance on developing for PowerToys, please read the [developer docs](/doc/ Our [prioritized roadmap][roadmap] of features and utilities that the core team is focusing on. -### 0.57 - March 2022 Update +### 0.58 - April 2022 Update -In this release, we focused heavily on stability and improvements. Below are some of the highlights! +In this release, we focused on upgrading to new dependencies and building for native ARM64. Below are some of the highlights! **Highlights** -- PowerToys Run quality pass. Old standing issues were re-evaluated and fixed. -- Additional features and improvements were added to existing PowerToys Run plugins. -- New plugin for time and date values/information in PowerToys Run. Thanks [@htcfreek](https://github.com/htcfreek)! -- The [PowerToys Run documentation](https://aka.ms/PowerToysOverview_PowerToysRun) is also receiving a required update. Thanks [@htcfreek](https://github.com/htcfreek)! -- PowerToys will register SVGs as a picture kind when SVG Thumbnails are enabled so they appear when searching for pictures in File Explorer. -- We've disabled PDF preview by default, given its incompatibilities with Outlook and that Edge is now being registered for previewing PDF files on Windows 10 too. -- From a coding quality point of view, every project now has code analyzer active. Thanks [@CleanCodeDeveloper](https://github.com/CleanCodeDeveloper)! -- A double click on the tray icon is needed instead of single click to open settings. +- Most of the work for running natively on ARM64 has been included in the repo. Thanks [@snickler](https://github.com/snickler)! +- Uses of the obsolete WebBrowser control were replaced with WebView 2. +- All uses of .NET core were removed. PowerToys now runs on .NET framework 6. +- Settings no longer runs on XAML Islands and is now running on WinUI 3, fixing many bugs related to XAML islands. + +### General + +- Spell checking fixes in the code. Thanks [@jsoref](https://github.com/jsoref)! +- Fix for a CI error related to spell checking due to a GitHub API change. Thanks [@jsoref](https://github.com/jsoref)! +- Fixed the documentation references to GitHub. Thanks [@Cyl18](https://github.com/Cyl18)! + +### ARM64 + +- Prepare solution and property files for ARM64 port. Thanks [@snickler](https://github.com/snickler)! +- Port unhandled exception handler to ARM64. Thanks [@snickler](https://github.com/snickler)! +- Port of the Settings projects to ARM64. Thanks [@snickler](https://github.com/snickler)! +- Port of most of the PowerToys to ARM64. Thanks [@snickler](https://github.com/snickler)! +- Port of the debug utilities to ARM64. ### Always on Top -- New sound for Always on Top activation. Thanks [@franky920920](https://github.com/franky920920)! - -### Awake -- Fixes for the system tray icon. Thanks [@dend](https://github.com/dend)! -- Temporary duration presets are now configurable. Thanks [@dend](https://github.com/dend)! -- Fix for an issue causing Awake to not be closed properly. Thanks [@dend](https://github.com/dend)! +- Fix for topmost state of the window resetting for some applications. (This was a hotfix for 0.57) ### ColorPicker -- It's now possible to delete multiple colors from the history, or to export a list of colors to a file. Thanks [@mshtang](https://github.com/mshtang)! -- The CIEXYZ format has increased precision. Thanks [@m13253](https://github.com/m13253)! -- Performance improved by reducing the use of low level keyboard hooks. +- The CIEXYZ format is now properly show in upper case. ### FancyZones -- Fixed a bug where the same layout applied with different configurations to different screens would reset to a single configuration. (This was a hotfix for 0.56) -- When snapping windows with rounded corners on Windows 11, set the correct corner preferences to avoid gaps between zones. Thanks [@hallatore](https://github.com/hallatore)! -- Fix for canvas layout resetting due to resolution changes. +- Restore rounded corners on Windows 11 and add a setting to control this behavior. (This was a hotfix for 0.57) +- Fixed an edge case where the Windows Terminal window wouldn't be snapped when opened. (This was a hotfix for 0.57) +- Improved narrator support in the Grid Editor. (This was a hotfix for 0.57) +- Fixed a bug when restoring rounded corners on Windows 11. (This was a hotfix for 0.57) +- Fix for windows not being resized correctly on different dpi settings. (This was a hotfix for 0.57) +- Removed resolution from the screen identifier so zones aren't reset when resolution changes. +- Scale the canvas layout when editing according to new scaling/resolution. +- Shipping a new tool to help debug windows interactions with FancyZones. ### File explorer -- Additional markdown file extensions added for Markdown Preview. Thanks [@skycommand](https://github.com/skycommand)! -- SVG files are now registered as a picture kind on Windows. -- Added a text wrapping setting and copy context menu to dev file preview. Thanks [@Aaron-Junker](https://github.com/Aaron-Junker)! -- PDF file preview and thumbnails are now disabled by default, due to incompatibility with Outlook and an appropriate warning is shown in Settings. +- Fix for a crash in dev file preview if the settings file hadn't been created yet. (This was a hotfix for 0.57) +- New file types were added to dev file preview (".reg", ".xslt", ".xsd", ".wsdl", ".ino", ".pde", ".razor"). Thanks [@Aaron-Junker](https://github.com/Aaron-Junker)! +- Fix an existing "file still in use" issue in dev file preview. Thanks [@Aaron-Junker](https://github.com/Aaron-Junker)! +- Dev file preview is now able to interpret file extensions in a case-insensitive way. Thanks [@Aaron-Junker](https://github.com/Aaron-Junker)! +- SVG and markdown viewers no longer use WebBrowser and use WebView2 instead. +- Markdown preview now respects the dark mode settings on Windows. Thanks [@davidegiacometti](https://github.com/davidegiacometti)! ### Mouse utility -- Find my mouse has a new setting to specify a minimum moving distance for activation. (This was a hotfix for 0.56) -- Fix for the bug causing the task bar to be hidden behind other windows when a mouse utility was active. -- Fix for the bug causing shortcuts set on icons to not activate when a mouse utility was active. -- Fixed a slight offset in Mouse Pointer Crosshairs when it's configured with an odd thickness. +- Fix for the bug causing shortcuts set on icons to not activate when a mouse utility was active on specific monitor configurations. ### PowerToys Run -- New plugin for time and date values/information. Thanks [@htcfreek](https://github.com/htcfreek)! -- WindowWalker now has a tooltip, additional features like killing the process and closing the window, additional settings and improvements. Thanks [@htcfreek](https://github.com/htcfreek)! -- Unit converter now accepts alternative syntax for feet and gallon. It interprets as either imperial or US gallons depending on current culture. Thanks [@yifan-k](https://github.com/yifan-k)! -- Unit converter now accepts "metre" and "meter". -- Localization for Web Search and Unit Converter (not including units) has been enabled. -- Localization for Windows Terminal has been enabled. (This was a hotfix for 0.56) -- Calculator now tries to always interpret the dot (.) symbol as a decimal separator, despite configured culture, to meet expectations. -- Calculator now handles trailing zeroes on hexadecimal numbers correctly. -- System commands plugin can now show the local ip and mac addresses. Thanks [@htcfreek](https://github.com/htcfreek)! -- Folder plugin has improved results, with improved tooltips. Thanks [@htcfreek](https://github.com/htcfreek)! -- Windows settings plugin has added entries for Screen Saver and Connect Wiring Display Panel. Thanks [@htcfreek](https://github.com/htcfreek)! -- Plugins can now show descriptions for their configurations in settings. Thanks [@htcfreek](https://github.com/htcfreek)! -- Fix for the focus issue when calling PowerToys Run for the first time after login and after returning from some windows. -- Fix for a bug on Program when creating a shortcut. -- Validated that upgrading to .NET framework 6 fixed the error appearing when shutting down the system with PowerToys Run running. - -### Video conference mute - -- Newly added microphones are now updated and tracked by VCM. +- Fix for PowerToys Run using high CPU and memory when updating its settings. (This was a hotfix for 0.57) +- Add the "Run as different user" feature to the Program, Shell, and Search plugins. Thanks [@htcfreek](https://github.com/htcfreek)! (This was a hotfix for 0.57) +- Fix for a WindowWalker crash when a Virtual Desktop registry key is not set. Thanks [@htcfreek](https://github.com/htcfreek)! (This was a hotfix for 0.57) +- Fix for VS Code Workspaces not using the user's path variable right after an install or update. Thanks [@ricardosantos9521](https://github.com/ricardosantos9521)! (This was a hotfix for 0.57) +- Fix for the System plugin causing PowerToys Run to be slow when many network interfaces exist. Thanks [@htcfreek](https://github.com/htcfreek)! (This was a hotfix for 0.57) +- Fix for the Program plugin not showing special shortcuts with empty targets, like Control Panel. (This was a hotfix for 0.57) +- Additional logging for the Terminal plugin. Thanks [@davidegiacometti](https://github.com/davidegiacometti)! (This was a hotfix for 0.57) +- Web Search and URI plugins have better code for detecting the default browser now. +- Fix for the Services plugin not manipulating service names with spaces correctly. Thanks [@davidegiacometti](https://github.com/davidegiacometti)! +- Fix for the Terminal plugin not recognizing profiles correctly. Thanks [@davidegiacometti](https://github.com/davidegiacometti)! +- Fix for latest VSCode insiders build not showing up in the VSCode Workspaces plugin. Thanks [@JacobDeuchert](https://github.com/JacobDeuchert)! +- Increased floating number precision in the Unit Converter plugin. +- VSCode Workspaces now finds portable installations of VS Code. Thanks [@harvastum](https://github.com/harvastum) +- Fixed an issue starting PowerToys Run when the desktop is not initialized. Thanks [@davidegiacometti](https://github.com/davidegiacometti)! ### Settings -- _What's new_ button in the bottom with a new look, with a few more UI tweaks. Thanks [@niels9001](https://github.com/niels9001)! -- Fixed a bug causing Settings not to open when a racing condition caused Keyboard Manager settings to not be read correctly. -- To open settings from the tray icon a double click is needed instead of a single click. -- Fix for a bug which would cause checking for updates to run indefinitely. -- When auto-updating, pass a flag to avoid rebooting the computer without being prompted. +- Settings now runs on WinUI3 instead of XAML islands. +- Settings no longer runs as an administrator when runner is started as an administrator. + +### Runner + +- Use sensible default times for rechecking for an update, to avoid writing to the logs in a loop. (This was a hotfix for 0.57) +- Runner cleans up the update directory if the installation is up to date. Thanks [@davidegiacometti](https://github.com/davidegiacometti)! ### Installer -- Dependencies installers are now executed with /norestart to avoid unprompted reboots. (This was a hotfix for 0.56). Thanks [@franky920920](https://github.com/franky920920)! -- Upgraded .NET framework dependency to 6.0.3. -- Installer logs are now saved where they can be collected and sent by the bug report tool. -- Reverted changes to start with proper elevation and when installed under a different user since those changes ended up causing more issues where PowerToys would start running with the wrong user. +- Distribute a signed .msi inside the .exe installer bootstrapper. (This was a hotfix for 0.57) +- Removed the .NET core dependency from the installer. +- Partial support for an ARM64 installer. +- Updated the .NET framework to 6.0.4. +- Force update all files on reinstall/update, to try and fix installation issues. + ### Development -- OOBE code refactor to have all module information in XAML, like in Settings. Thanks [@niels9001](https://github.com/niels9001)! -- Every project now has analyzers turned on and warnings fixed. Thanks [@CleanCodeDeveloper](https://github.com/CleanCodeDeveloper)! -- New patterns added for code spell-checking and stale entries removed. Thanks [@jsoref](https://github.com/jsoref) -- Additional logging has been added to Fancy Zones and PowerToys Run. -- A new CI release build will not be triggered if all that was changed was just documentation. -- Fixed a racing condition causing flaky build errors when building PowerRename. -- Centralization of common csproj/vcxproj settings underway. Thanks [@CleanCodeDeveloper](https://github.com/CleanCodeDeveloper)! +- PowerToys no longer takes a dependency on .NET core. +- WinUI3 is a new dependency. Settings now targets win10-x64 and win10-arm64 due to this. #### Community contributions We'd like to directly mention certain contributors (in alphabetical order) for their continued community support this month and helping directly make PowerToys a better piece of software. -[@Aaron-Junker](https://github.com/Aaron-Junker), [@CleanCodeDeveloper](https://github.com/CleanCodeDeveloper), [@dend](https://github.com/dend), [@franky920920](https://github.com/franky920920), [@htcfreek](https://github.com/htcfreek), [@jay-o-way](https://github.com/jay-o-way), [@jsoref](https://github.com/jsoref), [@niels9001](https://github.com/niels9001), [@snickler](https://github.com/snickler). +[@Aaron-Junker](https://github.com/Aaron-Junker), [@CleanCodeDeveloper](https://github.com/CleanCodeDeveloper), [@davidegiacometti](https://github.com/davidegiacometti), [@dend](https://github.com/dend), [@franky920920](https://github.com/franky920920), [@htcfreek](https://github.com/htcfreek), [@jay-o-way](https://github.com/jay-o-way), [@jsoref](https://github.com/jsoref), [@niels9001](https://github.com/niels9001), [@snickler](https://github.com/snickler). -#### What is being planned for v0.58 +#### What is being planned for v0.59 -For [v0.58][github-next-release-work], we'll start work on below: +For [v0.59][github-next-release-work], we'll work on below: - Environment Variables Editor PowerToy -- Continue work on another new PowerToy +- Wrap up the ARM64 build - Stability / bug fixes -- Adding new file types to dev file preview ## PowerToys Community @@ -206,5 +206,5 @@ The application logs basic telemetry. Our Telemetry Data page (Coming Soon) has [usingPowerToys-docs-link]: https://aka.ms/powertoys-docs -[github-next-release-work]: https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+project%3Amicrosoft%2FPowerToys%2F31 -[github-current-release-work]: https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+project%3Amicrosoft%2FPowerToys%2F30 +[github-next-release-work]: https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+project%3Amicrosoft%2FPowerToys%2F32 +[github-current-release-work]: https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+project%3Amicrosoft%2FPowerToys%2F31