Repository navigation
feat: native audio and displays by default; stop bundling NirSoft tools (#91) - #99
Merged
Merged
Conversation
…ls (#91) - NativeAudio and NativeDisplays default to true. - The build no longer downloads or embeds MultiMonitorTool / SoundVolumeView (Get-NirSoftTools.ps1 removed); only rtss-cli (MIT) is still bundled. - The NirSoft backends stay in the code as a fallback for anyone who drops the exe into the tools folder and sets the flag to false, until 1.6 is verified. - Docs, third-party notices and the manual checklist updated. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Contributor
There was a problem hiding this comment.
Important
Existing users do not switch to the new native defaults without config migration.
Reviewed changes This review covers the switch to native audio and display defaults, removal of bundled NirSoft tools, and related documentation updates.
- Native backends by default
NativeAudioandNativeDisplaysnow initialize totrue. - No bundled NirSoft tools The publish process and portable extraction now include only rtss-cli, while NirSoft implementations remain as manual fallbacks.
- Documentation updates The guides, third-party notices, and manual testing checklist describe the new defaults and fallback setup.
GPT Luna | 𝕏
| /// <summary>Use Windows' display APIs instead of MultiMonitorTool (issue #91); off until verified on hardware.</summary> | ||
| public bool NativeDisplays { get; set; } | ||
| /// <summary>Core Audio instead of SoundVolumeView (issue #91). On since 1.6; false needs SoundVolumeView.exe in tools.</summary> | ||
| public bool NativeAudio { get; set; } = true; |
Contributor
There was a problem hiding this comment.
Existing users keep nativeAudio: false after upgrading because their saved config.json already contains the old serialized false value; the initializer is only used when the property is absent. The same applies to nativeDisplays, so these users continue selecting the NirSoft fallback rather than receiving the advertised native defaults.
Technical details
# Migrate persisted backend defaults
## Affected sites
- `src/ConsoleMode/Models/Models.cs:23` — the initializer does not override values explicitly loaded from existing config files.
- `src/ConsoleMode/Models/Models.cs:25` — the same persisted-false behavior applies to native display selection.
- `src/ConsoleMode/Services/ConfigService.cs:14` — deserialization preserves the existing false values.
## Required outcome
- Existing configs from releases where both flags defaulted to false should use the new native backends after upgrade, while retaining a supported way for users to opt into the NirSoft fallback.
## Suggested approach
- Add a config-version migration that can distinguish pre-native-default configs and update the backend flags when loading them.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
NativeAudioandNativeDisplaysdefault totrue.For 1.6.0-alpha.1. Not verified on hardware yet.
🤖 Generated with Claude Code