terminal/src/cascadia/TerminalSettingsModel
Mike Griese 9dc38ad0f5
Add an animation to pane entrance/exit (#7364)
Adds an entrance animation when panes are created. This animation can be
disabled with the `disableAnimations` global setting. 

Although the XAML animation documentation was pretty heavy on the _do it
in XAML_ route, our panes are created pretty much entirely in code, so
we've got to create the animations in code as well. 

200ms as the duration of the animation was picked _super_ arbitrarily.
300ms felt too long, and 166ms felt like it was only visible for a
single frame. 

see also:
* [Motion in practice](https://docs.microsoft.com/en-us/windows/uwp/design/motion/motion-in-practice)
* [This example](https://docs.microsoft.com/en-us/uwp/api/Windows.UI.Xaml.Media.Animation.Storyboard?view=winrt-19041#examples) what what I ended up using, albeit ported to cppwinrt.
* [`Timeline.AllowDependentAnimations`](https://docs.microsoft.com/en-us/uwp/api/windows.ui.xaml.media.animation.timeline.allowdependentanimations?view=winrt-19041#Windows_UI_Xaml_Media_Animation_Timeline_AllowDependentAnimations)
* [easing functions](https://docs.microsoft.com/en-us/windows/uwp/design/motion/key-frame-and-easing-function-animations#easing-functions)

## Validation Steps Performed
Man have I been opening panes

Closes #1001
Closes #7366
2020-10-09 23:06:40 +00:00
..
dll Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
Resources/en-US Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ActionAndArgs.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ActionAndArgs.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ActionArgs.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ActionArgs.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ActionArgs.idl Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
AzureCloudShellGenerator.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
AzureCloudShellGenerator.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
CascadiaSettings.cpp Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
CascadiaSettings.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
CascadiaSettings.idl Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
CascadiaSettingsSerialization.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ColorScheme.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ColorScheme.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
ColorScheme.idl Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
Command.cpp Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
Command.h Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
Command.idl Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
DefaultProfileUtils.cpp Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
DefaultProfileUtils.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
defaults-universal.json From orbit, nuke the Telnet connection and all supporting infra. (#7840) 2020-10-09 18:59:58 +00:00
defaults.json Add an animation to pane entrance/exit (#7364) 2020-10-09 23:06:40 +00:00
GlobalAppSettings.cpp Add an animation to pane entrance/exit (#7364) 2020-10-09 23:06:40 +00:00
GlobalAppSettings.h Add an animation to pane entrance/exit (#7364) 2020-10-09 23:06:40 +00:00
GlobalAppSettings.idl Add an animation to pane entrance/exit (#7364) 2020-10-09 23:06:40 +00:00
IDynamicProfileGenerator.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
init.cpp Hook up the WIL fallback error tracer in Terminal (#7864) 2020-10-09 22:20:12 +00:00
JsonUtils.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyChordSerialization.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyChordSerialization.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyChordSerialization.idl Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyMapping.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyMapping.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyMapping.idl Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
KeyMappingSerialization.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
LegacyProfileGeneratorNamespaces.h From orbit, nuke the Telnet connection and all supporting infra. (#7840) 2020-10-09 18:59:58 +00:00
Microsoft.Terminal.Settings.ModelLib.vcxproj Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
Microsoft.Terminal.Settings.ModelLib.vcxproj.filters Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
packages.config Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
pch.cpp Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
pch.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
PowershellCoreProfileGenerator.cpp Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
PowershellCoreProfileGenerator.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
Profile.cpp Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
Profile.h Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
Profile.idl Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
SettingsTypes.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
TerminalSettingsSerializationHelpers.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
TerminalWarnings.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
TerminalWarnings.idl Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
userDefaults.json Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00
WslDistroGenerator.cpp Introduce IconConverter (#7830) 2020-10-08 11:29:04 -07:00
WslDistroGenerator.h Introduce TerminalSettingsModel project (#7667) 2020-10-06 09:56:59 -07:00