PowerToys/src/runner
Chris Davis e1d5dd263a
Initial add of PowerRename from SmartRename repo (#499)
* Initial add of PowerRename from SmartRename repo
2019-10-17 20:57:19 -07:00
..
svgs FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
auto_start_helper.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
auto_start_helper.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
general_settings.cpp Add darkmode support for the settings window (#494) 2019-10-16 10:21:44 +02:00
general_settings.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
lowlevel_keyboard_event.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
lowlevel_keyboard_event.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
main.cpp Initial add of PowerRename from SmartRename repo (#499) 2019-10-17 20:57:19 -07:00
pch.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
pch.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
powertoy_module.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
powertoy_module.h Fix cppcheck reported issues (#333) 2019-09-11 12:38:20 +02:00
powertoys_events.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
powertoys_events.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
README.md FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
resource.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
runner.rc Add version number to telemetry event 2019-10-14 19:22:14 +02:00
runner.vcxproj FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
runner.vcxproj.filters FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
settings_window.cpp Add darkmode support for the settings window (#494) 2019-10-16 10:21:44 +02:00
settings_window.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
trace.cpp Add version number to telemetry event 2019-10-14 19:22:14 +02:00
trace.h Add version number to telemetry event 2019-10-14 19:22:14 +02:00
tray_icon.cpp Add version number to telemetry event 2019-10-14 19:22:14 +02:00
tray_icon.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
unhandled_exception_handler.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
unhandled_exception_handler.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
win_hook_event.cpp FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
win_hook_event.h FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +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.