mirror of
https://github.com/microsoft/PowerToys.git
synced 2024-12-15 20:19:17 +08:00
0314b570cd
* Architecture and (#7267) * Added debugging steps for PT Run * Updated architecture markdown for launcher * updated project architecture markdown for launcher * Added telemetry docs for launcher * Added the basic folder structure and files * Added a basic overview of all common functionalities of the plugins * Added information about the functioning of the calculator plugin * update score section of overview * added information about the uri plugin * added info about the indexer plugin * Added the documentation for the indexer plugin * Added information about the program plugin * Added info about the shell plugin * updated some plugin info and added information about the ww plugin * documenting the folder plugin * updated window walker docs * dev docs for the folder plugin * added images to each of the plugins * Added link to pt run documents * fix typos and some minor corrections * Add table of contents for pt run dev docs * Fix image path and project link for Wox.plugin Co-authored-by: Divyansh Srivastava <somm14divi@gmail.com>
1.7 KiB
1.7 KiB
Window Walker plugin
The window walker plugin matches the user entered query with the open windows on the system.
OpenWindows.cs
- The window walker plugin uses the
EnumWindows
function to enumerate all the open windows in theOpenWindows.cs
class.
SearchController.cs
- The
SearchController
encapsulates the functions needed to search and find matches. - It is responsible for updating the search text and performing a fuzzy search on all the open windows in an asynchronous manner.
Window.cs
- The
Window
class represents a specific window and has functions to get the name of the process, the state of the window (whether it is visible or not), and theSwitchTowindow
function which switches the desktop focus to the selected window. This action is performed when the user clicks on a window walker plugin result.
Score
The window walker plugin uses FuzzyMatching
to get the matching indices and calculates the score by creating a 2 dimensional array of the window and the query text.