Skip to content

Releases: microsoft/PowerToys

Release v0.94.2

24 Sep 07:27
Compare
Choose a tag to compare

This patch release fixes several important stability issues identified in v0.94.1 based on incoming reports. Check out the v0.94.0 notes for the full list of changes.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.94.2-x64.exe CE6654859BBAEC0E2AA49FF2E4F5C1353C4204C85A2CFB15E1E5CEC51BF3B003
Per user - ARM64 PowerToysUserSetup-0.94.2-arm64.exe 1AD77D7D60D3D353C9F6A391759B4596F43F4F21549625BB8B22EF21CF7E1B55
Machine wide - x64 PowerToysSetup-0.94.2-x64.exe A0C2A2E2EB8C86DCC6E42FE652490F41B61D9C4875F170A63EECA353E7CEBB8B
Machine wide - ARM64 PowerToysSetup-0.94.2-arm64.exe 2E59B5EBB86C9B7EECC57F902F709A67103AA7AA72396FEDEDC40BB6AA67AF20
  • #41853 - Installer: Fixed the missing vcruntime dependency error that blocked installations and caused the β€œFailed to load SilentFilesInUseBAFunction.dll (0x8007007e)” bootstrapper failure, restoring successful installs from GitHub, winget, and the Microsoft Store.

Release v0.94.1

18 Sep 08:04
Compare
Choose a tag to compare

This patch release fixes several important stability issues identified in v0.94.0 based on incoming reports. Check out the v0.94.0 notes for the full list of changes.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.94.1-x64.exe E69C4E506FB1081F52A45E46FDBAC1EC198F4D83875DE025B1A6856F0A9436EF
Per user - ARM64 PowerToysUserSetup-0.94.1-arm64.exe 9E884E7248EABDC4F23E7843D0416DDB3A958C3C222779F43A2B294FD65D3FD7
Machine wide - x64 PowerToysSetup-0.94.1-x64.exe E83FF71F951C32218F4F271CD3C01F8B354FDDCA16CAE74D36025D2D41296C8A
Machine wide - ARM64 PowerToysSetup-0.94.1-arm64.exe 0251DA6A4B334DB33D6AB1765642132AB41B64F8D43598F623DEF38BBCA2653F
  • #41853 - Installer: Resolved the installer setup problem, enabling successful installation from GitHub, winget, and Microsoft Store by fixing the β€œFailed to load SilentFilesInUseBAFunction.dll (0x8007007e)” bootstrapper error.

Release v0.94

02 Sep 15:30
Compare
Choose a tag to compare

Hero image of what's new in version 0.94

In the v0.94 release cycle, we focused on new features, stability, optimization improvements, and automation.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.94.0-x64.exe F395CC209B1F77191F96DE3CBF2512B66C8BB4C562043BD1A3A7FD4B9C7B5BC0
Per user - ARM64 PowerToysUserSetup-0.94.0-arm64.exe EA2E430476BD54E359A401623863E5130A500A169EF9FB27BBB064ADB3887AC5
Machine wide - x64 PowerToysSetup-0.94.0-x64.exe 55D5B07AEC402D504AED8101BF4F3FBA79310198F004A4D74326F951FA7BC7A0
Machine wide - ARM64 PowerToysSetup-0.94.0-arm64.exe E111A3ED83D1FB33386A5412AC5324C15E684D89512BA988ABF12D6E95691DB5

Highlights

For an in-depth look at the latest changes, visit the release blog.

  • PowerToys Settings added a Settings search with fuzzy matching, suggestions, a results page, and UX polish to make finding options faster.
  • A comprehensive hotkey conflict detection system was introduced in Settings to surface and help resolve conflicting shortcuts. Note that the default hotkey settings (Win+Ctrl+Shift+T, Win+Ctrl+V, Win+Ctrl+T, Win+Shift+T) may overlap with existing Windows system shortcuts. This is expected. You can resolve the conflict by assigning different hotkeys.
  • Mouse Utilities added a β€œGliding cursor” accessibility feature to Mouse Pointer Crosshairs for single‑button cursor movement and clicking. Thanks @mikehall-ms!
  • The installer was upgraded to WiX 5 after WiX 3 reached end-of-life; this move improved installer security, reliability, and community support.
  • Tons of bug fixes and improvements for Command Palette, including visual updates and new support for filters on ListPages (handy for extension developers).
  • Hosts Editor now has a β€œNo leading spaces” option so active host entries can start at column 0 even if others are disabled. Thanks @mohammed-saalim!
  • Context menu registration was moved from the installer to runtime to avoid loading disabled modules (runtime registrations).
  • Quick Accent now supports Maltese, and frequently used accents appear first (and are remembered across sessions). Thanks @rovercoder! @davidegiacometti!

Always On Top

  • Fixed the border hover cursor so it shows the arrow instead of the wait cursor. Thanks @davidegiacometti!

Command Palette

  • Applied single-click activation only to pointer input; keyboard always activates immediately. Thanks @jiripolasek!
  • Let context menus open at the cursor by removing window-bound constraints. Thanks @jiripolasek!
  • Made error messages clearer with timestamps, HRESULTs, and full details for easier diagnosis. Thanks @jiripolasek!
  • Prevented crashes and improved robustness when updating providers without commands. Thanks @jiripolasek!
  • Ensured the Settings window reliably comes to the front when opened. Thanks @jiripolasek!
  • Replaced the Clipboard History icon with a colorful Fluent icon. Thanks @jiripolasek!
  • Hardened ContentIcon to avoid duplicate parenting and improve diagnostics. Thanks @jiripolasek!
  • Standardized null checks using C# pattern matching for safer behavior.
  • Improved accessibility by focusing the activation shortcut dialog and making text reachable. Thanks @chatasweetie!
  • Moved the extension SDK to a stable Windows SDK and cleaned up message namespaces.
  • Added path shortcuts: ~ to home, and / or \ to system root, plus UNC support. Thanks @davidegiacometti!
  • Fixed a race in cancellation handling to avoid InvalidOperationException. Thanks @jiripolasek!
  • Aligned separator styling with WinUI 3 for consistent visuals. Thanks @jiripolasek!
  • Added ARM64 PDBs to the Extensions SDK NuGet for better debugging.
  • Added single-select filters to DynamicListPage and updated Windows Services sample.
  • Updated main page placeholder text to better describe what can be searched. Thanks @jiripolasek!
  • Removed explicit WinAppSDK/WebView2 dependencies from toolkit and API. Thanks @rluengen!
  • Added a local keyboard hook to handle the GoBack key reliably. Thanks @jiripolasek!
  • Propagated alias changes safely and resolved conflicts across view models.
  • Allowed providers to override Dispose with a virtual method.
  • Fixed memory leaks by cleaning up removed or cancelled list items.
  • Sorted DateTime extension results by relevance for better usability.
  • Reduced search text β€œjiggling” by avoiding redundant change notifications.
  • Centralized automation notifications in a UIHelper for better accessibility. Thanks @chatasweetie!
  • Preserved Adaptive Card action types during trimming via DynamicDependency.
  • Added an acrylic backdrop and refined styling to the context menu. Thanks @jiripolasek!
  • Prevented disposed pages and Settings windows from handling stale messages. Thanks @jiripolasek!
  • Made the extension API easier to evolve without breaking clients.
  • Added β€œevil” sample pages to help reproduce tricky bugs.
  • Fixed WinGet trim-safety issues by replacing LINQ with manual iteration.
  • Cancelled stale list fetches to avoid older results overwriting newer ones in CmdPal.

Command Palette extensions

  • Improved empty states and ranking logic for multiple extensions. Thanks @htcfreek!
  • Added app icons to the All Apps "Run" context command when available.
  • Restored missing builtin icons by standardizing extension dependencies.
  • Unblocked local deployment by adding WinAppSDK to two sample extensions.

Hosts File Editor

  • Added a "No leading spaces" option so active hosts entries can start at column 0 even when others are disabled. Thanks @mohammed-saalim!

Image Resizer

  • Fixed Image Resizer localization by installing satellite resources under the WinUI 3 apps culture path.

Mouse Utilities

  • Introduced "Gliding cursor" to control the pointer and click with a single hotkey for better accessibility. Thanks @mikehall-ms!

Mouse Without Borders

  • Blocked Easy Mouse from switching machines during fullscreen apps, with an allow-list for exceptions. Thanks @dot-tb!

Peek

  • Added Visual Studio shared project file types to XML preview and fixed bgcode handler registration. Thanks @rezanid!
  • Fixes bgcode preview handler registration and events for reliable previews. Thanks @pedrolamas!

PowerRename

  • Changed the Explorer accelerator key to PowErRename to avoid clashing with the New menu. Thanks @aaron-ni!

Quick Accent

  • Remembered character usage across sessions so frequently used accents appear first. Thanks @davidegiacometti!
  • Added Maltese language support with specific characters and the Euro symbol. Thanks @rovercoder!
  • Reduced GPU usage issues by making the window Topmost only when the picker is visible. Thanks @daverayment!

Settings

  • Added telemetry to track usage of the new shortcut conflict detection workflow.
  • Moved the shutdown action from the title bar to a footer menu item with confirmation. Thanks @davidegiacometti!
  • Implemented comprehensive hotkey conflict detection with a dedicated resolution dialog.
  • Added branded visuals for Office and Copilot keys in the KeyVisual control.
  • Introduced Settings search with fuzzy matching and navigation to specific controls.
  • Corrected Spanish localization so product names like Awake remain in English across Settings and OOBE.
  • Simplified the Advanced Paste description in Settings for quicker reading and consistent capitalization. Thanks @OldUser101!
  • Localized conflict messages in the conflict window and dialog.

Installer

  • Upgraded the installer to WiX 5 with silent "Files in Use" handling for smoother winget installs.
  • Switched Win10 context menu mod...
Read more

Release v0.93

13 Aug 15:09
3682f18
Compare
Choose a tag to compare

In the v0.93 release cycle, we focused on new features, stability, optimization improvements, and automation.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.93.0-x64.exe DE0255AC0CA3B77957EB8B36F916C38A8C4CEBDACF245774BE4A771E5EBCEE3B
Per user - ARM64 PowerToysUserSetup-0.93.0-arm64.exe B7A90D2A9A5D197C3AA223DDFAD9D9708A9E19EB108893199D3BB5E1E7893B9E
Machine wide - x64 PowerToysSetup-0.93.0-x64.exe 87AD002128903949EF4B2E377865C3880CF2435E196DEA5520698AF9860D6201
Machine wide - ARM64 PowerToysSetup-0.93.0-arm64.exe F5FD52489576E41C378A5A6BAD441BE9DF1881D466BDC6C1D0BD7385880AA1A3

Highlights

  • PowerToys settings debuts a modern, card-based dashboard with clearer descriptions and faster navigation for a streamlined user experience.
  • Command Palette had over 99 issues resolved, including bringing back Clipboard History, adding context menu shortcuts, pinning favorite apps, and supporting history in Run.
  • Command Palette reduced its startup memory usage by ~15%, load time by ~40%, built-in extensions loading time by ~70%, and installation size by ~55%β€”all due to using the full Ahead-of-Time (AOT) compilation mode in Windows App SDK.
  • Peek now supports instant previews and embedded thumbnails for Binary G-code (.bgcode) 3D printing files, making it easy to inspect models at a glance. Thanks @pedrolamas!
  • Mouse Utilities introduces a new spotlight highlighting mode that dims the screen and draws attention to your cursor, perfect for presentations.
  • Test coverage improvements for multiple PowerToys modules including Command Palette, Advanced Paste, Peek, Text Extractor, and PowerRename β€” ensuring better reliability and quality, with over 600 new unit tests (mostly for Command Palette) and doubled UI automation coverage.

Command Palette

  • Ensured screen readers are notified when the selected item in the list changes for better accessibility.
  • Fixed command title changes not being properly notified to screen readers. Thanks @jiripolasek!
  • Made icon controls excluded from keyboard navigation by default for better accessibility. Thanks @jiripolasek!
  • Improved UI design with better text sizing and alignment.
  • Fixed keyboard shortcuts to work better in text boxes and context menus.
  • Added right-click context menus with critical command styling and separators.
  • Improved various context menu issues, improving item selection, handling of long titles, search bar text scaling, initial item behavior, and primary button functionality.
  • Fixed context menu crashes with better type handling.
  • Fixed "Reload" command to work with both uppercase and lowercase letters.
  • Added mouse back button support for easier navigation. Thanks @jiripolasek!
  • Fixed Alt+Left Arrow navigation not working when search box contains text. Thanks @jiripolasek!
  • Updated back button tooltip to show keyboard shortcut information. Thanks @jiripolasek!
  • Fixed Command Palette window not appearing properly when activated. Thanks @jiripolasek!
  • Fixed Command Palette window staying hidden from taskbar after File Explorer restarts. Thanks @jiripolasek!
  • Fixed window focus not returning to previous app properly.
  • Fixed Command Palette window to always appear on top when shown and move to bottom when hidden. Thanks @jiripolasek!
  • Fixed window hiding to properly work on UI thread. Thanks @jiripolasek!
  • Fixed crashes and improved stability with better synchronization of Command list updates. Thanks @jiripolasek!
  • Improved extension disposal with better error handling to prevent crashes. Thanks @jiripolasek!
  • Improved stability by fixing a UI threading issue when loading more results, preventing possible crashes and ensuring the loading state resets if loading fails. Thanks @jiripolasek!
  • Enhanced icon loading stability with better exception handling. Thanks @jiripolasek!
  • Added thread safety to recent commands to prevent crashes. Thanks @MaoShengelia!
  • Fixed acrylic (frosted glass) system backdrop display issues by ensuring proper UI thread handling. Thanks @jiripolasek!

Command Palette extensions

  • Added settings to each provider to control which fallback commands are enabled. Thanks @jiripolasek! for fixing a regression in this feature.
  • Added sample code showing how Command Palette extensions can track when their pages are loaded or unloaded. Check it out here.
  • Fixed Calculator to accept regular spaces in numbers that use space separators. Thanks @PesBandi!
  • Added a new setting to Calculator to make "Copy" the primary button (replacing β€œSave”) and enable "Close on Enter", streamlining the workflow. Thanks @PesBandi!
  • Improved Apps indexing error handling and removed obsolete code. Thanks @davidegiacometti!
  • Prevented apps from showing in search when the Apps extension is disabled. Thanks @jiripolasek!
  • Added ability to pin/unpin Apps using Ctrl+P shortcut.
  • Added keyboard shortcuts to the Apps context menu items for faster access.
  • Added all file context menu options to the Apps items context menu, making all file actions available there for better functionality.
  • Streamlined All Apps extension settings by removing redundant descriptions, making the UI clearer.
  • Added command history to the Run page for easier access to previous commands.
  • Fixed directory path handling in Run fallback for better file navigation.
  • Fixed URL fallback item hiding properly in Web Search extension when search query becomes invalid. Thanks @jiripolasek!
  • Added proper empty state message for Web Search extension when no results found. Thanks @jiripolasek!
  • Added fallback command to Windows Settings extension for better search results.
  • Re-enabled Clipboard History feature with proper window handling.
  • Improved Add Bookmark extension to automatically detect file, folder, or URL types without manual input.
  • Updated terminology from "Kill process" to "End task" in Window Walker for consistency with Windows.
  • Fixed minor grammar error in SamplePagesExtension code comments. Thanks @purofle!

Mouse Utilities

  • Added a new spotlight highlighting mode that creates a large transparent circle around your cursor with a backdrop effect, providing an alternative to the traditional circle highlight. Perfect for presentations where you want to focus attention on a specific area while dimming the rest of the screen.

Peek

  • Added preview and thumbnail support for Binary G-code (.bgcode) files used in 3D printing. You can now see embedded thumbnails and preview these compressed 3D printing files directly in Peek and File Explorer. Thanks @pedrolamas!

Quick Accent

  • Added Vietnamese language support to Quick Accent, mappings for Vietnamese vowels (a, e, i, o, u, y) and the letter d. Thanks @octastylos-pseudodipteros!

Settings

  • Completely redesigned the Settings dashboard with a modern card-based layout featuring organized sections for quick actions and shortcuts overview, replacing the old module list.
  • Rewrote setting descriptions to be more concise and follow Windows writing style guidelines, making them easier to understand.
  • Improved formatting and readability of release notes in the "What's New" section with better typography and spacing.
  • Added missing deep link support for various settings pages (Peek, Quick Accent, PowerToys Run, etc.) so you can jump directly to specific settings.
  • Resolved an issue where the settings page header would drift away from its position when resizing the settings window.
  • Resolved a settings crash related to incompatible property names in ZoomIt configuration.

Documentation

  • Added detailed step-by-step instructions for first-time developers building the Command Palette module, including prerequisites and Visual Studio setup guidance. Thanks @chatasweetie!
  • Fixed Broken SDK Link: Corrected a broken markdown link in the Command Palette S...
Read more

Release v0.92.1

07 Jul 21:42
Compare
Choose a tag to compare

This is a patch release to fix issues in v0.92 we deemed important for stability based on incoming rates. See v0.92.0 for full release notes.

Installer Hashes

Description Filename
Per user - x64 PowerToysUserSetup-0.92.1-x64.exe
Per user - ARM64 PowerToysUserSetup-0.92.1-arm64.exe
Machine wide - x64 PowerToysSetup-0.92.1-x64.exe
Machine wide - ARM64 PowerToysSetup-0.92.1-arm64.exe

Highlights

  • #40314 - File Explorer add-ons: Fixed bug where Preview didn't work with per-user installation
  • #40392 - Command Palette: Fixed regression where the apps extension was missing all Win32 applications
  • #40401 - Command Palette: Fixed regression where we reset the app state every time it was loaded

Release v0.92

01 Jul 20:02
Compare
Choose a tag to compare

In the v0.92 release cycle, we focused on new features, stability, optimization improvements, and automation.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.92.0-x64.exe E2126F7C3BAEBEF8367D4702489654B13E211B5CCFA1E3AC437CAFC772B1A219
Per user - ARM64 PowerToysUserSetup-0.92.0-arm64.exe 5DC32A790F2B6D9C06CA3397E9ADCD382472BB2C9B45BC288D75DCB951A20FAF
Machine wide - x64 PowerToysSetup-0.92.0-x64.exe 3419E846FB242D2B7DA8A4259E06DB8867770806159C665FA966E85669D258CA
Machine wide - ARM64 PowerToysSetup-0.92.0-arm64.exe 367DECED2EB112B0A2F4F4828D198EAFFB1E6CEA8F7716BF533145D572ABFD13

Highlights

  • PowerToys settings now has a toggle for the system tray icon, giving users control over its visibility based on personal preference. Thanks @BLM16!
  • Command Palette now has Ahead-of-Time (AOT) compatibility for all first-party extensions, improved extensibility, and core UX fixes, resulting in better performance and stability across commands.
  • Color Picker now has customizable mouse button actions, enabling more personalized workflows by assigning functions to left, right, and middle clicks. Thanks @PesBandi!
  • Bug Report Tool now has a faster and clearer reporting process, with progress indicators, improved compression, auto-cleanup of old trace logs, and inclusion of MSIX installer logs for more efficient diagnostics.
  • File Explorer add-ons now have improved rendering stability, resolving issues with PDF previews, blank thumbnails, and text file crashes during file browsing.

Color Picker

  • Added mouse button actions so you can choose what left, right, or middle click does. Thanks @PesBandi!

Crop & Lock

  • Aligned window styling with current Windows theme for a cleaner look. Thanks @sadirano!

Command Palette

  • Enhanced performance by resolving a regression in page loading.
  • Applied consistent hotkey handling across all Command Palette commands for a smoother user experience.
  • Improved graceful closing of Command Palette. Thanks @davidegiacometti!
  • Fixed consistency issue for extensions' alias with "Direct" setting and enabled localization for "Direct" and "Indirect" for better user understanding. Thanks @davidegiacometti!
  • Improved visual clarity by styling critical context items correctly.
  • Automatically focused the field when only one is present on the content page.
  • Improved stability and efficiency when loading file icons in SDK ThumbnailHelper.cs by removing unnecessary operations. Thanks @OldUser101!
  • Enhanced details view with commands implementation. (See Extension sample)

Command Palette extensions

  • Added "Copy Path" command to App search results for convenience. Thanks @PesBandi!
  • Improved Calculator input experience by ignoring leading equal signs. Thanks @PesBandi!
  • Corrected input handling in the Calculator extension to avoid showing errors for input with only leading whitespace.
  • Improved New Extension wizard by validating names to prevent namespace errors.
  • Ensured consistent context items display for the Run extension between fallback and top-level results.
  • Fixed missing Time & Date commands in fallback results. Thanks @htcfreek!
  • Fixed outdated results in the Time & Date extension. Thanks @htcfreek!
  • Fixed an issue where Web Search always opened Microsoft Edge instead of the user's default browser on Windows 11 24H2 and later. Thanks @RuggMatt!
  • Improved ordering of Windows Settings extension search results from alphabetical to relevance-based for quicker access.
  • Added "Restart Windows Explorer" command to the Windows System Commands provider for gracefully terminate and relaunch explorer.exe. Thanks @jiripolasek!

Command Palette Ahead-of-Time (AOT) readiness

  • We’ve made foundational changes to prepare the Command Palette for future Ahead-of-Time (AOT) publishing. This includes replacing the calculator library with ExprTk, improving COM object handling, refining Win32 interop, and correcting trimming behaviorβ€”all to ensure compatibility, performance, and reliability under AOT constraints. All first-party extensions are now AOT-compatible. These improvements lay the groundwork for publishing Command Palette as an AOT application in the next release.
  • Special thanks to @Sergio0694 for guidance on making COM APIs AOT-compatible, @jtschuster for fixing COM object handling, @ArashPartow from ExprTk for integration suggestions, and @tian-lt from the Windows Calculator team for valuable suggestion throughout the migration journey and review.
  • As part of the upcoming release, we’re also enabling AOT compatibility for key dependencies, including markdown rendering, Adaptive Cards, internal logging and telemetry library, and the core Command Palette UX.

FancyZones

  • Fixed DPI-scaling issues to ensure FancyZones Editor displays crisply on high-resolution monitors. Thanks @HO-COOH! This inspired us a broader review across other PowerToys modules, leading to DPI display optimizations in Awake, Color Picker, PowerAccent, and more.

File Explorer add-ons

  • Fixed potential failures in PDF previewer and thumbnail generation, improving reliability when browsing PDF files. Thanks @mohiuddin-khan-shiam!
  • Prevented Monaco Preview Handler crash when opening UTF-8-BOM text files.

Hosts File Editor

  • Added an in-app β€œLearn more” link to warning dialogs for quick guidance. Thanks @PesBandi!

Mouse Without Borders

  • Fixed firewall rule so MWB now accepts connections from IPs outside your local subnet.
  • Cleaned legacy logs to reduce disk usage and noise.

Peek

  • Updated QOI reader so 3-channel QOI images preview correctly in Peek and File Explorer. Thanks @mbartlett21!
  • Added codec detection with a clear warning when a video can’t be previewed, along with a link to the Microsoft Store to download the required codec.

PowerRename

  • Added support for $YY-$MM-$DD in ModificationTime and AccessTime to enable flexible date-based renaming.

PowerToys Run

  • Suppressed error UI for known WPF-related crashes to reduce user confusion, while retaining diagnostic logging for analysis. This targets COMException 0xD0000701 and 0x80263001 caused by temporary DWM unavailability.

Registry Preview

  • Added "Extended data preview" via magnifier icon and context menu in the Data Grid, enabled easier inspection of complex registry types like REG_BINARY, REG_EXPAND_SZ, and REG_MULTI_SZ, etc. Thanks @htcfreek!
  • Improved file-saving experience in Registry Preview by aligning with Notepad-like behavior, enhancing user prompts, error handling, and preventing crashes during unsaved or interrupted actions. Thanks @htcfreek!

Settings

  • Added an option to hide or show the PowerToys system tray icon. Thanks @BLM16!
  • Improved settings to show progress while a bug report package is being generated.

Workspaces

  • Stored Workspaces icons in user AppData to ensure profile portability and prevent loss during temporary folder cleanup.
  • Enabled capture and launch of PWAs on non-default Edge or Chrome profiles, ensuring consistent behavior during creation and execution.

Documentation

  • Added SpeedTest and Dictionary Definition to the third-party plugins documentation for PowerToys Run. Thanks @ruslanlap!
  • Corrected sample links and typo in Command Palette documentation. Thanks @daverayment and @roycewilliams!

Development

  • Updated .NET libraries to 9.0.6 for performance and security. Thanks @snickler!
  • Updated WinAppSDK to 1.7.2 for better stability and Windows support.
  • Introduced a one-step local build script that generates a signed installer, enhancing developer productivity.
  • Generated portable PDBs so cross-platform debuggers can read symbol files, improving debugging experience in VSCode and other tools...
Read more

Release v0.91.1

19 May 18:10
Compare
Choose a tag to compare

This is a patch release to fix issues in v0.91 we deemed important for stability based on incoming rates. See v0.91.0 for full release notes.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.91.1-x64.exe 42EA4A3E8C79A5456476D19E72B3E2AB9393A89C4DC7442EB7EE5A1E3490D38A
Per user - ARM64 PowerToysUserSetup-0.91.1-arm64.exe F3F433FE04049F9197411D792AADEBF34E3BE7FE16327BD8B73D2A046ED8BAF6
Machine wide - x64 PowerToysSetup-0.91.1-x64.exe EC4BC3A8625775866B0ED4577CCF83E6EC7B1A0AD267379DDBAF4FE49C7B5BDD
Machine wide - ARM64 PowerToysSetup-0.91.1-arm64.exe 9CB8911008420D0E446AE3D5CE365E447FA4DF9DCF9337F3A80F933C00FC3689

Highlights

  • #39494 - Command Palette: Fixed regression where it ran as admin instead of the current user when PowerToys was elevated; also resolved extension launch failures occurring only in admin mode.
  • #39433 - Workspaces: Fixed regression where command-line options support was expected but missing when launching classic Win32 apps (e.g. Edge, Chrome).
  • #39563 - Quick Accent: Fixed regression requiring activation key to be held simultaneously with the key during the "Input delays" period for accent selection; instead, only the key needs to be held after activation.

Release v0.91

14 May 22:54
7979419
Compare
Choose a tag to compare

In the v0.91 release cycle, we focused on new features, stability, and automation.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.91.0-x64.exe 190DD702EDE2D3AC27A253DF8BC2416B1AF05E6594FF25CABEE844E6D3C8CCB0
Per user - ARM64 PowerToysUserSetup-0.91.0-arm64.exe BE6C964C40147B5F7838E51A13837347756CC45E6AC5BC0DD11AF9AF605ABDCD
Machine wide - x64 PowerToysSetup-0.91.0-x64.exe 2308D896D9A66C56B98AC8B3CE9B7C945C7A2315551E36C118C7ECAC4A6D05C2
Machine wide - ARM64 PowerToysSetup-0.91.0-arm64.exe 28BD1FEFA22C52279C6B600E677B425B014D1F9190EA449D6C63FC2702092DA3

Highlights

  • We focused on greatly improving Command Palette's performance and fixing a large amount of bugs. Some new features we've added are:
  • Added the ability for Command Palette to search any file using a fallback command.
  • Added the ability to make the Command Palette global hotkey a low-level keyboard hook.
  • Added open URL fallback command for the WebSearch extension, enabling users to directly open URLs in the browser from Command Palette.
  • You can now define custom formats in the Date and Time plugins of PT Run and Command Palette. Thanks @htcfreek!

Advanced Paste

  • Fixed an issue where Advanced Paste failed to create the OCR engine for certain English language tags (e.g., en-CA) by initializing the OCR engine with the user profile language. Thanks @cryolithic!

Color Picker

  • Fixed an issue where a resource leak caused hangs or crashes by properly disposing of the Graphics object. Thanks @dcog989!
  • Fixed an issue where Color Picker exited on Backspace keypress by ensuring it only closes when focused and aligning Escape/Backspace behavior. Thanks @PesBandi!
  • Added support for Oklab and Oklch color formats in Color Picker. Thanks @lemonyte!

Command Not Found

  • Updated the WinGet Command Not Found script to only enable the experimental features if they actually exist.

Command Palette

  • Updated bug template to include Command Palette module.
  • Fixed an issue where the toast window was not scaled for DPI, causing layout issues under display scaling.
  • Fixed an issue where Up/Down keyboard navigation didn't move selection when caret was at position 0, and add continuous navigation like PT Run v1. Thanks @davidegiacometti!
  • Updated the Time and Date extension code to simplify it and improve clarity.
  • Fixed an issue where capitalization in the command causes failure when trying to go to the mouse pointer, resolved by adjusting the command to lowercase.
  • Added open URL fallback command for the WebSearch extension, enabling users to directly open URLs in the browser from Command Palette. Thanks @htcfreek!
  • Added setting to enable/disable system tray icon in CmdPal and align terminology with Windows 11. Thanks @davidegiacometti!
  • Fixed an alias update issue by removing the old alias when a new one is set.
  • Resolved GitHub casing conflict by migrating Exts and exts into a new ext directory, ensuring consistent structure across platforms and preventing path fragmentation.
  • Fix an issue where the 'Create New Extension' command generated empty file names.
  • Added the ability to make the global hotkey a low-level keyboard hook.
  • Added support for JUMBO thumbnails, enabling access to high-resolution icons.
  • Fixed crashes when CmdPal auto-hid itself while an MSAL dialog was opened, by preventing CmdPal from hiding if it's disabled.
  • Added support for immediately selecting search text when a page is loaded.
  • Fixed a bug where extension settings pages failed to reload on reopen by updating the settings form when extension settings are saved.
  • Fixed an issue where the Command Palette failed to launch from the runner.
  • Refactored and ported the PowerToys Run v1 calculator logic into Command Palette, added settings support, and improved fallback behavior.
  • Re-added support for list item keyboard shortcuts.
  • Enhanced accessibility in Command Palette by adding proper labels, refining animations, improving localization, and fixed a11y related issues.
  • Ported custom format support to the Time and Date plugin, reordered and cleaned up settings, improved error messaging, and fixed edge-case crashes for more robust and user-friendly behavior. Thanks @htcfreek!
  • Added fallback item for system command.
  • Fixed a bug in Windows System Command where the key prompt incorrectly displayed "Empty" for the "Open Recycle Bin" action. Thanks @jironemo!
  • Fixed an issue where the 'more commands' list showed commands that shouldn't be visible. Thanks @davidegiacometti!
  • Fixed an issue where the details view in Command Palette displayed an oversized icon and misaligned text, aligning it with Windows Search behavior.
  • Fixed a bug where empty screen content and command bar commands were cut off when using long labels, ensuring proper layout and visibility.
  • Improved CmdPal’s WinGet integration by fixing version display for installed packages, enabling updates with icons, and migrating the preview winget API to a stable version.
  • Fixed a bug where commands for ContentPage didn't update until after exit, by ensuring context menus are fully initialized when they change.
  • Added fallback support to the TimeDate extension, enabling direct date/time queries without pre-selecting the command.
  • Added import of Common.Dotnet.AotCompatibility.props across multiple CmdPal project files to enhance AOT compilation support.
  • Fixed a crash in CmdPal settings caused by a null HotKey when settings.json is missing or lacks a defined hotkey. Thanks @davidegiacometti!
  • Added support for filterable, nested context menus in CmdPal, including a search box to maintain focus behavior.
  • Refactored CmdPal classes to improve JSON serialization and introduced new serialization contexts for better performance and maintainability.
  • Added support for ahead-of-time (AoT) compilation.
  • Added retry mechanism for CmdPal launch.
  • Removed some unused files from CmdPal.Common to simplify codebase and facilitate marking it as AoT-compatible.
  • Fixed a bug where a race condition in the update of SearchText caused the cursor in the input box to automatically jump to the end of the line, ensuring SearchText is only updated after it has actually been changed.
  • Added support for searching any file in fallback command.
  • Cleaned up AoT-related code to prevent duplicate operations during testing.
  • Reduced CmdPal load time by parallelizing extension startup and adding timeouts to prevent misbehaving extensions from blocking others.
  • Enhanced UI behavior by dismissing the details pane when the list gets emptied, avoiding inconsistent visual states.
  • Added support to unset the fallback command in CmdPal when no matching command is found, ensuring cleaner reload behavior.
  • Fixed a leak in the CmdPal extension template by addressing improper ComServer use.
  • Prevented CmdPal window from maximizing on title bar double-click to maintain intended window behavior. Thanks @davidegiacometti!
  • Fixed an issue where the Settings UI launched too small by making window dimensions DPI-aware and enforcing minimum width and height using WinUIEx.
  • Fixed white flash and one-time animation issues in CmdPal by cloaking the window instead of hiding it.
  • Fixed a bug where all extension settings were fetched on startup by lazy-loading extension settings, reducing initialization overhead.
  • Added support for protecting CmdPal from crashes on Adaptive Card parse failure.
  • Replaced shell:AppsFolder with URI activation in CmdPal to improve reliability.
  • Added ability to open CmdPal settings from PowerToys Settings.
  • Added ability for CmdPal to observe and dynamically update extension details by tracking property changes on the selected item.
  • Bumped the toolkit version used in the CmdPal extension template to 0.2.0.

Image Resizer

  • Fixed an issue where deleting an Image Resizer preset removed the wrong preset.

Keyboard Manager

  • Fixed an issue where a modifier key, when set without specifying left or right, would get stuck due to incorrect key handling, by tracking the pressed keys and sending the correct key accordingly. Thanks @mantaionut!

PowerRename

  • Enhanced PowerRename's time formatting capabilities by adding 12-hour time format patterns with AM/PM support. Thanks @bitmap4!

PowerToys Run

  • Added support for custom formats ...
Read more

Release v0.90.1

10 Apr 16:37
Compare
Choose a tag to compare

This is a patch release to fix issues in v0.90.1 we deemed important for stability based on incoming rates. See v0.90.0 for full release notes.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.90.1-x64.exe CDAF760E86D350F9FCDE7ABD0950F1C0D5E6BDC2401169E12D8FD5F82A2285D5
Per user - ARM64 PowerToysUserSetup-0.90.1-arm64.exe E26B1F27C04358A112B5D10D4ED98ABB51399DCB5C1DD2A9017D2007E9AE33AF
Machine wide - x64 PowerToysSetup-0.90.1-x64.exe 0DF50C8896C73F0CC7C4E291E55350B87142824588DA6EF6334A9065392F44F5
Machine wide - ARM64 PowerToysSetup-0.90.1-arm64.exe 9356847E88A7DD43DFE428E6AA8E35B196CE7B24CC30D1C3D6771167FFC8C1E7

Highlights

  • #38422 - Fixed an issue where v0.90 couldn't be installed from WinGet.
  • #38440 - Fixed an issue where Command Palette wouldn't launch when WinGet wasn't present.
  • #38460 - Fixed a crash when launching Command Palette as administrator.
  • #38531 - Fixed an issue where Command Palette was attempting to install dependencies that already existed.
  • #38676 - Updated .NET package to 9.0.4, Thanks @snickler!

Release v0.90.0

31 Mar 23:07
a641b46
Compare
Choose a tag to compare

In the v0.90 release cycle, we focused on new features, stability, and automation.

Installer Hashes

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.90.0-x64.exe 2A6036F5B2D454084E55816C306E1E57EF1D14C916691CBDA42B469797605CE0
Per user - ARM64 PowerToysUserSetup-0.90.0-arm64.exe AB2E4DC87A9D764BE897C5170E2890E174C89CA912A1916FA3AE1E427536EA4A
Machine wide - x64 PowerToysSetup-0.90.0-x64.exe 12801C44F43D0CC61E90DF1EFDC40E4F3C88341E0199D5B20791042D9B173DCF
Machine wide - ARM64 PowerToysSetup-0.90.0-arm64.exe 2998007C8FCD7BD2770767C6502AAA2CC75B85EC30DE62986EC7005EB0014EDB

Highlights

CmdPal_Hero_final

  • New module: Command Palette ("CmdPal") - Created as the evolution of PowerToys Run with extensibility at the forefront, Command Palette is a quick launcher with a richer display and additional capabilities without sacrificing performance, allowing you to start anything with the shortcut Win+Alt+Space! Thanks @zadjii-msft, @niels9001, @michael-hawker, @joadoumie, @plante-msft, @ethanfangg and @krschau!
  • Enhanced the Color Picker by switching from WPF UI to .NET WPF, resulting in improved themes and visual consistency across different modes. Thanks @mantaionut! Thanks @Jay-o-Way and @niels9001 for helping with the review!
  • Added the ability to delete files directly from Peek, enhancing file management efficiency. Thanks @daverayment and thanks @htcfreek for the review!
  • Added support for variables in template filenames, enabling dynamic elements like date components and environment variables for enhanced customization in New+. Thanks @cgaarden!

Color Picker

  • Replaced WPF UI with .NET WPF for the Color Picker, enhancing compatibility and improving theme support. Thanks @mantaionut! Thanks @Jay-o-Way and @niels9001 for helping with the review!

Command Palette

  • Introduced the Windows Command Palette ("CmdPal"), the next iteration of PowerToys Run, designed with extensibility at its core. CmdPal includes features such as searching for installed apps, shell commands, files and WinGet package installation. This module aims to provide a more powerful and flexible launcher experience. Thanks @zadjii-msft, @niels9001, @michael-hawker, @joadoumie, @plante-msft, and the whole team!

FancyZones

  • Fixed a bug where deleting a layout resulted in incorrect data being written to the JSON file.
  • Fixed a bug where layout hotkeys were displayed incorrectly, ensuring the hotkey list does not include invalid entries.
  • Fixed an issue where the "None" option was missing in the editor layout.

Image Resizer

  • Fixed warnings in ImageResizer regarding the use of variables "shellItem" and "itemName" without being initialized.

Mouse Without Borders

  • Enhanced the logger to properly track the file path for easier debugging.
  • Refactored the "Common" class into distinct individual classes to enhance maintainability, and updated all references and unit tests to reflect these changes. Thanks @mikeclayton for this!

New+

  • Added support for variables in template filenames, including date/time components, parent folder name, and environment variables. Thanks @cgaarden!

Peek

  • Added the ability to delete the file currently being previewed in Peek, including navigation updates and handling for deleted items. Thanks @daverayment and thanks @htcfreek for your help reviewing this!

PowerToys Run

  • Fixed an issue where duplicated applications were shown by ensuring the shell link helper opens .ink files non-exclusively and correctly retrieves the "FullPath". Thanks @htcfreek and @davidegiacometti for review!
  • Fixed an issue where applying round corners on Windows 11 build 22000 caused crashes.
  • Async the OnRename method to unblock the thread. Thanks @davidegiacometti for review!
  • Added support for using sq instead of ^2 in the Unit Converter. Thanks @PesBandi!

Settings

  • Disabled the spell check feature in the text boxes of plugin settings for PowerToys Run. Thanks @htcfreek!
  • Fixed an issue where InfoBars for release notes errors were not displayed properly, and added a retry button. Thanks @davidegiacometti!

Workspaces

  • Fixed an issue where some minimized packaged apps (e.g., Microsoft ToDo, Settings) were not snapshotted.

Documentation

  • Added the FirefoxBookmark plugin to the list of Third-Party plugins for PowerToys Run. Thanks @8LWXpg!
  • Added the SVGL third-party plugin to PowerToys Run, enabling users to search, browse, and copy SVG logos. Thanks @SameerJS6!
  • Added Monaco usage for the Registry Preview.

Development

  • Updated WinGet configuration file location and extension. Thanks @mdanish-kh!
  • Removed the Markdown file bypass to ensure CI runs for commits that only update Markdown files.
  • Fixed an issue where the default generated file path exceeded the length limit of 260 characters for EnvironmentVariablesUILib.csproj, causing build failures.
  • Upgraded WindowsAppSDK to 1.6.250205002 and CsWinRT to 2.2.0. Thanks @htcfreek for review!
  • Upgraded XamlStyler to 3.2501.8 and dotnet-consolidate to 4.2.0. Thanks @davidegiacometti!
  • Updated .NET Packages from 9.0.2 to 9.0.3.
  • Optimized the UI Test Automation Framework and added UI test cases for the Hosts File Editor module.
  • Added fuzz testing for RegistryPreview.
  • Added new UI tests for the FancyZones editor, including tests for creating, duplicating, editing, and deleting layouts.
  • Added telemetry code to measure the module editor open time and evaluate the benefits of applying AOT.