PowerToys github:
This is a preview-channel build for the PowerToys 0.102 release train, produced from the stable branch. It follows v0.102.2862.0; these notes cover changes since that preview, not the complete 0.102 versus 0.101 changelog. This is not the final stable release.
Highlights
- ZoomIt: Added opt-in offline snip dictation for pasting screenshots together with transcribed speech.
- Peek: Added plain-text fallback previews and command-line support for multiple files and folders.
- Keyboard Manager: Added searchable key selection for empty remaps in the new editor and limited recording to the foreground editor.
- Command Palette: Continued loading results in underfilled views and when keyboard navigation reaches the loaded end of a list.
- Command Palette: Fixed in-place Adaptive Card updates in release builds and enabled custom elements to refresh without rebuilding the card.
- Command Palette: Avoided repeated writes of unchanged provider and fallback settings during startup.
- Settings: Added an interactive animated welcome scene and fixed memory growth when navigating between Home and General.
- General: Prevented startup and read-only Settings refreshes from overwriting existing preferences.
- CursorHide: Refreshed the former Auto Hide Cursor branding, icon, and behavior controls in Settings.
Advanced Paste
- Fixed the CLI root --version option to print the executable version and exit without requiring a subcommand in #51298 by @MuyuanMS
Command Palette
- Fixed Adaptive Cards updating in place in release builds and enabled custom elements to refresh without rebuilding the entire card in #51204
- Loaded additional result batches when the first list or grid page does not fill the window, so more items remain accessible without a scrollbar in #51285 by @jiripolasek
- Loaded the next result batch when keyboard navigation reaches the end of the current list, preserving selection until loading completes in #51287 by @jiripolasek
- Fixed Ctrl+Enter targeting the wrong command in context-menu submenus and delayed the initial highlight until navigation or filtering in #51290 by @jiripolasek
- Avoided repeatedly saving unchanged provider and fallback settings during startup in #51353
CursorHide
- Renamed Auto Hide Cursor to CursorHide in Settings and refreshed its icon, behavior controls, and new-feature indicators in #51123 by @Copilot and @LegendaryBlair
General
- Prevented startup and read-only Settings refreshes from overwriting preferences with partially initialized or stale module states in #51115 by @LegendaryBlair and @Copilot
Keyboard Manager
- Added searchable key selection for empty remaps in the new editor, limited recording to the foreground editor, and restored Tab navigation while recording in #51150 by @Copilot
Peek
- Added command-line previews for multiple files and folders, with improved relative-path handling and argument validation in #49724 by @daverayment
- Added plain-text previews for text files with otherwise unsupported extensions instead of showing only file information in #50020 by @eglavin and @claude
Settings
- Added an interactive animated welcome scene featuring PowerToys module icons in #50873 by @Copilot
- Fixed retained pages and view models that caused memory use to grow when navigating between Home and General settings in #51060 by @dotMorten and @Copilot
ZoomIt
- Added opt-in offline snip dictation so a screenshot and its spoken description can be transcribed and pasted together in #51286 by @MarioHewardt, @markrussinovich, @Copilot, and @foxmsft
Development
- Made new Windows platform-compatibility analyzer violations fail builds so unsupported API calls are caught earlier in #51063 by @Copilot
- Updated outdated third-party launcher plugin and author links in #51126 by @karan5028ji and @LegendaryBlair
- Removed an obsolete Settings screenshot reference from the module project-template documentation in #51334 by @mmustafasenoglu
- Standardized spacing before comments in module UI tests in #51264
- Reused JSON serializer options in Advanced Paste UI tests in #51280
- Replaced broad message passing with explicit Command Palette control and view-model ownership to support independent navigation surfaces in #51038
- Extracted Command Palette page creation and initialization into a shared navigation service while preserving navigation behavior in #51091 by @Copilot
- Removed the superseded Toolkit-specific neutral-language workaround while retaining shared official-build assembly metadata generation in #51291 by @LegendaryBlair and @Copilot
- Pinned the Command Palette extension SDK build version and prepared its signing runtime for more predictable release builds in #51326 by @LegendaryBlair and @Copilot
- Made Command Palette Extension Gallery tests use deterministic synchronization to avoid intermittent ordering failures in #51340 by @foxmsft
- Kept Command Palette test page contexts alive through execution and cleanup to prevent intermittent view-model test failures in #51355 by @jiripolasek
- Aligned multiline argument formatting across module UI tests without changing test behavior in #51257
- Normalized FancyZones UI-test file endings for consistent analyzer compliance in #51258
- Split FancyZones and File Locksmith UI-test helper types into matching source files in #51259
- Ordered System using directives consistently in FancyZones UI tests in #51262
- Normalized split-argument layout in FancyZones, Advanced Paste, and Environment Variables UI tests in #51265
- Removed unnecessary parentheses from FancyZones UI tests in #51267
- Aligned initializer indentation in FancyZones and Mouse Utilities UI tests in #51268
- Removed redundant blank lines from FancyZones UI tests in #51272
- Added consent-aware command and result telemetry for the Light Switch and PowerDisplay CLIs without changing their output or exit codes in #51315
- Resolved possible-null dereference warnings in Advanced Paste and Mouse Utilities UI tests in #51274
- Made Peek UI-test formatting use explicit format providers for consistent behavior across locales in #51260
- Normalized closing-brace spacing in Peek UI tests in #51273
- Resolved nullable-argument warnings in Peek UI tests in #51275
- Aligned nullable argument types in Peek UI tests in #51276
- Used direct indexing for indexable collections in Peek UI tests in #51278
- Reused constant argument arrays in Peek UI tests in #51279
- Aligned PowerRename UI-test comment spacing with analyzer requirements in #51263
- Removed a duplicate shared-suppression source entry from the PowerRename UI-test project in #51282
- Resolved reserved-keyword naming warnings in Screen Ruler UI tests in #51277
- Aligned Settings UI-test parameter names with analyzer conventions in #51271
- Made culture-sensitive operations explicit in Workspaces UI tests in #51261
- Aligned Workspaces UI-test parameter-list formatting with analyzer requirements in #51266
- Standardized spacing between Workspaces UI-test members in #51269
- Kept cleanup exceptions out of finally clauses in Workspaces UI tests in #51281
- Placed readonly fields consistently in ZoomIt UI tests in #51270
Changes needing final review
- Restored strict resource-language, identifier-naming, and MVVM build diagnostics in direct stable commit ce7edd480bc6, reapplying the exact change from #51065 after the official-build metadata fixes by @LegendaryBlair and @Copilot. This direct reapplication has no separate PR.
Source:
Release Preview v0.102.2883.0 · microsoft/PowerToys
PowerToys Preview v0.102.2883.0 This is a preview-channel build for the PowerToys 0.102 release train, produced from the stable branch. It follows v0.102.2862.0; these notes cover changes since tha...
See also:
Check for Updates in Microsoft PowerToys app
This tutorial will show you how to manually check for updates for the Microsoft PowerToys app in Windows 10 and Windows 11. Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. References...
www.elevenforum.com









