Commits
- e7f4034 FileSystem: Add LockedFile helper class
- 84806d3 GameList: Use LockedFile class
- ac4634c Add StringPool and BumpStringPool classes
- a035c48 GameList: Fall back to achievement badges for game icons
- 3d2c3c9 GameList: Avoid a couple of heap allocations
- 89e3ba2 Qt: Fix warning
- 2b3c7e0 Qt: Initialize COM before Qt
- 2ff9c67 Qt: Replace table widget in Game List Settings
- 70185cb Update Russian translation (#3587)
- e96a85d Atualização Português do Brasil (#3588)
- bd6e747 GameDB: Fix serials for Black-Matrix +
- 2a0fe0a GameDB: Add disc set for GT2 US
- 41b8f2b CI: Remove Flatpak builds
- a49d0b6 PostProcessing/GLSL: Skip recompile on target size change
- 8520e3f System: Work around lupdate bug causing hang
- f2291ea Deps: Build Qt Declarative/ShaderTools
- 33a3427 Deps: Remove build directory after each library
- 7deb374 Deps: Hopefully work around path length limits
- bae05a7 SDLInputSource: Change default for WGI to off
- 5653f8d ImGuiManager: Don't let non-imgui keys through
- 2c03fb9 ImGuiManager: Use static key map
- 1fbf083 FullscreenUI: Move ImGuiFullscreen to core
- 836fd9b FullscreenUI: Make file naming consistent
- fab4b05 FullscreenUI: Remove ImGuiFullscreen namespace
- e36ea9e FullscreenUI: Remove more redundancy
- 9cbcf78 FullscreenUI: Move transition handling to widgets file
- 8c25144 FullscreenUI: Always initialize widgets
- 983cde3 FullscreenUI: Make notifications/toasts thread-safe
- b1cd562 System: Don't add to the pause timer when we're already paused
- 2bc387f FullscreenUI: Fix returning to window that was open
- ba28a3f Achievements: Cache user badge path
- dc7a7ed FullscreenUI: Split settings into its own file
- cc2ee00 FullscreenUI: Split game list into its own file
- f4f8aa5 FullscreenUI: Defer more resource loads
- 10a7d8a FullscreenUI: More scope clean up
- bed758a FullscreenUI: Move translation strings to own file
- 32aa86a FullscreenUI: Move achievements to its own file
- 45d3c66 FullscreenUI: Simplify game properties state
- 476c1c5 FullscreenUI: Make OpenOrUpdateLoadingScreen() thread safe
- 9ca1c97 Mini: Compile fix
- f2dd91c RegTest: Compile fix
- a52020b DMA: Reduce linked list header read time
- aa980a4 GPU: Don't save settings to save state
- 9977e1d FullscreenUI: Disable rewind options when runahead is enabled (#3589)
- b4a868c Update the Simple-Chinese Translation to latest. (#3591)
- 7517813 Settings: Remove CD speedup above 6x
- cab6669 DMA: Speed up RAM write with CDROM speedup
- 93b4c34 FullscreenUI: Fix missing logo on landing page
- 3d6c042 FullscreenUI: Fix missing lock for settings read
- 9fa8b17 FullscreenUI: Fix a couple of missing strings
- e48649b FullscreenUI: Remove unused variable
- 0776e2f Qt: Clear style sheet before applying theme
- 2fb3773 Qt: NativeThemeStylesheetNeedsUpdate() should not apply to Fusion
- d9e363f Qt: Add message box helpers
- db7598f Qt: Use message box wrapper functions
- 8775ca0 Qt: Convert more message boxes to window modal
- 6432ac1 Qt: Fix non-rounded buttons in achievement login
- 326a6e3 CMake: Fix scmversion.cpp always updating on Mac
- 7414ed9 Update the Simplified-Chinese Translation. (#3592)
- eb23999 Atualização Português do Brasil (#3593)
- b237604 GPUDevice: Don't log warning for WARP driver
- 5818a05 Achievements: Add point count to unlock popup
- 5a7094b Achievements: Use consistent icon style in list
- de08a2f CMake: Only remap source path in Release builds
- a44c846 CMake: Fix Xcode project debugging
- 0fec148 GPU/HW: Add missing padding to UBOs
- eefcd90 GPU/HW: Avoid some redundant calls in Metal
- 24ae4a5 FullscreenUI: Fix uniform push before pipeline set
- b858fe5 GPUDevice: Display OSD message if debug settings are enabled
- 2c2fb1d D3D12Device: Fix incorrect StencilBeginningAccess/StencilEndingAccess
- cff3ece VulkanDevice: Fix incorrect struct type
- 05701fe GPUDevice: Make dyn libs public
- fcde8c7 dep/reshadefx: Cherry-pick upstream 74e95dd
- a038c88 dep/reshadefx: Work around inability to discard in function in DXC
- d82ae47 CI: Bump minimum macOS version to 13.0
- e89ab83 Qt: Misc code cleanups
- 49762aa Qt: Fix column width estimation in game list
- 59d0f3c Qt: Fix game icon size and row height in game list
- 458ad13 Qt: Take header width into account for all columns
- 94cfc9b Update the Simplified-Chinese Translation. (#3594)
- efa6e4a Common: Use NSAlert for assertion failures/panics
- c5d9358 GameDatabase: Add DisableFastForwardMemoryCardAccess trait
- 1999b0d GameDB: Set DisableFastForwardMemoryCardAccess for Twisted Metal 4
- f6cdf95 Qt: Fix positioning of game list achievements icon
- cd8d6d8 Qt: Remove game icon extra size
- d542344 Qt: Don't need these functions defined in the header
- b8764e8 Qt: Add exit specific message for confirmation dialog
- 88802e0 GameList: Fix achievement game ID not set for disc sets
- 8c08788 Qt: Normalize shut down labels
- 7bba98a Update the Simplified-Chinese Translation. (#3596)
- 5f6b690 Atualização Português do Brasil (#3597)
- d0bbf8c GameDB: Set DisableFastForwardMemoryCardAccess for Tales of Destiny
- 5a49db0 Qt: Reflect DisableFastForwardMemoryCardAccess trait in the settings UI
- 97db72c Achievements: Fix display of game completion time (#3599)
- bfc6da2 GameDB: Disable disc speedup on MDEC for Warcraft II (#3600)
- a929aaf Update Russian translation (#3601)
- b797aae GPU: Fix a couple instances of reading wrong thread settings
- 0841ab4 Qt: Fix disc swap from game list incorrectly pausing
- c33354e Qt: Don't hold game list lock on popup
- dc5b57a Qt: Missed a couple of shutdown -> close messages
- b483d2f ImGuiManager: Add title variants for OSD messages
- 529da22 System: Use new OSD message variants
- 0d4ffde Qt: Allow command line boot of device path
- 2222085 Qt: Fix recommended value for "Challenge Indicators" (#3603)
- 3e6dd9b System: Simplify and polish more OSD messages
- 899d500 GPU: Fix compile warning
- 5de231c System: Fix regtest build
- 863b9b1 Qt: Minor layout fixes in analog controller binding widget (#3604)
- 683ccbf GPUDevice: Swap ImGui rendering to use UBO
- 6848f07 GPUDevice: Combine draw and push constant functions
- 916b23f GPUDevice: Use separate buffer for push constants
- 47c8204 GPUDevice: Add MultiTextureAndUBOAndPushConstants pipeline layout
- b43111f GPUDevice: Remap input attributes when transpiling to HLSL
- 4729e22 GPUDevice: Handle non-contiguous texture bindings in SPV transpiling
- 08317d9 GPUDevice: Set fixed names for UBO/push constants in SPV transpiling
- 9a5eadd GPUDevice: Add SRGBA8 texture format
- af5c3fa GPUDevice: Fix mipmap generation on targets
- d06f306 GPUDevice: Ensure clear is committed in MakeReadyForSampling()
- eb0a889 MetalDevice: Fix creating mipmapped textures with generate flag
- fc618b8 SPIRVModule: Add class for iterating/manipulating SPIR-V
- 81fb801 PostProcessing: Support unscaled input
- 8a732de PostProcessing: Support loading slang shaders/presets
- 77b1abf MemoryCard: Fix off-by-one reporting in card number
- 9a5e0c9 ShaderGen: Fix ImGui rendering with Vulkan
- 5da178e Update the Simplified-Chinese Translation. (#3605)
- 4ec6752 GPUPresenter: Handle padding for unscaled/slang input
- b04b87a PostProcessing: Use titled OSD messages
- 042bc79 ImGuiManager: Use different OSD title/text colours
- 5ca3536 CPU/Recompiler: Set up frame pointer on Windows ARM64
- 49a1446 Common: Fix SSE2 build
- 85275a1 Qt: Add missing help text in Interface Settings
- b0689d5 FullscreenUI: Move loading screen progress callback into namespace
- b4d71cb Qt: Save position of settings windows
- 70352b6 Qt: Center windows when they don't have saved positions
- f5fc247 Qt: Resolve command line paths before autobooting
- 520502d FileSystem: Fix RealPath() with relative paths
- e91db67 Qt: Reload icons and tooltips when game list rows change (#3609)
- a1889a2 Qt: Add standard shortcut to open settings (#3608)
- 0c7e8f3 Qt: Fix overlapping widgets in cheat settings (#3607)
- a5e2051 Update the Simplified-Chinese Translation. (#3606)
- 2a35096 FullscreenUI: Fix misdetection of some light themes
- cebb134 FullscreenUI: Fix button-held colour in menus
- de2e89e Settings: Ensure slang shaders subdirectory is created
- a8e922c Qt: Improve Darker Fusion style
- 7080e98 PostProcessing/slang: Don't balk at duplicate option names
- a88cfbe PostProcessing/slang: Raise error if too many textures are bound
- d6f4fc7 PostProcessing: Ensure input buffer matches present format
- 14481af Qt: Bring toolbar checked background closer to combo background
- d58f2d0 Qt: Make auto/clear bindings buttons QPushButtons
- a22d3a7 Qt: Style more widgets in Darker Fusion
- f9cab70 INISettingsInterface: Use case sensitive storage
- dd0c7ec GPU: Insert null field buffer if display disabled
- 8b217b5 GPU: Fix OSD reporting of non-interleaved interlaced resolution
- df4d04c Qt: Style patches widget on Mac
- d598470 Scripts: Remove Flatpak manifest
- 42cf66c FullscreenUI: Fix achievement points placement with short description
- 3d39fe2 GPU: Don't crash if first frame is interlaced+black
- 15d70ff GameDB: Max speedup cycles for Discworld and Discworld Noir (#3611)
- 51726e3 Atualização Português do Brasil (#3612)
- fbc9991 PostProcessing/Slang: Remap and skip binding unused textures
- dca565a GameDB: Adjust crop area for Gran Turismo 2 (#3613)
- 28b9111 Deps: Bump MacOS deployment target to 13.0
- 9ed5254 Deps: Patch Linguist to build without Qt Quick
- d797ca4 Deps: Don't build qtdeclarative
- 8302a6b Deps: Remove unused CMake argument
- 082ba21 Deps: Update versions
- 8dc0b99 VulkanDevice: Fix off-by-one in assertion
- a49b351 CMake: Bump SDL version requirement
- cb5ab72 Qt: Fix qrc generation script ordering differently
- 3e25958 Qt: Add dialog for adding postfx shaders
- 242280d GPU: Rearrange and reduce struct padding
- ac30cf3 GPU: Display emulated GPU usage in stats
- e4797b1 Qt: Add 'Open Directory' button to post-processing settings
- de250b8 Qt: Increase spacing in game list toolbar
- c004286 Qt: Improve shader add dialog
- 93f4e40 Ajuste (#3615)
- 859e190 Updated Swedish translation (#3614)
- c2737f9 Spanish (Spain) translation update 2025/11/07 (#3616)
- 62054ba Qt: Fix canceling shader selection dialog (#3617)
- 00444fd GameDB: Max speedup cycles for Discworld II (#3618)
- 2059e9b Update the Simplified-Chinese Translation. (#3619)
- 326016d GameDB: Set max speedup cycles to 35k for Alundra 2
- fbffdbc GameDB: Disable widescreen for Digimon World
- 652ce9e GameDB: Set DisableFastForwardMemoryCardAccess for Broken Sword II
- 540e02a GameDB: Add various comments
- bf0c0fd GameDB: Decrease cdromMaxReadSpeedupCycles for AITD4 and Dino Crisis 2
- 63d5c34 System: Fix use of moved string in error path
- 4a246a7 GPU: Avoid unnecessary postfx source preprocess when upscaling