diff options
author | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2022-07-08 17:48:01 -0400 |
---|---|---|
committer | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2022-07-08 17:48:01 -0400 |
commit | 1b25710cf26ccc46485c9475e33980a5490b9561 (patch) | |
tree | 895f5cf3a002d5e1859beb275be85d2a911de8f8 | |
parent | dcb3a97727401c2b3704e277bc4062b3bd89448e (diff) | |
download | SMAPI-1b25710cf26ccc46485c9475e33980a5490b9561.tar.gz SMAPI-1b25710cf26ccc46485c9475e33980a5490b9561.tar.bz2 SMAPI-1b25710cf26ccc46485c9475e33980a5490b9561.zip |
fix installer partly applying color theme before it's selected
-rw-r--r-- | docs/release-notes.md | 3 | ||||
-rw-r--r-- | src/SMAPI.Installer/InteractiveInstaller.cs | 12 |
2 files changed, 9 insertions, 6 deletions
diff --git a/docs/release-notes.md b/docs/release-notes.md index cf237a82..6c3edb77 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -8,6 +8,9 @@ --> ## Upcoming release +* For players: + * Fixed Linux/macOS installer's color theme question partly unreadable if the terminal background is dark. + * For the web UI: * Added log parser warning about performance of PyTK 1.23.0 or earlier. diff --git a/src/SMAPI.Installer/InteractiveInstaller.cs b/src/SMAPI.Installer/InteractiveInstaller.cs index fd1a6047..d00a5df4 100644 --- a/src/SMAPI.Installer/InteractiveInstaller.cs +++ b/src/SMAPI.Installer/InteractiveInstaller.cs @@ -206,7 +206,7 @@ namespace StardewModdingApi.Installer Console.WriteLine(); // handle choice - string choice = this.InteractivelyChoose("Type 1 or 2, then press enter.", new[] { "1", "2" }); + string choice = this.InteractivelyChoose("Type 1 or 2, then press enter.", new[] { "1", "2" }, printLine: Console.WriteLine); switch (choice) { case "1": @@ -629,22 +629,22 @@ namespace StardewModdingApi.Installer } /// <summary>Interactively ask the user to choose a value.</summary> - /// <param name="print">A callback which prints a message to the console.</param> + /// <param name="printLine">A callback which prints a message to the console.</param> /// <param name="message">The message to print.</param> /// <param name="options">The allowed options (not case sensitive).</param> /// <param name="indent">The indentation to prefix to output.</param> - private string InteractivelyChoose(string message, string[] options, string indent = "", Action<string>? print = null) + private string InteractivelyChoose(string message, string[] options, string indent = "", Action<string>? printLine = null) { - print ??= this.PrintInfo; + printLine ??= this.PrintInfo; while (true) { - print(indent + message); + printLine(indent + message); Console.Write(indent); string? input = Console.ReadLine()?.Trim().ToLowerInvariant(); if (input == null || !options.Contains(input)) { - print($"{indent}That's not a valid option."); + printLine($"{indent}That's not a valid option."); continue; } return input; |