* Move KBM engine into separate process (#10672) * [KBM] Migrate KBM UI out of the runner (#10709) * Clean up keyboard hook handles (#10817) * [C++ common] Unhandled exception handler (#10821) * [KBM] Use icon in the KeyboardManagerEditor (#10845) * [KBM] Move resources from the Common project to the Editor. (#10844) * KBM Editor tests (#10858) * Rename engine executable (#10868) * clean up (#10870) * [KBM] Changed Editor and libraries output folders (#10871) * [KBM] New logs structure (#10872) * Add unhandled exception handling to the editor (#10874) * [KBM] Trace for edit keyboard window * Logging for XamlBridge message loop * [KBM] Added Editor and Engine to the installer (#10876) * Fix spelling * Interprocess communication logs, remove unnecessary windows message logs * [KBM] Separated telemetry for the engine and editor. (#10889) * [KBM] Editor test project (#10891) * Versions for the engine and the editor (#10897) * Add the editor's and the engine's executables to signing process (#10900) * [KBM editor] Run only one instance, exit when parent process exits (#10890) * [KBM] Force kill editor process to avoid XAML crash (#10907) * [KBM] Force kill editor process to avoid XAML crash * Fix event releasing Co-authored-by: mykhailopylyp <17161067+mykhailopylyp@users.noreply.github.com> * Make the editor dpi aware (#10908) * [KBM] KeyboardManagerCommon refactoring (#10909) * Do not start the process if it is already started (#10910) * logs * Update src/modules/keyboardmanager/KeyboardManagerEditorLibrary/EditKeyboardWindow.cpp * Update src/modules/keyboardmanager/KeyboardManagerEditorLibrary/EditKeyboardWindow.cpp * [KBM] Rename InitUnhandledExceptionHandler to make it explicit that is for x64 only. We will fix it properly when adding support for ARM64 and add a header with the proper conditional building. * [KBM] rename file/class/variables using camel case * [KBM] Rename "event_locker" -> "EventLocker" * [KBM] rename process_waiter Add a TODO comment * [KBM] rename methods Add TODO comment * [KBM] use uppercase for function names * [KBM] use uppercase for methos, lowercase for properties * [KBM] rename method, make methods private, formatting * [KBM] rename private variables * [KBM] use uppercase for function names * [KBM] Added support to run the editor stand-alone when built in debug mode * Update src/modules/keyboardmanager/KeyboardManagerEditor/KeyboardManagerEditor.cpp * Check success of event creation, comment (#10947) * [KBM] code formatting (#10951) * [KBM] code formatting * Update src/modules/keyboardmanager/KeyboardManagerEditorLibrary/BufferValidationHelpers.cpp * [KBM] tracing * [KBM] Remappings not showing fix. (#10954) * removed mutex * retry loop for reading * retry on reading config once * log error Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com> Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com> Co-authored-by: Seraphima Zykova <zykovas91@gmail.com> Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com> Co-authored-by: Enrico Giordani <enrico.giordani@gmail.com> |
||
---|---|---|
.github | ||
.pipelines | ||
deps | ||
doc | ||
installer | ||
src | ||
tools | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.vsconfig | ||
CODE_OF_CONDUCT.md | ||
COMMUNITY.md | ||
CONTRIBUTING.md | ||
Cpp.Build.props | ||
Directory.Build.props | ||
LICENSE | ||
NOTICE.md | ||
nuget.config | ||
PowerToys.sln | ||
README.md | ||
SECURITY.md | ||
SUPPORT.md |
Microsoft PowerToys
![](/maxmustermann/PowerToys/media/commit/a8c99e9513ea8a4fa44ac996afe7262f8cd42be3/doc/images/overview/PT%20hero%20image.png)
Downloads & Release notes | Contributing to PowerToys | What's Happening | Roadmap
Build status
Architecture | Master | Stable | Installer |
---|---|---|---|
x64 |
About
Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows 10 experience for greater productivity. For more info on PowerToys overviews and guides, or any other tools and resources for Windows development environments, head over to docs.microsoft.com!
Current utilities: | ||
---|---|---|
Color Picker | FancyZones | File Explorer Add-ons |
Image Resizer | Keyboard Manager | PowerRename |
PowerToys Run | Shortcut Guide | Video Conference Mute (Experimental) |
Installing and running Microsoft PowerToys
Requirements
- Windows 10 v1903 (build 18362) or newer preferred, Windows 10 v1803 (build 17134) minimum.
- ⚠️ PowerToys minimum version of Windows 10 will be increased to v1903 starting with the 0.37 release
- Have .NET Core 3.1.13 Desktop Runtime. The installer should handle this but we want to directly make people aware.
Via GitHub with EXE [Recommended]
Stable version
Install from the Microsoft PowerToys GitHub releases page. Click on Assets
to show the files available in the release and then click on PowerToysSetup-0.35.0-x64.exe
to download the PowerToys installer.
This is our preferred method.
Experimental version
To install the Video Conference mute, please use the v0.36 experimental version of PowerToys to try out this version. It includes all improvements from v0.35 in addition to the Video conference utility. Click on Assets
to show the files available in the release and then download the .exe installer.
Via WinGet (Preview)
Download PowerToys from WinGet. To install PowerToys, run the following command from the command line / PowerShell:
WinGet install powertoys
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.
Processor support
We currently support the matrix below.
x64 | x86 | ARM64 |
---|---|---|
Supported | Issue #602 | Issue #490 |
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.35 - March 2021 Update
Our goals for the v0.35 release cycle were to add in new functionality to support quick swapping layouts for FancyZones, wrap up work for the DirectShow migration for Video Conference Mute so we can migrate into the main dev branch as well as fixing bugs.
The 0.36 experimental release was released as well which includes Video Conference Mute.
Our prioritized roadmap of features and utilities will dictate what the core team is focusing on for the near future.
Highlights from v0.35 Stable/0.36 Experimental
General
- PowerToys will start requiring Windows 10 v1903 or greater after 0.35.x release. The v1 settings, which supports older Windows versions, will be removed in 0.37.
- Note: We may be able to bring back support when we migrate to WinUI3 but as of now, we will be increasing the minimum version of Windows to 1903 or greater.
- Localization corrections
- Improved GitHub report bug template.
- Increased .NET Core to 3.1.13
- Fixed installer 'run as user' regression
Color Picker
- UX adjustments to editor. Thanks @niels9001!
Esc
can now be used to exit the editor. Thanks @BenConstable9!
FancyZones
- Added hotkeys and quick swap functionality for custom layouts! Users can now assign a hotkey in the editor and use it to quickly set a desktop's zones with
Ctrl + Win + Alt + NUMBER
key binding, or by pressing the hotkey while dragging a window. - UX updates. Thanks @niels9001!
- Fixed zone placement algorithm for when the Taskbar is vertical
- Bug fixes
PowerToys Run
- Users can specify where to show the launcher window. Thanks @addrum!
- New plugin added to support opening previously used Visual Studio Code workspaces, remote machines (SSH or Codespaces), and containers! When enabled, use
{
to query for available workspaces. Thanks @ricardosantos9521! Please note, this plugin is off by default. - Shell history now saves the raw command instead of the resolved command. A command like
%appdata%
would now save in the Shell history as is instead ofC:\Users\YourUserName\AppData\Roaming
. Thanks @mayitbeegh! - Better logging to try to track down some bugs
- Bug fixes
Video Conference Mute (Experimental)
- Tracking work remaining at issue #7944
- Goal is to have 0.36 experimental release week of April 5th (Yes, we've stated this before, we know)
Contributor workflow
- Main project now has a vsconfig which will prompt you to install needed items versus having to use a script. This will aid in keeping you up-to-date when something changes.
- Updated spell checker. Thanks @jsoref!
Community contributions
We'd like to directly mention (in alphabetical order) for their continued community support this month and helping directly make PowerToys a better piece of software.
@Aaron-Junker, @addrum, @BenConstable9, @htcfreek, @Jay-o-Way, @jsoref, @mayitbeegh, @niels9001, @pc-v2, and @ricardosantos9521
What is being planned for v0.37 - April 2021
For v0.37, we are planning to work on:
- Stability and bug fixes
- Adding VCM to the stable release
- Removing v1 Settings / PT minimum version will become Windows 10 v1903
- Post-update guidance prompt work
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.
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.