terminal/src
Carlos Zamora 6b503ba887
Add Serializer to CascadiaSettings (#8018)
##  Summary of the Pull Request
This adds `ToJson` functions to `Profile`, `GlobalAppSettings`, and `ColorScheme`. They are used in `CascadiaSettings` to completely serialize an instance of the settings model. Thanks to #7923, all of the settings are `std::optional`, and `JsonUtils` only writes out values that are actually populated.

`CascadiaSettings::WriteSettingsToDisk` serializes the current settings and writes them to the settings.json. A backup file is created with your old contents.

#### Limitations:
- all of the color schemes are serialized regardless of them coming from defaults.json or settings.json
- keybindings/actions are copied/pasted

## References
#1564 - Settings UI
TSM Specs (#6904 and #7876)

## PR Checklist
* [x] Tests added/passed
2020-11-17 00:37:19 +00:00
..
buffer Consider the GlyphWidth when calculate the postion of matched word in URL detecting (#8124) 2020-11-03 20:40:58 +00:00
cascadia Add Serializer to CascadiaSettings (#8018) 2020-11-17 00:37:19 +00:00
dep Move all wildcards into targets or expand them (#6406) 2020-06-08 14:01:47 -07:00
host Fix potential over/underflow as noted by "TODO:" comment (#8081) 2020-11-11 02:20:58 +00:00
inc Add support for autodetecting URLs and making hyperlinks (#7691) 2020-10-28 20:24:43 +00:00
interactivity Fix UIA ScrollIntoView at EndExclusive (#7868) 2020-10-09 20:27:13 +00:00
internal Merged PR 4271163: [Git2Git] Remove use of private theme APIs 2020-02-03 23:13:31 +00:00
propsheet Merged PR 5289766: [Git2Git] Reflect OS changes for ARM64 build 2020-11-11 10:03:28 -08:00
propslib Merged PR 5289766: [Git2Git] Reflect OS changes for ARM64 build 2020-11-11 10:03:28 -08:00
renderer Merged PR 5409981: [Git2Git] Reflect OS build changes on top of d5bfd237e5 2020-11-16 19:28:35 +00:00
server Replace basic_string_view<T> with span<const T> (#6921) 2020-07-15 16:40:42 +00:00
terminal Merged PR 5409981: [Git2Git] Reflect OS build changes on top of d5bfd237e5 2020-11-16 19:28:35 +00:00
testlist inbox: Merge accumulated build fixes from RS_ONECORE_DEP_ACIOSS (#1002) 2019-05-24 12:28:30 -07:00
til Add support for autodetecting URLs and making hyperlinks (#7691) 2020-10-28 20:24:43 +00:00
tools Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
tsf Replace basic_string_view<T> with span<const T> (#6921) 2020-07-15 16:40:42 +00:00
types UIA: throw E_FAIL for out-of-bounds text (#8052) 2020-10-27 22:45:23 +00:00
winconpty conpty: fall back to conhost if OpenConsole is missing (#7741) 2020-10-15 11:50:27 -07:00
common.build.post.props Move CI and audit build to the WinDev scale set pool (#8080) 2020-10-28 20:49:13 +00:00
common.build.pre.props Use LanguageStandard over explicit compiler flag for C++17 (#8150) 2020-11-03 15:20:48 -08:00
common.build.tests.props Update TAEF to 10.57.200731005-develop (#7164) 2020-08-03 20:47:02 +00:00
ConsolePerf.regions.xml Tab to spaces (#578) 2019-05-13 18:06:36 -07:00
ConsolePerf.wprp Fix the WPR profile (#4007) 2019-12-17 17:14:15 -08:00
cppwinrt.build.post.props Remove all our path antics; force native projects to bin/, obj/ (#8062) 2020-10-27 15:00:41 -07:00
cppwinrt.build.pre.props Fix the WINRT_NO_MAKE_DETECTION build break (#8067) 2020-10-27 17:56:09 -07:00
dirs build: move oss required to build conhost out of dep/ (#5451) 2020-04-21 14:43:09 -07:00
project.inc Merged PR 5409981: [Git2Git] Reflect OS build changes on top of d5bfd237e5 2020-11-16 19:28:35 +00:00
project.unittest.inc Merged PR 4915530: Reflect OS Build fixes on top of 58f5d7c7 2020-07-13 23:00:53 +00:00
StaticAnalysis.ruleset Combined changes to make the build work again (see inside) (#2945) 2019-09-30 10:39:55 -07:00
unit.tests.x64.runsettings Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
unit.tests.x86.runsettings Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
wap-common.build.post.props Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
wap-common.build.pre.props Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00