* 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.xaml
is the parent WPF control.WindowsXamlHost
control is used to host UWP control toMainWindow.xaml
parent control.ShellPage.xaml
is a UWP control, consisting of a side navigation panel with an icon for each module. Clicking on a module icon loads the correspondingsetting.json
file and displays the data in the UI.