diff --git a/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp b/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp index 3577883f4..54d5863e0 100644 --- a/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp +++ b/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp @@ -256,10 +256,14 @@ namespace SettingsModelLocalTests ])" }; // complex command with key chords - const std::string actionsString4{ R"([ + const std::string actionsString4A{ R"([ { "command": { "action": "adjustFontSize", "delta": 1 }, "keys": "ctrl+c" }, { "command": { "action": "adjustFontSize", "delta": 1 }, "keys": "ctrl+d" } ])" }; + const std::string actionsString4B{ R"([ + { "command": { "action": "findMatch", "direction": "next" }, "keys": "ctrl+shift+s" }, + { "command": { "action": "findMatch", "direction": "prev" }, "keys": "ctrl+shift+r" } + ])" }; // command with name and icon and multiple key chords const std::string actionsString5{ R"([ @@ -372,7 +376,8 @@ namespace SettingsModelLocalTests RoundtripTest(actionsString3); Log::Comment(L"complex commands with key chords"); - RoundtripTest(actionsString4); + RoundtripTest(actionsString4A); + RoundtripTest(actionsString4B); Log::Comment(L"command with name and icon and multiple key chords"); RoundtripTest(actionsString5); diff --git a/src/cascadia/TerminalSettingsModel/ActionArgs.h b/src/cascadia/TerminalSettingsModel/ActionArgs.h index 731ced237..041513743 100644 --- a/src/cascadia/TerminalSettingsModel/ActionArgs.h +++ b/src/cascadia/TerminalSettingsModel/ActionArgs.h @@ -1417,7 +1417,7 @@ namespace winrt::Microsoft::Terminal::Settings::Model::implementation } Json::Value json{ Json::ValueType::objectValue }; const auto args{ get_self(val) }; - JsonUtils::GetValueForKey(json, DirectionKey, args->_Direction); + JsonUtils::SetValueForKey(json, DirectionKey, args->_Direction); return json; } IActionArgs Copy() const