terminal/src/cascadia/LocalTests_TerminalApp
Dustin L. Howett 4eeaddc583
Make Tab an unsealed runtimeclass (and rename it to TabBase) (#8153)
In preparation for the Settings UI, we needed to make some changes to
Tab to abstract out shared, common functionality between different types
of tab. This is the result of that work. All code references to the
settings have been removed or reverted.

Contains changes from #8053, #7802.

The messages below only make sense in the context of the Settings UI,
which this pull request does not bring in. They do, however, provide
valuable information.

From #7802 (@leonMSFT):

> This PR's goal was to add an option to the `OpenSettings` keybinding to
> open the Settings UI in a tab. In order to implement that, a couple of
> changes had to be made to `Tab`, specifically:
>
> - Introduce a tab interface named `ITab`
> - Create/Rename two new Tab classes that implement `ITab` called
>   `SettingsTab` and `TerminalTab`
>

From #8053:

> `TerminalTab` and `SettingsTab` share some implementation details. The
> close submenu introduced in #7728 is a good example of functionality
> that is consistent across all tabs. This PR transforms `ITab` from an
> interface, into an [unsealed runtime class] to de-duplicate some
> functionality. Most of the logic from `SettingsTab` was moved there
> because I expect the default behavior of a tab to resemble the
> `SettingsTab` over a `TerminalTab`.
>
> ## References
> Verified that Close submenu work was transferred over (#7728, #7961, #8010).
>
> ## Validation Steps Performed
> Check close submenu on first/last tab when multiple tabs are open.
>
> Closes #7969
>
> [unsealed runtime class]: https://docs.microsoft.com/en-us/uwp/midl-3/intro#base-classes

Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

Co-authored-by: Leon Liang <lelian@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
2020-11-04 10:15:05 -08:00
..
TestHostApp Remove all our path antics; force native projects to bin/, obj/ (#8062) 2020-10-27 15:00:41 -07:00
CommandlineTest.cpp 7124: Add focus and maximizedFocus launch modes (#7873) 2020-10-14 22:19:51 +00:00
CppWinrtTailored.h Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
LocalTests_TerminalApp.def Fix the TabTests! (#3833) 2019-12-06 20:45:08 +00:00
pch.cpp Fix the TabTests! (#3833) 2019-12-06 20:45:08 +00:00
pch.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
SettingsTests.cpp Store and expose hidden profiles (#8070) 2020-10-28 16:22:26 +00:00
TabTests.cpp Make Tab an unsealed runtimeclass (and rename it to TabBase) (#8153) 2020-11-04 10:15:05 -08:00
TerminalApp.LocalTests.AppxManifest.prototype.xml Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
TerminalApp.LocalTests.manifest TURNS OUT CASE SENSITIVITY IS IMPORTANT (#2481) 2019-08-20 11:16:06 -07:00
TerminalApp.LocalTests.vcxproj Remove all our path antics; force native projects to bin/, obj/ (#8062) 2020-10-27 15:00:41 -07:00