diff --git a/src/cascadia/LocalTests_TerminalApp/SettingsTests.cpp b/src/cascadia/LocalTests_TerminalApp/SettingsTests.cpp index b11fec3e7..16191eedb 100644 --- a/src/cascadia/LocalTests_TerminalApp/SettingsTests.cpp +++ b/src/cascadia/LocalTests_TerminalApp/SettingsTests.cpp @@ -1323,6 +1323,8 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(9u, keymap.Size()); { + Log::Comment(L"profile.elevate=omitted, action.elevate=nullopt: don't auto elevate"); + KeyChord kc{ true, false, false, static_cast('A') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1343,6 +1345,8 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(false, termSettings.Elevate()); } { + Log::Comment(L"profile.elevate=true, action.elevate=nullopt: DO auto elevate"); + KeyChord kc{ true, false, false, static_cast('B') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1363,6 +1367,8 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(true, termSettings.Elevate()); } { + Log::Comment(L"profile.elevate=false, action.elevate=nullopt: don't auto elevate"); + KeyChord kc{ true, false, false, static_cast('C') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1384,6 +1390,8 @@ namespace TerminalAppLocalTests } { + Log::Comment(L"profile.elevate=omitted, action.elevate=false: don't auto elevate"); + KeyChord kc{ true, false, false, static_cast('D') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1405,6 +1413,8 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(false, termSettings.Elevate()); } { + Log::Comment(L"profile.elevate=true, action.elevate=false: don't auto elevate"); + KeyChord kc{ true, false, false, static_cast('E') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1426,6 +1436,8 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(false, termSettings.Elevate()); } { + Log::Comment(L"profile.elevate=false, action.elevate=false: don't auto elevate"); + KeyChord kc{ true, false, false, static_cast('F') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1448,6 +1460,8 @@ namespace TerminalAppLocalTests } { + Log::Comment(L"profile.elevate=omitted, action.elevate=true: DO auto elevate"); + KeyChord kc{ true, false, false, static_cast('G') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1469,6 +1483,7 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(true, termSettings.Elevate()); } { + Log::Comment(L"profile.elevate=true, action.elevate=true: DO auto elevate"); KeyChord kc{ true, false, false, static_cast('H') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); @@ -1490,6 +1505,8 @@ namespace TerminalAppLocalTests VERIFY_ARE_EQUAL(true, termSettings.Elevate()); } { + Log::Comment(L"profile.elevate=false, action.elevate=true: DO auto elevate"); + KeyChord kc{ true, false, false, static_cast('I') }; auto actionAndArgs = TestUtils::GetActionAndArgs(keymap, kc); VERIFY_ARE_EQUAL(ShortcutAction::NewTab, actionAndArgs.Action()); diff --git a/src/cascadia/TerminalSettingsModel/ActionArgs.idl b/src/cascadia/TerminalSettingsModel/ActionArgs.idl index 049fce52d..8506c3354 100644 --- a/src/cascadia/TerminalSettingsModel/ActionArgs.idl +++ b/src/cascadia/TerminalSettingsModel/ActionArgs.idl @@ -135,7 +135,6 @@ namespace Microsoft.Terminal.Settings.Model Boolean Equals(NewTerminalArgs other); String GenerateName(); String ToCommandline(); - UInt64 Hash(); }; diff --git a/src/cascadia/WindowsTerminal/AppHost.cpp b/src/cascadia/WindowsTerminal/AppHost.cpp index 2a70aea45..0ceb487e3 100644 --- a/src/cascadia/WindowsTerminal/AppHost.cpp +++ b/src/cascadia/WindowsTerminal/AppHost.cpp @@ -103,15 +103,8 @@ AppHost::~AppHost() { // destruction order is important for proper teardown here _window = nullptr; - try - { - if (_app) - { - _app.Close(); - _app = nullptr; - } - } - CATCH_LOG(); + _app.Close(); + _app = nullptr; } bool AppHost::OnDirectKeyEvent(const uint32_t vkey, const uint8_t scanCode, const bool down)