Commit Graph
38791 Commits
Author SHA1 Message Date
Jordan Woyak a796486625 QtUtils: Add ShowFileInFolder function and make GameList right-click menu actions use it. 2026-04-24 18:09:39 -05:00
Dentomologist f67d80c7c1 VideoConfig: Rename StereoMode::TAB to StereoMode::TopAndBottom 2026-04-24 11:19:11 -07:00
Dentomologist 655ee270e7 VideoConfig: Rename StereoMode::SBS to StereoMode::SideBySide 2026-04-23 12:32:26 -07:00
Dentomologist 59eef9d4d8 HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_TAB
Rename HK_TOGGLE_STEREO_TAB to HK_TOGGLE_STEREO_TOP_AND_BOTTOM.
2026-04-23 12:32:26 -07:00
Dentomologist 8b743dfe9c HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_SBS
Rename HK_TOGGLE_STEREO_SBS to HK_TOGGLE_STEREO_SIDE_BY_SIDE.
2026-04-23 12:32:26 -07:00
Dentomologist 39240edc2a GeckoCodeWidget: Add Enable/Disable All button 2026-04-20 15:15:56 -07:00
Dentomologist 0d3ccfada5 ARCodeWidget: Add Enable/Disable All button 2026-04-20 15:15:56 -07:00
JosJuice a992245aa2 VolumeVerifier: Add extra validity checks for ticket and TMD
This fixes VolumeVerifier potentially calling TMDReader::GetIOSId for
invalid TMDs.

VolumeVerifier also has a call to TMDReader::GetContent that doesn't
check if the TMD is valid. In practice, this can't get called with an
invalid TMD because the previous commit made it so GetContentOffsets
returns an empty vector if the TMD is invalid, but I've added a check
inside TMDReader::GetContent just to be on the safe side.

I also made VolumeVerifier show a specifically worded problem if the
ticket or TMD is invalid. Before, invalid TMDs in Wii discs and WADs
and invalid tickets in WADs would show a more generic problem.
2026-04-20 20:26:31 +02:00
JosJuice 97fff931fd DiscIO: Add extra IsValid checks for VolumeWAD::m_tmd
Plus an IsValid check inside TMDReader::GetContents, which is called by
VolumeWAD.

Fixes https://bugs.dolphin-emu.org/issues/14032.
2026-04-20 20:18:36 +02:00
Link Mauve fc47091592 Remove GLX support
EGL is the de-facto GL context initialization API, including on X11
where it provides many additional features over GLX.

I’m planning on adding support for selecting the GPU (adapter in
Dolphin-speak) also to OpenGL, similarly to the Vulkan backend, and that
will require EGL, so let’s remove the legacy API first.
2026-04-20 16:19:45 +02:00
Dr. Dystopia 9ae9c12938 Replace find(x) != npos with contains(x) - Core 2026-04-20 09:36:08 +02:00
Elyas Hue fb4ff3e51b VideoCommon: Added an option to showcase internal resolution, EFB width x height as screen overlay. Option to turn it on is a checkbox in screen on the OSD settings, in debug. This supports enhancements. 2026-04-19 23:19:21 +02:00
Jordan Woyak 914f5c5621 Merge pull request #14547 from JosJuice/page-table-fastmem-setting-gui
Add page table fastmem to Debug/JIT settings
2026-04-19 11:21:26 -05:00
Dentomologist e235cebb01 Merge pull request #14604 from cristian64/fusion_qgroupbox_style_qt660
DolphinQt: Use custom style for `QGroupBox` only with Qt 6.6.0+.
2026-04-18 14:17:35 -07:00
JosJuice 74bb80544e Merge pull request #14565 from SuperSamus/cpp-argument-move-reference
Improve usage of std::move and const references parameters
2026-04-18 21:02:30 +02:00
Jordan Woyak ff57599e67 StringUtil: Make UTF16ToUTF8 and UTF8ToUTF16 use custom encoding/decoding implementation to eliminate usage of deprecated std::wstring_convert. 2026-04-18 13:06:17 -05:00
JosJuice cc01a60347 GCAdapter: Automatically start and stop thread
This keeps the logic encapsulated inside GCAdapter.cpp so callers don't
have to think about it.
2026-04-18 19:40:25 +02:00
Adam Scott a5059cbca8 Add screen crop feature 2026-04-18 13:08:41 -04:00
cristian64 6059045c59 Core: Address -Wrange-loop-construct warning.
The warning can be seen since 1f72403ec7 when GCC 13.3.0 is used:

```counterexample
[1540/1898] Building CXX object Source/Core/VideoCommon/CMakeFiles/videocommon.dir/TextureCacheBase.cpp.o
/w/dolphin/Source/Core/VideoCommon/TextureCacheBase.cpp: In member function 'void TextureCacheBase::ApplyMaterialToCacheEntry(const VideoCommon::MaterialResource&, TCacheEntry*)':
/w/dolphin/Source/Core/VideoCommon/TextureCacheBase.cpp:3136:19: warning: loop variable 'texture' creates a copy from type 'const VideoCommon::MaterialResource::TextureLikeReference' [-Wrange-loop-construct]
 3136 |   for (const auto texture : material_data->GetTextures())
      |                   ^~~~~~~
/w/dolphin/Source/Core/VideoCommon/TextureCacheBase.cpp:3136:19: note: use reference type to prevent copying
 3136 |   for (const auto texture : material_data->GetTextures())
      |                   ^~~~~~~
      |                   &
```
2026-04-18 10:23:55 +01:00
cristian64 e6a11f667d DolphinQt: Use custom style for QGroupBox only with Qt 6.6.0+.
This is a follow-up to 3e788399b6 (#14153), where a custom
style for `QGroupBox` widgets was introduced when the Fusion style is
used.

However, it was overlooked that the custom QSS does not get along well
with Qt versions older than 6.6.0; on Windows, Qt 6.5.1 is used.

| With Qt 6.5.3 | With Qt 6.11.0 |
| ------------- | -------------- |
| <img alt="Dolphin with Qt 6.5.3" title="Dolphin with Qt 6.5.3" src="https://github.com/user-attachments/assets/9d341eef-0438-44c0-b341-8d0a53d9eb09" /> | <img alt="Dolphin with Qt 6.11.0" title="Dolphin with Qt 6.11.0" src="https://github.com/user-attachments/assets/1bc793d2-c958-413b-b99c-51d064104a75" /> |

Compile checks have been added now to only apply the custom style if
Qt 6.6.0 (or newer) is used.
2026-04-18 10:04:44 +01:00
JosJuice 4aaecbb148 Android: Add page table fastmem to Debug settings 2026-04-18 08:42:34 +02:00
JosJuice 97a9c46a9d DolphinQt: Add page table fastmem to JIT menu
This can be useful for experimenting with how a game behaves with and
without page table fastmem. As with everything in the JIT menu, this is
only available if Dolphin's debugger is enabled.

I didn't add this in 989a95a when I added the setting itself because we
were under a string freeze for Dolphin 2603a at the time.
2026-04-18 08:42:34 +02:00
Jordan Woyak cc5601d7db Merge pull request #14588 from jordan-woyak/resources-icon-assert
DolphinQt/Resources: ERROR_LOG instead of ASSERT when LoadNamedIcon fails.
2026-04-17 12:25:54 -05:00
JosJuice 6d43b55b27 Merge pull request #9952 from Dentomologist/wiimotereal_remove_unused_isready_functions
WiimoteReal: Remove unused IsReady and IsScannerReady functions
2026-04-17 19:10:09 +02:00
Martino Fontana 95dec13203 Improve usage of std::move and const references parameters
Accomplished using `run-clang-tidy` with `performance-move-const-arg,performance-unnecessary-value-param,modernize-pass-by-value`.

Changed arguments to const references, removed them where inappropriate (e.g. sink parameters). Same with std::move.

Manually reviewed each change to make sure that it makes sense, and do something more appropriate if possible.
2026-04-17 12:39:46 +02:00
OatmealDome 0cdb855434 Merge pull request #14567 from Simonx22/android/convert-wiimoteadapter-to-kotlin
Android: Convert WiimoteAdapter to Kotlin
2026-04-16 20:25:19 -04:00
OatmealDome 995b5b2833 Merge pull request #14568 from Simonx22/android/convert-gcadapter-to-kotlin
Android: Convert GCAdapter to Kotlin
2026-04-16 20:25:09 -04:00
Simonx22 301ca5fcb8 Android: Convert GameFileCacheManager to Kotlin 2026-04-16 16:46:24 -04:00
Dentomologist 518f5f458f HacksWidget: Merge BoundingBox disabled tooltip into BalloonTip
When a backend doesn't support BoundingBox, show that information in the
BalloonTip instead of spawning a separate tooltip.
2026-04-16 13:39:52 -07:00
Jordan Woyak 51f0ad0531 Merge pull request #14153 from cristian64/fusion_qgroupbox_style
DolphinQt: Custom style for `QGroupBox` in Fusion.
2026-04-16 15:32:24 -05:00
Dentomologist b35223e0f3 HacksWidget: Merge GPU Texture Decoding disabled tooltip with BalloonTip
When GPU Texture Decoding is disabled, explain why in the BalloonTip
instead of spawning a separate tooltip.
2026-04-16 13:29:46 -07:00
Dentomologist 7d207f7248 WiimoteReal: Remove unused IsReady and IsScannerReady functions
The only call of `IsScannerReady` was removed by
81be0001a9, and most of the `IsReady`
functions were only called by `IsScannerReady`.

The one exception was in `WiimoteScannerLinux`, which is now a private
function instead of inheriting from the one in `WiimoteScannerBackend`.
2026-04-15 14:25:50 -07:00
Jordan Woyak 81be0001a9 DolphinQt: Remove the "supported Bluetooth device could not be found" label from ControllersPane.
It just confuses DolphinBar users and isn't relevant these days now that Windows users do not use alternative Bluetooth stacks.
2026-04-14 13:25:44 -05:00
Jordan Woyak fb607239e5 DolphinQt/GCMemcardManager: Don't unnecessarily repopulate the slot table when switching between A <-> B. 2026-04-14 11:05:06 -05:00
Jordan Woyak 52ef8d3f8d DolphinQt/GCMemcardManager: Set ScrollMode::ScrollPerPixel to make scrolling behavior less annoying. 2026-04-14 11:04:03 -05:00
TryTwo 158b8cfd7c Debugger: Register Widget bug fix. Block updates when changing column data type. 2026-04-13 23:46:44 -07:00
Jordan Woyak 46866f6fa2 DolphinQt/Resources: ERROR_LOG instead of ASSERT when LoadNamedIcon fails. 2026-04-13 20:22:31 -05:00
Dentomologist 908ddf3593 HacksWidget: Move function declarations to match convention
Move function declarations before variable declarations.
2026-04-13 15:45:06 -07:00
JMC47 6871428a81 Merge pull request #14587 from SuperSamus/arbitrary-mipmap-gpu-decoding-checkbox-fix
VideoCommon: Fixup #14336
2026-04-13 17:56:39 -04:00
Martino Fontana 8971b3b67a VideoCommon: Fixup #14336
whoops

Closes https://bugs.dolphin-emu.org/issues/14024
2026-04-13 22:47:52 +02:00
JMC47 c51d285264 Merge pull request #14560 from jordan-woyak/gbplayer-improvements
HW/GBPlayer: Improvements.
2026-04-13 14:45:16 -04:00
Jordan Woyak b62bfe4b30 Merge pull request #14336 from SuperSamus/arbitrary-mipmap-disables-gpu-decoding
VideoCommon: Invert interaction between Arbitrary Mipmap Detection and GPU Texture Decoding (the former disables the latter)
2026-04-12 20:55:22 -05:00
Jordan Woyak bfb121ef72 HW/GBACore: Remove RunFrame function. 2026-04-12 15:06:50 -05:00
Jordan Woyak 571d166c7c HW/GBPlayer: Improvements.
Wait for Control command to power up.
Removed audio resampling.
Better scanline IRQ timing.
Run mGBA based on clock cycles rather than frame times.
2026-04-12 15:06:50 -05:00
Jordan Woyak cba86c42f5 HW/GBACore: Add GetCore getter. 2026-04-12 15:06:30 -05:00
Sintendo 219eab74f2 DSPCore: Remove m_init_hax member 2026-04-12 19:21:51 +02:00
Jordan Woyak 33f62b0f9f Merge pull request #14500 from Sintendo/span2
Replace `const std::vector&` arguments with `std::span`
2026-04-11 14:55:41 -05:00
Jordan Woyak 23e8a3c569 Core/PowerPC: Minor code cleanup to CheckExternalExceptions function. 2026-04-10 14:57:52 -05:00
JosJuice c0e0b685f3 Merge pull request #14493 from LillyJadeKatrin/retroachievements-resident-evil-fix
Remove AchievementManager ChangeDisc call from Eject
2026-04-09 17:22:52 +02:00
Simonx22 e982aeacad Android: Convert GCAdapter to Kotlin 2026-04-06 19:56:27 -04:00