v1.8.4
Hotfix release: TV Mode now correctly resumes the user's last session state, so quitting the app in normal mode and relaunching no longer drops the user back into TV Mode. Also ships bundled controller presets and an export script for default gamepad mappings.
Highlights
- TV Mode respects the last session:
TVModeSettingsManagernow readstvMode_currentlyActiveon init (the runtime-mode key it has been writing on every toggle) and only falls back to thelaunchInTVModepreference on a true first launch, so exiting TV Mode and quitting now actually persists. - Bundled controller presets: New
BundledControllerPresets.swiftloads default controller mappings from JSON at launch, with new presets for 8BitDo Ultimate 3-mode (Xbox layout), Lic Pro Controller, and Xbox Wireless Controller.ControllerServiceuses them as the default-mapping source. - Preset export utility:
scripts/export_controller_presets.pyexports user-saved controller mappings into the bundled preset JSON files.
Detailed Changes
- Read
tvMode_currentlyActiveatTVModeSettingsManagerinit and fall back tolaunchInTVModeonly when no prior session has been recorded, so cold-start TV-mode state matches the user's quit-time state - Add
BundledControllerPresets.swiftto load default controller mappings from JSON at app launch - Add new controller preset JSON files for 8BitDo Ultimate 3mode Xbox, Lic Pro Controller, and Xbox Wireless Controller
- Update
ControllerServiceto use bundled presets as the source for default mappings - Add
export_controller_presets.pyscript to export user-saved controller mappings to bundled preset files - Update
project.pbxprojto include the new source files and resources