v1.5.2
Improvements to gameplay capture, controller hotkey customization, save management, and the in-game notification system.
Highlights
- In-Game Screenshots: Capture the current frame at any moment with a keyboard hotkey or controller button. Saves PNGs to
~/Pictures/TruchiEmu/, named after the ROM and timestamp, with a quick-view pill and a flash confirmation/ - Controller Hotkey Mapping: Bind hotkeys to gamepad buttons (via GCController identifiers or SDL button indices) directly in Hotkey settings. Capture flow listens for the next press on the active controller
- Save Manager: Bulk "Delete all saves" action with an explicit confirmation dialog covering every per-game entry
- Notification Pill Test Action: Trigger a sample in-app notification from settings to verify permissions, action buttons, and dismiss behavior
- Notification Pill Refinements: Cleaner pill visuals, more reliable auto-dismiss timing, and improved authorization flow
- Localized Hotkey Strings: New translations for screenshot, training controls, and the new hotkey management UI across English, Spanish, and Portuguese
Detailed Changes
- Added
ScreenshotServicefor Metal texture โ PNG capture, with per-system directory layout and safe filename sanitization - Added screenshot flash overlay and
ScreenshotPillOverlaywith quick "Open" / "Reveal in Finder" - Added Help shortcut entry for
โงโS(screenshot) plus localizedhelp.shortcut.screenshotstrings - Added screenshot settings catalog entry and hotkey action (
.screenshot) - Added
ControllerHotkeyBinding,ControllerHotkeySource, and capture coordinator for binding hotkeys to gamepad buttons - Refactored
HotkeyConfigSettingsViewwith three capture surfaces (primary, secondary, controller) - Added "Delete all saves" with safe two-step confirmation in the save manager
- Added "Test notification" affordance so users can validate notification authorization and pill rendering
- Tweaked in-game notification timing, visual hierarchy, and explicit dismiss handling
- Updated
en.json,es.json, andpt.jsonwith new keys - Build: codesign re-sign phase now runs reliably in Release; librashader dylib is staged into
Frameworks/with the correct install name