Files
PowerToys/src/runner
yuyoyuppe f3e25ae3e6 Fix for different per-monitor scaling (#657)
* Use DPIAware::DEFAULT_DPI

* Make runner DPI-unaware, since it doesn't need to use a Per Monitor V2 DPI.

* Programmatically enable "Per Monitor V2 DPI" for the runner proccess and use a separate DPI-unaware thread for the corresponding API calls

* Increase PCH memory limit for settings project

* Address review issues

* Draw zoneWindows properly scaled
2019-11-07 21:56:32 +03:00
..
2019-10-22 08:11:23 +02:00
2019-10-28 19:07:32 +01:00
2019-10-14 19:22:14 +02:00

PowerToys Runner

Introduction

The PowerToys Runner contains the project for the PowerToys.exe executable. It's responsible for:

  • Loading the individual PowerToys modules.
  • Passing registered events to the PowerToys.
  • Showing a system tray icon to manage the PowerToys.
  • Bridging between the PowerToys modules and the Settings editor.

Image of the tray icon

Code organization

main.cpp

Contains the executable starting point, initialization code and the list of known PowerToys.

powertoy_module.h and powertoy_module.cpp

Contains code for initializing and managing the PowerToy modules.

powertoys_events.cpp

Contains code that handles the various events listeners, and forwards those events to the PowerToys modules.

lowlevel_keyboard_event.cpp

Contains code for registering the low level keyboard event hook that listens for keyboard events.

win_hook_event.cpp

Contains code for registering a Windows event hook through SetWinEventHook, that listens for various events raised when a window is interacted with.

tray_icon.cpp

Contains code for managing the PowerToys tray icon and its menu commands.

settings_window.cpp

Contains code for starting the PowerToys settings window and communicating with it.

general_settings.cpp

Contains code for loading, saving and applying the general setings.

auto_start_helper.cpp

Contains helper code for registering and unregistering PowerToys to run when the user logs in.

unhandled_exception_handler.cpp

Contains helper code to get stack traces in builds. Can be used by adding a call to init_global_error_handlers in WinMain.

trace.cpp

Contains code for telemetry.

svgs

Contains the SVG assets used by the PowerToys modules.