ff290eef9d
* rename Layout -> LayoutData * simplify zone * split ZoneSet: Layout * refactoring * split ZoneSet: LayoutWindows * update trace * split ZoneSet: remove ZoneSet * fix initialization * split unit tests * remove unused * warning * nullptr check * use current rect * update work area tests * use current rect * simplify * more meaningful name * dismiss * safety checks * resolve conflicts * reassign windows after switching vd * avoid double-processing for window on switching vd * extend windows fix * check if window is on current desktop before cycling * separated extend * not reinit layout windows |
||
---|---|---|
.github | ||
.pipelines | ||
deps | ||
doc | ||
installer | ||
src | ||
tools | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.vsconfig | ||
CODE_OF_CONDUCT.md | ||
COMMUNITY.md | ||
CONTRIBUTING.md | ||
Cpp.Build.props | ||
CppRuleSet.ruleset | ||
Directory.Build.props | ||
LICENSE | ||
NOTICE.md | ||
PowerToys.sln | ||
README.md | ||
SECURITY.md | ||
Solution.props | ||
SUPPORT.md |
Microsoft PowerToys
How to use PowerToys | Downloads & Release notes | Contributing to PowerToys | What's Happening | Roadmap
Build status
Architecture | Solution (Main) | Solution (Stable) | Installer (Main) |
---|---|---|---|
x64 | |||
ARM64 |
About
Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. For more info on PowerToys overviews and how to use the utilities, or any other tools and resources for Windows development environments, head over to learn.microsoft.com!
Installing and running Microsoft PowerToys
Requirements
- Windows 11 or Windows 10 version 2004 (code name 20H1 / build number 19041) or newer.
- Our installer will install the following items:
- .NET 6.0.9 Desktop Runtime or a newer 6.0.x runtime.
- Microsoft Edge WebView2 Runtime bootstrapper. This will install the latest version.
Via GitHub with EXE [Recommended]
Microsoft PowerToys GitHub releases page, click on Assets
at the bottom to show the files available in the release. Please use the appropriate the PowerToys installer that matches your machine's architecture. For most people, it is x64
.
- For x64 processors (most common): PowerToysSetup-0.63.0-x64.exe
- For ARM64 processors: PowerToysSetup-0.63.0-arm64.exe
This is our preferred method.
Via Microsoft Store
Install from the Microsoft Store's PowerToys page. You must be using the new Microsoft Store which will be available for both Windows 11 and Windows 10.
Via WinGet (Preview)
Download PowerToys from WinGet. To install PowerToys, run the following command from the command line / PowerShell:
winget install Microsoft.PowerToys -s winget
Other install methods
There are community driven install methods such as Chocolatey and Scoop. If these are your preferred install solutions, this will have the install instructions.
Contributing
This project welcomes contributions of all types. Help spec'ing, design, documentation, finding bugs are ways everyone can help on top of coding features / bug fixes. We are excited to work with the power user community to build a set of tools for helping you get the most out of Windows.
We ask that before you start work on a feature that you would like to contribute, please read our Contributor's Guide. We will be happy to work with you to figure out the best approach, provide guidance and mentorship throughout feature development, and help avoid any wasted or duplicate effort.
Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution.
For guidance on developing for PowerToys, please read the developer docs for a detailed breakdown. This includes how to setup your computer to compile.
What's Happening
PowerToys Roadmap
Our prioritized roadmap of features and utilities that the core team is focusing on.
0.63 - September 2022 Update
In this release, we focused on stability and improvement.
Highlights
- QuickAccent contains a new setting to select a language. This should reduce the number of accented characters a user needs to pick from. Thanks @damienleroy!
- Reduced installer file size (83 MB for 0.63.0 compared to 125 MB for 0.62.1) and drive storage use (587 MB for 0.63.0 compared to 817 MB for 0.62.1) by sharing the Windows App SDK, VC++ redistributable and PowerToys Interop runtime files between utilities. This is a step towards removing the UAC requirement on install. The next step is shipping .NET self-contained and shared between utilities.
Known issues
- The Text Extractor utility fails to recognize text in some cases on ARM64 devices running Windows 10.
- After installing PowerToys, the new Windows 11 context menu entries for PowerRename and Image Resizer might not appear before a system restart.
- There are reports of users who are unable to open the Settings window. This is being caused by incompatibilities with some applications (RTSS RivaTuner Statistics Server and MSI AfterBurner are known examples of this). If you're affected by this, please check the linked issue to verify if any of the presented solutions works for you.
General
- Fixed an issue that caused bug report generation to fail. (This was a hotfix for 0.62)
- Updated the Windows App SDK runtimes to 1.1.5.
Always on Top
- Fixed an issue causing the border to linger when moving a window between virtual desktops.
- The minimum thickness for the borders is now 1. Thanks @unuing!
- Borders were showing in Virtual Desktop thumbnails. These were removed.
- Corrected the borders visuals to more closely follow the application borders.
Awake
- Fixed utility exit logic to close all threads and avoid crashes. (This was a hotfix for 0.62)
Color Picker
- Fixed utility exit logic to close all threads and avoid crashes. (This was a hotfix for 0.62)
- Fixed initialization error that caused the mouse position to be incorrectly set.
FancyZones
- Fixed FancyZones Editor exit logic to close all threads and avoid crashes. (This was a hotfix for 0.62)
File explorer add-ons
- Updated the WebView 2 dependency to 1.0.1343.22. Thanks @Aaron-Junker!
- Fixed preview of .reg files.
Image Resizer
- Fixed a bug causing File Explorer to crash under some conditions when accessing the context menu.
PowerToys Run
- Added support to opening Terminal windows in quake mode. Thanks @FWest98!
- Fixed utility exit logic to close all threads and avoid crashes. (This was a hotfix for 0.62)
- Improve the icon shown in the Program plugin for application execution aliases. Thanks @MikeBarker-MSFT!
- Fix calls to the default browser when Firefox is installed from the Microsoft Store.
- Fixed accessibility issue in which controls appended to the result entries weren't announced.
- Search was improved and should now return results where the terms in the query appear at the end of the result.
Quick Accent
- Improved the keyboard hooks performance. (This was a hotfix for 0.62)
- Fixed a bug that was causing Quick Accent to interfere with Keyboard Manager. (This was a hotfix for 0.62)
- Added the correct ß uppercase character. Thanks @Aaron-Junker!
- Accent character selection should now wrap around. Thanks @wmentha!
- Added language selection setting to reduce the number of accented characters shown. The available accented character sets are Currency, Czech, Dutch, French, Hungarian, Icelandic, Italian, Maori, Pinyin, Polish, Romanian, Slovakian, Spanish and Turkish. Thanks @damienleroy!
Screen Ruler
- Improved UI/UX and settings descriptions.
- Fixed utility exit logic to close all threads and avoid crashes. (This was a hotfix for 0.62)
Settings
- UI icons updated. Thanks @Jay-o-Way!
- Descriptions improvement and disambiguation. Thanks @Jay-o-Way!
- Fixed checkbox margins and other design tweaks. Thanks @Jay-o-Way!
Text Extractor
- Removed extra spaces when recognizing Chinese, Japanese or Korean languages. Thanks @TheJoeFin!
- Fixed utility exit logic to close all threads and avoid crashes. (This was a hotfix for 0.62)
- Fixed an issue where a selection would start on right-click.
Installer
- Added logic to exit PowerToys on upgrade before trying to update .NET.
- Updated the .NET dependency to 6.0.9.
- Added clearer installation step names for the bootstrapper. Thanks @htcfreek and @Jay-o-Way!
- Windows App SDK, VC++ redistributable and PowerToys Interop runtime files are now shared between utilities through hardlinks, reducing installation size.
Documentation
- Fixed typos in Keyboard Manager documentation. Thanks @eltociear!
- Replaced docs.microsoft.com links with learn.microsoft.com. Thanks @Aaron-Junker!
Development
- Fixed a build error that was restricting developers to switch between configuration without first cleaning local build files.
- C++ exception catches were corrected to be caught by reference to avoid unnecessary copy operations. Thanks @NN---!
- General C# code clean up, format fixing and removal of unused code analysis suppressions.
- Removed unnecessary
muxc
prefix from XAML files. Thanks @Jay-o-Way! - Re-enabled tests on our pipeline that depend on WebView2.
- Windows 11 tier 1 context menu packages now contain the "Microsoft.PowerToys" prefix.
What is being planned for v0.64
For v0.64, we'll work on below:
- Environment Variables Editor PowerToy
- GPO policies for PowerToys
- Utility to list which processes are using a file
- Ship .NET self contained and shared between utilities
- Hosts file editor, contributed by @davidegiacometti. Thank you!
- Settings backup and restore, contributed by @jefflord. Thank you!
- Stability / bug fixes
PowerToys Community
The PowerToys team is extremely grateful to have the support of an amazing active community. The work you do is incredibly important. PowerToys wouldn’t be nearly what it is today without your help filing bugs, updating documentation, guiding the design, or writing features. We want to say thank you and take time to recognize your work. Month over month, you directly help make PowerToys a better piece of software.
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct.
Privacy Statement
The application logs basic telemetry. Our Telemetry Data page (Coming Soon) has the trends from the telemetry. Please read the Microsoft privacy statement for more information.