- Nintendo Account: replace broken cookie-listening sign-in with the real
OAuth/PKCE flow Nintendo actually requires (authorize URL, custom
npf...://auth redirect interception, session_token_code exchange).
Live-verified reaching Nintendo's real account-linking screen.
- Reddit/Social: fix signed-in state never appearing after login - Reddit's
login completes via SPA routing that doesn't fire loadFinished, so the
Miiverse reskin never rebuilt. Now detects login-page departure via
urlChanged and forces a real reload.
- Add "Sign In via Your Browser" as an explicit alternative for both
Nintendo and Reddit, opening the real system browser instead of the
embedded view.
- Library: Nintendo-owned titles with no local file had no way to ever
become playable (Launch permanently disabled). Add "Locate ROM..." to
locate the file once, launch immediately, and register it as a normal
scan directory so it becomes a real library entry from then on.
- Libretro: wire the previously-unreachable EmulatorCoreManager/RetroArch
launch path into a real "Load Libretro Core..." Tools menu action.
Give LibretroWrapper real callback wiring instead of stubs.
- Steam: add AddSuyuSelfShortcut() so suyu itself (and by extension its
library) shows up in Steam with overlay enabled.
- Fix FileBackend::Write() permanently disabling file logging after one
transient flush failure; flush the log queue on shutdown.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>