[PR #3027] [MERGED] Upgrade to Microsoft.UI.Xaml 2.2 #25209

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

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/3027
Author: @DHowett-MSFT
Created: 10/2/2019
Status: Merged
Merged: 10/15/2019
Merged by: @DHowett-MSFT

Base: masterHead: dev/duhowett/mux-2.2


📝 Commits (8)

  • 8a2f2d9 Build changes to move to MUX 2.2.190917002
  • 9f3eae7 Upgrade to Microsoft.UI.Xaml.2.2
  • 91bf6ff re-code the format
  • e9916f7 CR feedback I
  • 93dcdc4 Only initialize the terminal once we know the size
  • eb4095f Merge remote-tracking branch 'github/master' into dev/duhowett/mux-2.2
  • 02d507b Theme the SplitButton even closer to the TabView button
  • b2dda8f this unfortunately fixes the build

📊 Changes

27 files changed (+238 additions, -172 deletions)

View changed files

📝 build/rules/GenerateSxsManifestsFromWinmds.targets (+1 -1)
📝 src/cascadia/CascadiaPackage/CascadiaPackage.wapproj (+9 -0)
📝 src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.vcxproj (+2 -2)
📝 src/cascadia/TerminalApp/App.h (+0 -10)
📝 src/cascadia/TerminalApp/App.xaml (+11 -0)
📝 src/cascadia/TerminalApp/MinMaxCloseControl.xaml (+1 -1)
📝 src/cascadia/TerminalApp/Tab.cpp (+7 -5)
📝 src/cascadia/TerminalApp/TabRowControl.cpp (+1 -1)
📝 src/cascadia/TerminalApp/TabRowControl.h (+1 -1)
📝 src/cascadia/TerminalApp/TabRowControl.idl (+1 -2)
📝 src/cascadia/TerminalApp/TabRowControl.xaml (+52 -13)
📝 src/cascadia/TerminalApp/TerminalPage.cpp (+46 -55)
📝 src/cascadia/TerminalApp/TerminalPage.h (+3 -4)
📝 src/cascadia/TerminalApp/TitlebarControl.cpp (+4 -5)
📝 src/cascadia/TerminalApp/TitlebarControl.h (+2 -2)
📝 src/cascadia/TerminalApp/TitlebarControl.idl (+1 -1)
📝 src/cascadia/TerminalApp/TitlebarControl.xaml (+2 -2)
📝 src/cascadia/TerminalApp/Utils.cpp (+0 -30)
📝 src/cascadia/TerminalApp/Utils.h (+66 -2)
📝 src/cascadia/TerminalApp/lib/TerminalAppLib.vcxproj (+2 -8)

...and 7 more files

📄 Description

This pull request introduces the code changes required to move to MUX 2.2
final.

  • We had to move to the final API:
    • Items -> TabItems
    • Items.VectorChanged -> TabItemsChanged
    • TabClose -> TabCloseRequested
    • TabViewItem.Icon -> TabViewItem.IconSource
  • TabRowControl has been converted to a ContentPresenter, which
    simplifies its logic a little bit.
  • TerminalPage now differentiates MUX and WUX a little better
  • Because of the change from Icon to IconSource in TabViewItem,
    Utils::GetColoredIcon needed to be augmented to support MUX IconSources.
    It was still necessary to use for WUX, so it's been templatized.
  • I moved us from WUX SplitButton to MUX SplitButton and brought the
    style in line with the one typically provided by TabView.
  • Some of our local controls have had their backgrounds removed so
    they're more amenable to being placed on other surfaces.
  • I'm suppressing the TabView's padding.
  • I removed a number of apparently dead methods from App.
  • I've simplified the dragbar's sizing logic and eventing.
  • The winmd harvester needed to be taught to not try to copy winmds for framework packages.

PR Checklist

Validation Steps Performed

It's tabs, and they do a good. I tried them all.

image

image

image

image

image

References

  • Enables #597, but does not fix it

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/3027 **Author:** [@DHowett-MSFT](https://github.com/DHowett-MSFT) **Created:** 10/2/2019 **Status:** ✅ Merged **Merged:** 10/15/2019 **Merged by:** [@DHowett-MSFT](https://github.com/DHowett-MSFT) **Base:** `master` ← **Head:** `dev/duhowett/mux-2.2` --- ### 📝 Commits (8) - [`8a2f2d9`](https://github.com/microsoft/terminal/commit/8a2f2d97ff389b34756c1c225876637711f82d9f) Build changes to move to MUX 2.2.190917002 - [`9f3eae7`](https://github.com/microsoft/terminal/commit/9f3eae76c8b2b7e92fd4789797c927ac1b891c23) Upgrade to Microsoft.UI.Xaml.2.2 - [`91bf6ff`](https://github.com/microsoft/terminal/commit/91bf6ffa1cf73becd592682fd1d57cfe696496e2) re-code the format - [`e9916f7`](https://github.com/microsoft/terminal/commit/e9916f71792e3b4e1dd4dbbfba5017266379b0e1) CR feedback I - [`93dcdc4`](https://github.com/microsoft/terminal/commit/93dcdc437121855c6612088887b296ccd4e94431) Only initialize the terminal once we know the size - [`eb4095f`](https://github.com/microsoft/terminal/commit/eb4095fe1996b710126b9ced37fb29b323249483) Merge remote-tracking branch 'github/master' into dev/duhowett/mux-2.2 - [`02d507b`](https://github.com/microsoft/terminal/commit/02d507bd09d16dc7bd93be69cd4b9600814cab00) Theme the SplitButton even closer to the TabView button - [`b2dda8f`](https://github.com/microsoft/terminal/commit/b2dda8fa59318263232492fbed3f99e654c7f87a) this unfortunately fixes the build ### 📊 Changes **27 files changed** (+238 additions, -172 deletions) <details> <summary>View changed files</summary> 📝 `build/rules/GenerateSxsManifestsFromWinmds.targets` (+1 -1) 📝 `src/cascadia/CascadiaPackage/CascadiaPackage.wapproj` (+9 -0) 📝 `src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.vcxproj` (+2 -2) 📝 `src/cascadia/TerminalApp/App.h` (+0 -10) 📝 `src/cascadia/TerminalApp/App.xaml` (+11 -0) 📝 `src/cascadia/TerminalApp/MinMaxCloseControl.xaml` (+1 -1) 📝 `src/cascadia/TerminalApp/Tab.cpp` (+7 -5) 📝 `src/cascadia/TerminalApp/TabRowControl.cpp` (+1 -1) 📝 `src/cascadia/TerminalApp/TabRowControl.h` (+1 -1) 📝 `src/cascadia/TerminalApp/TabRowControl.idl` (+1 -2) 📝 `src/cascadia/TerminalApp/TabRowControl.xaml` (+52 -13) 📝 `src/cascadia/TerminalApp/TerminalPage.cpp` (+46 -55) 📝 `src/cascadia/TerminalApp/TerminalPage.h` (+3 -4) 📝 `src/cascadia/TerminalApp/TitlebarControl.cpp` (+4 -5) 📝 `src/cascadia/TerminalApp/TitlebarControl.h` (+2 -2) 📝 `src/cascadia/TerminalApp/TitlebarControl.idl` (+1 -1) 📝 `src/cascadia/TerminalApp/TitlebarControl.xaml` (+2 -2) 📝 `src/cascadia/TerminalApp/Utils.cpp` (+0 -30) 📝 `src/cascadia/TerminalApp/Utils.h` (+66 -2) 📝 `src/cascadia/TerminalApp/lib/TerminalAppLib.vcxproj` (+2 -8) _...and 7 more files_ </details> ### 📄 Description This pull request introduces the code changes required to move to MUX 2.2 final. * We had to move to the final API: * `Items` -> `TabItems` * `Items.VectorChanged` -> `TabItemsChanged` * `TabClose` -> `TabCloseRequested` * `TabViewItem.Icon` -> `TabViewItem.IconSource` * `TabRowControl` has been converted to a `ContentPresenter`, which simplifies its logic a little bit. * `TerminalPage` now differentiates MUX and WUX a little better * Because of the change from `Icon` to `IconSource` in `TabViewItem`, `Utils::GetColoredIcon` needed to be augmented to support MUX IconSources. It was still necessary to use for WUX, so it's been templatized. * I moved us from WUX `SplitButton` to MUX `SplitButton` and brought the style in line with the one typically provided by `TabView`. * Some of our local controls have had their backgrounds removed so they're more amenable to being placed on other surfaces. * I'm suppressing the TabView's padding. * I removed a number of apparently dead methods from App. * I've simplified the dragbar's sizing logic and eventing. * The winmd harvester needed to be taught to not try to copy winmds for framework packages. ## PR Checklist * [x] Closes #1896, Closes #444, Closes #857, Closes #771, Closes #760 * [x] CLA signed * [x] Go go core contributor status! ## Validation Steps Performed It's tabs, and they do a good. I tried them all. ![image](https://user-images.githubusercontent.com/14316954/66010703-ef154a80-e474-11e9-9ce9-7730ed83ed69.png) ![image](https://user-images.githubusercontent.com/14316954/66010721-018f8400-e475-11e9-8180-29b6335da131.png) ![image](https://user-images.githubusercontent.com/14316954/66010729-094f2880-e475-11e9-9b6f-3ee01e007180.png) ![image](https://user-images.githubusercontent.com/14316954/66010734-0fdda000-e475-11e9-9d30-6d4e8b17e0f7.png) ![image](https://user-images.githubusercontent.com/14316954/66010754-284dba80-e475-11e9-8f92-41367fa0f901.png) ## References * Enables #597, but does not fix it --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:07:59 +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#25209