terminal/src/cascadia
Leon Liang 99a28f9e9e
Convert Tab to a WinRT type (#4350)
## Summary of the Pull Request
This PR will make the existing `Tab` class into a WinRT type. This will allow any XAML to simply bind to the `ObservableVector` of Tabs. 

This PR will be followed up with a future PR to change our TabView to use the ObservableVector, which will in turn eliminate the need for maintaining two vectors of Tabs. (We currently maintain `_tabs` in `TerminalPage` and we also maintain `TabView().TabViewItems()` at the same time as described here: #2740)

## References
#3922 

## PR Checklist
* [x] CLA signed.
* [x] Tests added/passed

## Detailed Description of the Pull Request / Additional comments
I've currently only exposed a Tab's Title and IconPath to keep things simple. I foresee XAML elements that bind to Tabs to only really need these two properties for displaying.

I've also converted `TerminalPage`'s `std::vector<std::shared_ptr> _tabs` into a `IObservableVector<winrt::TerminalPage::Tab> _tabs` just so that future PRs will have the ground set for binding to this vector of tabs.

## Validation Steps Performed
Played around with Tabs and Panes and all sorts of combinations of keybindings for interacting with tabs and dragging and whatnot, it all seemed fine! Tab Tests also all pass.
2020-02-04 21:51:11 +00:00
..
CascadiaPackage Collect all known PowerShell Core installations for dynamic profiles (#4273) 2020-01-31 04:17:21 +00:00
inc Convert Tab to a WinRT type (#4350) 2020-02-04 21:51:11 +00:00
LocalTests_TerminalApp Convert Tab to a WinRT type (#4350) 2020-02-04 21:51:11 +00:00
PublicTerminalCore Remove unneeded c_str() conversions (#4358) 2020-01-27 10:23:13 -08:00
TerminalApp Convert Tab to a WinRT type (#4350) 2020-02-04 21:51:11 +00:00
TerminalConnection Implement til::u8u16 and til::u16u8 conversion functions (#4093) 2020-01-29 16:55:48 -08:00
TerminalControl Introduce UiaTextRangeBase::FindText() for Accessibility (#4373) 2020-01-31 23:26:19 +00:00
TerminalCore Refactor UiaTextRange For Improved Navigation and Reliability (#4018) 2020-01-31 20:59:39 +00:00
TerminalSettings Terminal uses system default for number of rows scrolled at a t… (#3575) 2020-01-06 09:39:02 -08:00
UnitTests_TerminalCore Add just the test infrastructure bits from #4354 (#4382) 2020-01-29 16:33:06 +00:00
ut_app update to the latest MUX prerelease (#4024) 2019-12-19 18:16:07 +00:00
WindowsTerminal Remove unneeded c_str() conversions (#4358) 2020-01-27 10:23:13 -08:00
WindowsTerminalUniversal Introduce chromium safe math (#4144) 2020-01-16 18:51:06 +00:00
WinRTUtils Kill NEEDS_LOC and move cmdline descriptions into resources (#4402) 2020-01-31 01:13:38 +00:00
WpfTerminalControl consolidate PackageES versioning in /custom.props (#3672) 2019-11-25 11:29:40 -08:00
CascadiaResources.build.items Add Int, Dev and IntDev assets; switch to them (#4006) 2019-12-17 19:57:51 -08:00