7897 Commits

Author SHA1 Message Date
Stenzek
c32e590808
Qt: Don't hold lock while game list context menu active 2025-06-14 15:08:45 +10:00
Stenzek
20b353535d
ImGuiOverlays: Backport condition tidy-up 2025-06-14 15:08:28 +10:00
Stenzek
ba6309c458
FullscreenUI: Keep a one-deep previous window stack
Fixes settings close returning to wrong window if opened from game list.
2025-06-14 14:39:22 +10:00
Stenzek
1a39dece6a
FullscreenUI: Don't tint background in landing/game list
But keep it for settings etc, since it needs it for readability.
2025-06-14 14:33:07 +10:00
Stenzek
3a7cbc20d9
FullscreenUI: Use horizotal layout for about dialog 2025-06-14 14:10:29 +10:00
Stenzek
3ba05f182f
Qt: Use same size for serial across platforms
And center the field to compensate.
2025-06-14 13:25:52 +10:00
Stenzek
b98d521ff9
ImGuiOverlays: Draw larger status indicator icons
Always bugged me, but couldn't justify the rasterization time before
dynamic fonts.
2025-06-14 13:25:22 +10:00
Stenzek
bf4a89e82e
Qt: Use GameList::FormatTimespan()
No point duplicating the logic since the core can handle
plural translations now.
2025-06-14 13:12:21 +10:00
Stenzek
9ffded0e73
SmallString: Fix size bug in assign(SmallStringBase&&) 2025-06-14 13:12:02 +10:00
Stenzek
a31d67921b
SmallString: Use L instead of L+1
Keep the stack aligned to power of 2.
2025-06-14 13:11:39 +10:00
Davide Pesavento
70225f8345 Always use CTAD with std::unique_lock 2025-06-14 13:10:57 +10:00
Davide Pesavento
2c7d07b245 Qt: Implement reset play time for disc sets 2025-06-14 13:10:57 +10:00
Anderson Cardoso
74838e9bd8
Atualização Português do Brasil (#3444)
Atualizado para a última versão
2025-06-14 13:09:28 +10:00
KamFretoZ
bb76d7cce8
Update Indonesian Translation (#3445) 2025-06-14 13:09:18 +10:00
Davide Pesavento
873c7c9dc3 Qt: Right align size columns in game list view 2025-06-14 13:08:38 +10:00
Davide Pesavento
00330ca391 Qt: Avoid truncating Serial column in game list view on macOS 2025-06-14 13:08:38 +10:00
Davide Pesavento
5dc55bb4a1
Qt: Avoid showing "0 minutes" of played time (#3447) 2025-06-14 13:00:19 +10:00
Stenzek
9c4e15ef1c
Host: Remove now-unused ReadCompressedResourceFile() 2025-06-14 02:30:11 +10:00
Stenzek
9ff3edd317
Qt: Disable unmaintained translations
These haven't been touched in 4+ years, and there are very few strings
still valid.

They'll still be built, so you can use them via the ini, but they will
not appear in the dropdown list.
2025-06-14 02:30:11 +10:00
Stenzek
0cf5618a05
FullscreenUI: Fix crash in JogCon controller settings 2025-06-14 02:30:11 +10:00
Stenzek
c06da318d6
FullscreenUI: Fix trophy placement on non-square covers 2025-06-14 02:30:10 +10:00
Stenzek
06da45b3f2
FullscreenUI: Polish dialogs 2025-06-14 02:30:10 +10:00
Stenzek
77457a3b1d
ImGuiManager: Switch to dynamic fonts 2025-06-14 02:30:10 +10:00
Stenzek
9c4aaca7c8
FullscreenUI: Avoid losing game list selection inbetween mouse move and popups 2025-06-13 21:42:40 +10:00
Stenzek
a2d351ca90
FullscreenUI: Improve title truncation in game grid
Use the computed text length, rather than an arbitrary size.
2025-06-13 21:26:54 +10:00
Stenzek
94b88fad23
GPU/HW: Avoid texture filter dual-source output when unnecessary
Because we all know how much mobile drivers crapping themselves
whenever anyone mutters dual-source blending.
2025-06-13 21:02:07 +10:00
Stenzek
d37048e4e4
FullscreenUI: Fix animation glitch on choice select 2025-06-13 20:54:50 +10:00
Stenzek
a8db46a6b8
GPU/HW: Use signed difference in luma_distance()
Fixes the warning, and also underflowing, since both were unsigned
it would overflow if the second was greater the first.
2025-06-13 20:54:48 +10:00
Stenzek
ac0c4544e1
GPU/HW: Work around fxc uninitialized variable false positive 2025-06-13 20:54:48 +10:00
Stenzek
824b91a1f8
GPU/HW: Split MMPX to MMPX and MMPX Enhanced 2025-06-13 16:42:32 +10:00
crashGG
98798fec66
mmpx enhance (#3443)
enhance MMPX algorithm, fix some minor graphics defects.

Update gpu_hw_shadergen.cpp
2025-06-13 16:34:54 +10:00
Stenzek
9112e38f4e
GPUDevice: Fix incorrect close call during symbol lookup
Not actually hit since all symbols should be present, but just in
case...
2025-06-13 16:29:06 +10:00
Davide Pesavento
36b869003a Qt: Use standard key sequences for main window shortcuts
Notably, this enables command+R to refresh on macOS, where F5
is not commonly used.
2025-06-11 19:51:12 +10:00
Davide Pesavento
e45c04e0dd Qt: Simplify grid layout in game summary widget 2025-06-11 19:51:12 +10:00
Davide Pesavento
5ea64810dc Qt: Consistently use QToolButton for "restore default" action 2025-06-11 19:51:12 +10:00
Davide Pesavento
7752b2bd2d Qt: Remove redundant nested layouts 2025-06-09 22:18:13 +10:00
Davide Pesavento
c7052a1903 Qt: Use restart-line icon for "restore defaults" buttons 2025-06-09 22:18:13 +10:00
Davide Pesavento
a4977f986c Qt: Add icons to buttons in patch settings widget
Similar to the cheat settings page
2025-06-09 22:18:13 +10:00
Davide Pesavento
ba78714d4f Qt: More consistent icon handling 2025-06-09 22:18:13 +10:00
Stenzek
5eb8578edc
System: Save undo state on reset 2025-06-08 17:08:52 +10:00
Stenzek
cb2dfabeeb
Qt: Backport undo load state timestamps 2025-06-08 17:08:50 +10:00
Stenzek
29e55a2e5b
FullscreenUI: Use system scroll rate and layout scale
Makes scrolling feel much more responsive, and doesn't vary
depending on the size of the window.
2025-06-08 16:50:51 +10:00
Stenzek
bd9e206165
FullscreenUI: Fix layout calculations in game grid 2025-06-08 12:04:06 +10:00
Daniel Nylander
8d2dec4632
Updated Swedish translation (#3439) 2025-06-08 12:03:56 +10:00
Anderson Cardoso
595f8d0624
Atualização Português do Brasil (#3438)
Atualizado para a última versão.
2025-06-08 12:03:43 +10:00
Stenzek
6bea16b6eb
INISettingsInterface: Only set changed if the value actually changes 2025-06-05 20:39:07 +10:00
Stenzek
5f2355510b
Qt: Only write settings ini if it is changed
Save some disk writes.
2025-06-05 20:37:57 +10:00
Stenzek
d0b7d9d027
Host: Get rid of base settings interface indirection 2025-06-05 20:37:14 +10:00
Stenzek
9cd371d5ff
SettingsInterface: Drop some unused virtual methods 2025-06-05 20:37:14 +10:00
Stenzek
59f7d0b2ff
Cheats: Fix compiler warnings 2025-06-05 19:58:45 +10:00
Stenzek
d54077e345
Achievements: Add 'Refresh Progress' option
Manually refreshes the all progress database if you have completed
unlocks on other devices/machines.
2025-06-05 19:58:45 +10:00
Stenzek
0a0379f31f
Qt: Make game list scrollbar only visible as-needed 2025-06-05 19:17:07 +10:00
Stenzek
95e085584c
Qt: Move list/grid setup to subclasses 2025-06-05 19:16:46 +10:00
Stenzek
22089e9b75
Qt: Improve game grid layout calculations
Use grid size instead of icon size/spacing.

Fixes the number of columns changing when different items are visible.

Also restores the old behaviour of dynamic scroll bar visibility.
2025-06-05 17:23:16 +10:00
Stenzek
0205f9fa04
Achievements: Update progress database unconditionally on unlock
Doesn't make sense to preserve the greater count, since it can be
reset through the RA webpage, and SC/HC seems to work fine here.
2025-06-05 13:35:04 +10:00
Stenzek
9ab2608ba0
GPU/TextureCache: Fix replacement background name length 2025-06-03 22:55:21 +10:00
Stenzek
5b40d7902a
System: Shut down GPU backend before other components
Prevents a rare crash on shutdown if OSD stats were enabled.
2025-06-03 19:06:17 +10:00
Stenzek
7fde697118
GPU/TextureCache: Add merging of adjacent palette records
So a texture spanning multiple pages can be merged at dump time.

Doing a merge instead of a union on the original palette rect
is safer, because gaps won't dump as larger textures with garbage
in the middle.
2025-06-03 19:05:22 +10:00
Stenzek
eee67a30da
GPU/HW: Fix off-by-one in sprite UV rect calculation
CheckForTexPageOverlap() makes it exclusive already.

Fixes replacements for FF8 title screen not applying in the third
texture page, because it thought it was sampling from an unwritten
area of VRAM.
2025-06-03 18:54:29 +10:00
Mark Zhuang
62c0a1e7d4
RISCV: fix flush cache for linux riscv when clang <= 18
for __builtin___clear_cache, clang-18 generates __clear_cache:
https://godbolt.org/z/K5Kx6EEhq, which is an empty function.
clang-19 can generates __riscv_flush_icache:
https://godbolt.org/z/TKe6Kh61a
2025-06-03 17:58:38 +10:00
Stenzek
d9367229e9
Achievements: Avoid duplicate tracker display 2025-06-03 17:57:29 +10:00
Stenzek
42813e8840
GameDatabase: Actually disable auto scale for DisableUpdating 2025-06-01 21:19:07 +10:00
Stenzek
ae3b295d95
FullscreenUI: Disable menu item borders by default
Looks nicer.
2025-06-01 15:10:40 +10:00
Stenzek
47405b081c
GameDatabase: Disable MSAA with DisableUpscaling 2025-06-01 14:37:16 +10:00
Stenzek
2cc0851116
GameDatabase: Fix DisableUpscaling trait with auto res 2025-06-01 14:37:16 +10:00
Stenzek
fc7934a2be
FullscreenUI: Fix nav focus loss in leaderboards
Stops hotkeys triggering when using mouse navigation.

Also fixes the first leaderboard entry not focusing on page swap.
2025-06-01 14:37:16 +10:00
Stenzek
1ad9ca7e90
FullscreenUI: Cancel pending nav on focus reset 2025-06-01 14:37:16 +10:00
Davide Pesavento
02d8e14752
ImGuiManager: Avoid deprecated std::memory_order_consume (#3433) 2025-05-31 14:27:02 +10:00
Stenzek
0a0ad3f9e2
Qt: Improve clarity of unknown dump hashes 2025-05-31 03:00:59 +10:00
Stenzek
2018eb77fe
GPU: Adjust draw timing approximation
Cache seems to be able to go up to 128x8? Constructor draws sprites that
fit exactly in the texture cache, and does so within vblank, so it can't
take too long to draw.
2025-05-30 19:26:49 +10:00
Sheng Jiang 蒋晟
b195f747cf
implement ExtConstantBitClear/Set on ExtImprovedSlide (#3430) 2025-05-28 21:42:11 +10:00
Stenzek
4164b95cb3
ImGuiManager: Make OSD message animation match notifications 2025-05-27 17:58:22 +10:00
Stenzek
6b811df6d0
CDROM: Add "Switch to Next Disc on Stop" option.
NOTE: THIS WILL NOT WORK FOR ALL GAMES.

Plenty of games don't stop the CD-ROM drive when they're expecting a
disc change, leaving us with no way of knowing when it's needed.
2025-05-27 17:10:11 +10:00
Stenzek
24cd6fa11b
Hotkeys: Add switch to previous/next disc hotkeys 2025-05-27 17:03:39 +10:00
Stenzek
d885446672
VulkanDevice: Fix manual device selection 2025-05-27 17:03:39 +10:00
Stenzek
1c54047cd1
Qt: Remove redundant vertical layout in console settings 2025-05-27 17:03:39 +10:00
Davide Pesavento
8fa6336a90
Qt: Further polish the layout of some widgets (#3427) 2025-05-27 17:02:46 +10:00
Anderson Cardoso
09a1bfdde3
Atualização Português do Brasil (#3426)
- Novas linhas adicionadas/movidas traduzidas.
- Confirmação de novas linhas de texto.
2025-05-25 13:00:16 +10:00
Víctor "IlDucci
492ff51f40
Spanish (Spain) translation update 2025/05/24 (#3425)
- Translated all the new strings.
- Minor edits on existing ones.
2025-05-25 12:59:58 +10:00
Davide Pesavento
80c9a8d399 Qt: Remove unused ui file 2025-05-24 15:57:05 +10:00
Davide Pesavento
e30c1b53ad Qt: Use grid layout for audio stretch settings dialog 2025-05-24 15:57:05 +10:00
Stenzek
f6aa3eb5b0
Qt: Update glyph ranges 2025-05-24 12:55:59 +10:00
Stenzek
64dfe003b2
Qt: Update status bar visibility on shutdown
Fixes empty widgets being displayed.
2025-05-24 12:55:44 +10:00
zkdpower
7e37849378
update the Simple-Chinese translation to latest. (#3422) 2025-05-24 12:54:37 +10:00
Davide Pesavento
c12e7fcc0b
Qt: Fix minor typos in graphics settings help text (#3421) 2025-05-23 17:08:53 +10:00
Stenzek
4d5ba3b4e6
VulkanDevice: Tidy up device/extension initialization
Single pass, avoids enabling extensions that will not be used.
2025-05-23 17:06:59 +10:00
Stenzek
32b3ade56c
VulkanDevice: Allocate N semaphores for N swap chains 2025-05-23 15:21:49 +10:00
Stenzek
cdadda85b5
Qt: Fix application exiting on fullscreen+lang change 2025-05-23 15:21:49 +10:00
Stenzek
66934cc5b8
System: Include queued frames in input latency stats 2025-05-23 15:16:15 +10:00
Stenzek
03111befb9
Settings: Correct a couple of default values 2025-05-23 15:15:58 +10:00
Stenzek
461c51ff6a
Qt: Fix updater crash while game running
Or while fullscreen.
2025-05-20 00:00:41 +10:00
Stenzek
1667179f78
Qt: Updater shouldn't confirm shutdown
Otherwise if it's cancelled we end up in a funky state.
2025-05-20 00:00:38 +10:00
Stenzek
b27e5ac26a
Qt: Fix incorrect lock parent 2025-05-19 23:52:11 +10:00
Stenzek
a422402014
CPU: Fix bgez/blez disassembly with non-standard pattern 2025-05-18 13:43:41 +10:00
Stenzek
c7ed3239b7
Qt: Use grid layout for second audio settings panel 2025-05-18 13:33:38 +10:00
Stenzek
54444475f5
Qt: Fix sizing of patch detail widgets 2025-05-18 13:33:21 +10:00
Stenzek
0ee3f235b6
Qt: Fix swapped parameter order in patch info 2025-05-18 12:47:03 +10:00
Anderson Cardoso
4748a93b8a
Atualização Português do Brasil (#3420)
Atualizaod para a última versão.
2025-05-18 12:14:47 +10:00
Stenzek
8ee0daaa17
GameDatabase: Bump cache version
Forgot to do this before.
2025-05-17 23:06:36 +10:00
Stenzek
5eedecd811
System: Swap back gamesettings->safe mode order
Fixes e.g. round texcoords warning being shown on games that need it.

But don't display CD speedup warnings if the gamedb will disable them.
2025-05-17 23:06:36 +10:00