mirror of
https://github.com/microsoft/PowerToys.git
synced 2025-12-15 19:27:56 +01:00
* created a folder for settings and added an overview, hotkey information * basic structure for communication between settings and runner * Added information about the IPC communication between settings and runner * Added information about the communication between the settings process and modules * Added details on backward compatibility * brief overview on settings utils * added an overview of the viewmodels and anomalies * minor modifications * Settings v2 dev docs (#7334) * Added settings architecture and tech stack dev docs * Added telemetry and updated architecture docs for settings v2 * Fix image link in ui_architecture markdown * Added table of contents for settings v2 * Correct file path for ui architecture image * nit fix in table of contents heading * Add doc for xaml island tweaks Co-authored-by: Divyansh Srivastava <somm14divi@gmail.com>
1.4 KiB
1.4 KiB
UI Architecture
The UI code is distributed between two projects: Microsoft.PowerToys.Settings.UI.Runner and Microsoft.PowerToys.Settings.UI. Microsoft.PowerToys.Settings.UI.Runner is a WPF .net core application. It contains the parent display window and corresponding code is present in MainWindow.xaml. Microsoft.PowerToys.Settings.UI is UWP applications and contains views for base navigation and modules. Fig 1 provides a description of the UI controls hierarchy and each of the controls have been summarized below :
MainWindow.xamlis the parent WPF control.WindowsXamlHostcontrol is used to host UWP control toMainWindow.xamlparent control.ShellPage.xamlis a UWP control, consisting of a side navigation panel with an icon for each module. Clicking on a module icon loads the correspondingsetting.jsonfile and displays the data in the UI.
