Commit Graph

31156 Commits

Author SHA1 Message Date
321c4649a5 Merge pull request #12921 from VampireFlower/master
BreakpointWidget: Correct icon position
2024-07-10 03:25:49 +02:00
afa6e26e5d BreakpointWidget: Correct icon position
Co-Authored-By: TryTwo <10532806+TryTwo@users.noreply.github.com>
2024-07-09 15:20:56 -07:00
e6b9091ffc RetroAchievements: Skip LoadApprovedList if there are no patches
There being no active patches is by far the most common case, so let's
optimize for this case.
2024-07-09 09:55:51 +02:00
f59678842b RetroAchievements: Delay calling LoadApprovedList
0c14b0c8a7 made Dolphin load a file from
the Sys folder the first time AchievementManager::GetInstance() is
called. Because Android calls AchievementManager::GetInstance() from
setBackgroundExecutionAllowedNative, this had two negative consequences
on Android:

1. The first time setBackgroundExecutionAllowedNative gets called is
   often before directory initialization is done. Getting the path of
   the Sys folder before directory initialization is done causes a crash.
2. setBackgroundExecutionAllowedNative is called from the GUI thread,
   and we don't want file I/O on the GUI thread for performance reasons.

This change makes us load the data from the Sys folder the first time
the data is needed instead. This also saves us from having to load the
data at all when hardcore mode is inactive.
2024-07-09 09:55:07 +02:00
01a2cf8db9 Merge pull request #12919 from JosJuice/set-background-execution-allowed-crash
Fix AchievementManager::SetBackgroundExecutionAllowed crash
2024-07-08 01:13:25 +02:00
95e2064099 Fix AchievementManager::SetBackgroundExecutionAllowed crash
We mustn't use m_system when it is nullptr. This was causing Dolphin to
crash on Android whenever an activity was recreated or resumed while
emulation is running, which is super common.
2024-07-07 23:56:10 +02:00
c4db83ce09 Merge pull request #12920 from TellowKrinkle/XXHashLink
Properly link against xxhash
2024-07-07 23:49:01 +02:00
b10d62cf66 Merge pull request #12913 from LillyJadeKatrin/retroachievements-allowlist-test
RetroAchievements - Patch Allowlist Unit Test
2024-07-07 23:48:09 +02:00
3ca50f7879 Implement File::GetExePath() for FreeBSD 2024-07-07 21:09:50 +02:00
0c14b0c8a7 Add Approved Patch Allowlist for Achievements
Prototype of a system to whitelist known game patches that are allowed to be used while RetroAchievements Hardcore mode is active. ApprovedInis.txt contains known hashes for the ini files as they appear in the repo, and can be compared to the local versions of these files to ensure they have not been edited locally by the player. ApprovedInis.txt is hashed and verified similarly first, with its hash residing as a const string within AchievementManager.h, ensuring ApprovedInis and the hashes within cannot be modified without editing Dolphin's source code and recompiling completely.
2024-07-07 13:42:09 -04:00
cab6e7c12e Properly link against xxhash
Things using dolphin_find_optional_system_library need to link against the name used there or they won't work with both the system and bundled cases
2024-07-06 16:56:44 -05:00
02e1b94149 Merge pull request #12905 from LillyJadeKatrin/retroachievements-hotkey
Add Open Achievements Hotkey
2024-07-06 14:23:47 +02:00
8b427de28f Remove popups for challenges
The challenge popups have proven to be excessive and are no longer useful thanks to the achievements hotkey. Instead, those events will ask for an immediate RP-level update to the achievements dialog, which will among other things re-sort the dialog to show challenges on top faster.
2024-07-06 07:36:31 -04:00
2372b6a386 Add Open Achievements Hotkey
Adds a hotkey to pause emulation and bring up the Achievements dialog.
2024-07-06 07:36:31 -04:00
6ddfdc1483 Merge pull request #12915 from AdmiralCurtiss/sha1-span
Common/Crypto/SHA1: Use span and string_view for Context::Update()
2024-07-05 21:15:00 +02:00
2812e6116e Merge pull request #12851 from iwubcode/texture_asset_from_to_json_sampler
VideoCommon: add way to serialize Texture Asset to json, update to deserialize values independently
2024-07-05 14:36:42 -04:00
5ea3d9fca0 Merge pull request #12856 from LillyJadeKatrin/retroachievements-pause-v2
Handle Pausing in AchievementManager
2024-07-04 22:53:04 +02:00
3a63633be3 Common/Crypto/SHA1: Use span and string_view for Context::Update() 2024-07-04 22:37:07 +02:00
bf97305a60 AchievementManager: Cache Badges on Disk
Badges are saved in /User/Cache/RetroAchievements on first download and reused from there instead of redownloaded.
2024-07-04 22:12:28 +02:00
360f899f68 Common/Crypto/SHA1: Add DigestToString() utility function 2024-07-04 22:12:20 +02:00
bb4e8d0d01 Merge pull request #12888 from TryTwo/Fix_Window_Titlebar
MainWindow: Bugfix. Windows Dark mode titlebar not being set.
2024-07-04 21:13:19 +02:00
1fb4dbcea4 Merge pull request #12784 from TryTwo/PR_Frame_Advance_Fix
Frame Advance:  Fix UI update spam when continuously advancing.
2024-07-04 20:07:03 +02:00
b5ccb59feb IOS::HLE::STMImmediateDevice: Add IOCTL_STM_WRITEDMCU 2024-07-02 15:40:59 +02:00
f4c6311b91 Merge pull request #12904 from LillyJadeKatrin/retroachievements-challenge-popups
Add Messages for Challenges
2024-07-01 14:35:15 -04:00
44af48a11f Add Messages for Challenges
Starting or ending a challenge now displays a popup naming and describing the challenge along with the active icon.
2024-07-01 06:56:59 -04:00
0ab2f56258 Merge pull request #12899 from OatmealDome/release-tag-commits-ahead
ScmRevGen: Set commits ahead to zero when on a tag
2024-06-30 20:45:22 +02:00
7f0ee9dddd Merge pull request #12894 from deReeperJosh/infinity-base-numbers
IOS/USB: Use Enum for Infinity Base Positions
2024-06-30 16:04:20 +01:00
c19187f0c7 Merge pull request #12898 from AdmiralCurtiss/speedhacks
Core/PatchEngine: Remove remnants of Speedhack system
2024-06-30 15:58:51 +01:00
33081184bb Handle Pausing in AchievementManager
There are two pieces of functionality to be added here. One, we want to disallow pausing too frequently, as it may be used as an artificial slowdown. This is handled within the client, which can tell us if a pause is allowed. Two, we want to call rc_client_idle on a periodic basis so the connection with the server can be maintained even while the emulator is paused.
2024-06-30 07:05:54 -04:00
9af7772d91 JitArm64_Paired: Remove unused temp_gpr from ps_arith 2024-06-30 09:54:09 +02:00
0e58b3cfb7 JitArm64_FloatingPoint: Remove unused temp_gpr from fp_arith 2024-06-30 09:53:48 +02:00
cff37a9f4f Merge pull request #12896 from LillyJadeKatrin/retroachievements-visual-improvements
RetroAchievements - Dialog Visual Improvements
2024-06-30 01:30:34 -04:00
35f383d9b0 ScmRevGen: Set commits ahead to zero when on a tag 2024-06-29 22:59:40 -04:00
36ccbbc06e VideoCommon: add ability to serialize a texture asset metadata to json 2024-06-29 14:50:40 -05:00
1c3402502b VideoCommon: set individual texture asset filter/wrap values when loading from json 2024-06-29 14:50:40 -05:00
75a0a1ed67 VideoCommon: update texture asset to properly set near sampler state value 2024-06-29 14:50:40 -05:00
de7bf2b6a5 Move achievement dialog scrollbars to top when changing games 2024-06-29 07:02:17 -04:00
0615db9e2e Made progress bars more legible in dark mode 2024-06-29 07:02:17 -04:00
56e1c23413 Fixed floating overlapping leaderboard bucket headers 2024-06-29 07:02:17 -04:00
bef2275f31 Core/PatchEngine: Remove remnants of Speedhack system
All usages of this have been removed many years ago in cbe9c3e040
2024-06-28 17:57:53 +02:00
c46c010ae3 AchievementManager: Fix -Wignored-qualifiers warning
Fix warning on Android builder by returning bool instead of const bool.
2024-06-27 14:36:14 -07:00
cfcdaab514 IOS/USB: Use Enum for Infinity Base Positions 2024-06-27 20:57:27 +01:00
233ea58446 Merge pull request #12877 from LillyJadeKatrin/retroachievements-auto-update
Update Achievement List when Rich Presence Updates
2024-06-27 20:30:01 +02:00
7ffcde3ab3 Fixed misaligned borders on unlocked achievement badges 2024-06-26 22:41:39 -04:00
16e868b46a Removed large empty space at the bottom of achievement/leaderboard lists 2024-06-26 22:41:11 -04:00
f29fe15d77 FrameAdvance: Fix continuous frame advancing while the debug UI is open. Blocks signals from being spammed to update the UI. 2024-06-26 16:19:03 -07:00
bc67fc97c3 Revert "Audit uses of IsRunning and GetState"
This reverts commit 72cf2bdb87.

SYSCONF settings are getting cleared when they shouldn't be. Let's
revert the change until I get proper time to figure out why it's broken.
2024-06-26 20:36:46 +02:00
1a33e28452 Update Achievement Sort and Progress on RP
Whenever a request to update the Rich Presence comes in, typically every ten seconds, the Achievement Progress Widget will update the sort order of the achievements and all of their measured values.
2024-06-25 23:05:56 -04:00
9c432e960b AboutDialog: Update copyright year to 2024 2024-06-24 15:06:54 -04:00
f8f117e599 GeneralPane: Update "Beta" auto update track to "Releases" 2024-06-24 15:06:37 -04:00