[PR #1885] Move most of TerminalApp's runtime Xaml to a .xaml file and class #24693

Open
opened 2026-01-31 09:04:48 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/1885

State: closed
Merged: Yes


Summary of the Pull Request

This pull request migrates a lot of the manual Xaml construction from TerminalApp::App into a .xaml file. The benefits in doing this are myriad:

  • We can now use the live xaml designer to edit Terminal's layout!
  • It performs way better because we don't need a WinRT call for every object's every property
  • It is the groundwork for supporting multiple windows
  • It can be themed with theme resources without jumping through terrible, terrible hoops
  • The Xaml compiler produces all of the members for all of the named xaml objects all on its own!

It is, however, incomplete. I have only moved the xaml, I have not moved any of the logic. This is groundwork, and necessary for @cinnamon-msft to keep working on the UI. Followup issue #1878.

References

Mentioned in #929.

PR Checklist

  • Closes #xxx
  • I've discussed this with core contributors already.

Validation Steps Performed

  • Manual run with custom themes, settings, toggling "always show tabs" and "tabs in titlebar."
**Original Pull Request:** https://github.com/microsoft/terminal/pull/1885 **State:** closed **Merged:** Yes --- ## Summary of the Pull Request This pull request migrates a lot of the manual Xaml construction from `TerminalApp::App` into a .xaml file. The benefits in doing this are myriad: * We can now use the live xaml designer to edit Terminal's layout! * It performs way better because we don't need a WinRT call for every object's every property * It is the groundwork for supporting multiple windows * It can be themed with theme resources without jumping through terrible, terrible hoops * The Xaml compiler produces all of the members for all of the named xaml objects all on its own! It is, however, incomplete. I have _only moved the xaml_, I have not moved any of the logic. This is groundwork, and necessary for @cinnamon-msft to keep working on the UI. Followup issue #1878. ## References Mentioned in #929. ## PR Checklist * [ ] Closes #xxx * [x] I've discussed this with core contributors already. ## Validation Steps Performed * Manual run with custom themes, settings, toggling "always show tabs" and "tabs in titlebar."
claunia added the pull-request label 2026-01-31 09:04:48 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#24693