What's New:
- Deps: Update for July 2025
- CI/Flatpak: Simplify deps build
- CMake: Drop Flatpak workarounds
- README: Add migration instructions for Flatpak->AppImage
- Qt: Fix changing language while game running
- Host: Add FormatNumber()
- Misc: Use host locale formatting for dates
- Qt: Merge qttranslations.cpp with qthost.cpp
- Qt: Cache app locale object
- Qt: Use application locale in most places
- Qt: Implement 'System Language' language option
- Qt: Use selected language locale for formatting
- FullscreenUI: Add option to hide grid view labels
- FullscreenUI: Fix remaining fixed date/time formatting locations
- MediaCapture: Don't crash if video codec supports 0 formats
- CrashHandler: Fix recursive backtrace on Linux
- CMake: Force debug symbols on Linux
- Data: Update SDL game controller database
- Qt: Use localized date/time formatting in a few more places
- Achievements: Revert back to long date format for unlock/submit time
- CMake: Use -g1 for Release builds
- dep/imgui: Remap non-breaking space to space
- FullscreenUI: Fix clock position in pause menu
- GPU: Fix typo
- Qt: Add tooltips to game list
- Update the Simple-Chinese translation to latest.
- FullscreenUI: Fix focus loss with grid/list button
- Deps: Revert Harfbuzz to 11.2.1
- GameDB: Tweak compat settings for Parasite Eve 2
- GameDB: Set max speedup cycles to 70000 for Resident Evil 2
- System: Centralize pause checks
- Qt: Create main window before starting EmuThread
- CI/Flatpak: Hopefully fix build cache
- Qt: Fix possible crash on shutdown
- Scripts: Remove PKGBUILD
- Qt: Refuse to start in known broken environments
- Qt: Auto switch between any/changed values in memory scanner
- Qt: Fix assertion on shutdown after resize
- Qt: Fix maximized state not saving to config
- Qt: Display 'First Value' in memory scanner
- GameDatabase: Remove redundant SetRymlCallbacks()
- Misc: Replace a bunch of static qualifiers with inline
- Qt: Persist memory scanner watch list across instances
- Qt: Various fixes to memory scanner UI
- GPU: Fix screenshot size in uncorrected mode
- GPU: Simplify screenshot size calculation
- PerformanceCounters: Align to 4 elements
- AudioStream: Fix glitches when disabling fast-forwarding
- AudioStream: Back off resets that don't pass threshold over time
- AudioStream: SIMD averaging window calculation
- AudioStream: Use larger target size only when intentionally running slow
- dep/imgui: Demo window should not enabled
- ImGuiOverlays: Fix save state selector out-of-order drawing
- ImGuiManager: Don't render when skipping present
- ImGuiOverlays: Frame time history is aligned
- Settings: Remove middle padding
- Achievements: Split up overlay setting
- Qt: Fix inability to exit with HC mode active
- Qt: Fix exit on separate window close with FSUI active
- GameDB: Adjust crop area for Silent Hill
- Qt: Remove obsolete comment
- Qt: Don't reset model for every scanned game
- Qt: Add tooltips for more fields in game list
- Qt: Use header resize mode for game list column widths
- Qt: Use header resize mode for memory scanner
- Qt: Use header resize mode for settings panels
- Qt: Use header resize mode for memory card editor
- Qt: Use header resize mode for disc windows
- Qt: Remove now-unused resize column helpers
- Qt/Updater: Move Download Size indicator to the top
- GameDB: Fix cropping in Tomb Raider 4 & 5
- Achievements: Infer and display beaten/completed time
- Data: Update SDL game controller database
- Qt: Improve display of version in updater
- CMake: Update version requirements
- Qt: Fix updater download size display
- CI: Fix PR builds failing
- Qt: Fix buffer size help text (#3501)
- GameDB: Disable widescreen for Arc the Lad II
- GameDB: Disable disc speedup on MDEC for Chrono Cross
- GameDB: Delete obsolete comment
- GameDB: Add compatibility rating to a couple of games
- GameDB: Disable disc speedup on MDEC for Star Ocean - The Second Story
- Deps: Bump to SDL3 3.2.20
- CI: Missed one workflow
- Achievements: Fix counting progression achievements
- Achievements: Fix display of game completion date
- Achievements: Keep track of the earliest unlocked win condition
- FullscreenUI: Improve title padding of achievements