summaryrefslogtreecommitdiff
path: root/Source/Android
AgeCommit message (Collapse)Author
2025-04-19Prevent android generating duplicate analytics eventsShawn Hoffman
dolphin-start event was being generated twice for the normal end-user case, as can be seen in analytics data for some years. The problem occured when: * Android reaped the process hosting the dolphin activity (e.g. for power/memory saving). and * Dolphin activity was in "stopped" state for > 6 hours before being switched back to. Under above conditions, both calls to ReportStartToAnalytics would be performed, as dolphin thought it was being launched anew, and also thought it had been asleep for > 6 hours. fixes https://bugs.dolphin-emu.org/issues/13675
2025-04-19Android: Show time played in game detailsJosJuice
Unlike in DolphinQt, there isn't much space to show playtimes directly in the game list, so I've put it in the game details dialog instead.
2025-04-19Android: Create toggle for enabling/disabling time trackingJosJuice
2025-04-01Improve Performance of Granular Buffering + User Adjustable Buffer SizeSam Belliveau
2025-03-28Merge pull request #13434 from JosJuice/android-non-blocking-input-detectionJMC47
Android: Don't use separate thread for MotionAlertDialog
2025-03-27Android/Input: Fix a crash when mapping wii remote extensions.Jordan Woyak
2025-03-23Android: Show message when trying to map disconnected deviceJosJuice
Having the MotionAlertDialog immediately close is confusing for users. Let's show a message to tell them what went wrong.
2025-03-23Android: Don't use separate thread for MotionAlertDialogJosJuice
This is an Android continuation of bc95c00. We now call InputDetector::Update immediately after receiving an input event from Android instead of periodically calling it in a sleep loop. This improves detection of very short inputs, which are especially likely to occur for volume buttons on phones (or at least on my phone) if you don't intentionally keep them held down.
2025-03-23Merge pull request #13311 from ↵JMC47
iwubcode/dynamic_input_textures_reduce_image_writes Core / DolphinQt / InputCommon: reduce the number disk writes when using DynamicInputTextures
2025-03-22Core / DolphinQt / InputCommon: reduce the number disk writes when using ↵iwubcode
DynamicInputTextures
2025-03-15InputCommon/ControllerEmu: Break out functionality of EmulatedControllerJordan Woyak
to eliminate redundant unused members in Wii Remote extension objects.
2025-03-15Merge pull request #12866 from JosJuice/android-log-types-sortingJosJuice
Android: Replace log type names map with array
2025-03-15Merge pull request #13271 from dreamsyntax/gradle-wrapperJosJuice
Android: Upgrade AGP & Gradle
2025-03-14AudioCommon: Added Granular SynthesisSam Belliveau
2025-03-04Android: Upgrade AGP & Gradledreamsyntax
AGP 8.2.0 -> 8.9.0 Gradle and wrapper to 8.11.1 Baseline Profile plugin to 1.3.3
2025-02-20Merge pull request #13326 from nlebeck/taskviewmodel-mustrestartappJordan Woyak
Eliminate TaskViewModel's `mustRestartApp` field
2025-02-12DolphinQt: Rename the pack/unpack SD Card buttons.Jordan Woyak
2025-02-02Eliminate TaskViewModel's mustRestartApp fieldNiel Lebeck
Instead of having UserDataImportWarningDialog set an `onResultDismiss` callback that examines `mustRestartApp`, and having UserDataActivity set `mustRestartApp`, just have UserDataActivity set the callback directly. This approach is no more data-race-y than the previous approach, and it simplifies the code. (The behavior of restarting the app when the task finishes is specific to the user data import flow, and there is no reason for TaskViewModel to be directly aware of it.)
2025-01-12Clean up CRLF line endingsDaniel Peukert
2025-01-10Merge pull request #13030 from JosJuice/android-wait-for-surface-in-runAdmiral H. Curtiss
Android: Wait for surface in Run
2025-01-10Merge pull request #12864 from JosJuice/android-window-compatAdmiral H. Curtiss
Android: Replace deprecated setSystemUiVisibility
2025-01-08Merge pull request #13228 from OatmealDome/fix-curl-2Admiral H. Curtiss
curl: Update to 8.11.1 and use CMake to configure
2025-01-07GeckoCodeConfig: Remove HTTPS workaround for AndroidOatmealDome
2024-12-31Merge pull request #13235 from Gamer64ytb/vsync-fixAdmiral H. Curtiss
Android: Fix VSync option not working
2024-12-26Merge pull request #13116 from mitaclaw/ranges-modernization-8-trivial-ofJMC47
Ranges Algorithms Modernization - Of
2024-12-24Android: Fix VSync option not workingGamer64
It happened due to a typo from SECTION_GFX_HARDWARE
2024-12-20Merge pull request #13091 from mitaclaw/ranges-modernization-2-returnsJMC47
Ranges Algorithms Modernization - Return
2024-12-15Modernize `std::none_of` with rangesmitaclaw
In JitRegCache.cpp, the lambda predicate were replaced by a pointer to member function because ranges algorithms are able to invoke those. In ConvertDialog.cpp, the `std::mem_fn` helper was removed because ranges algorithms are able to handle pointers to member functions as predicates. In BoundingBox.cpp, the lambda predicate was returning the bool element unchanged, so `std::identity` was a better fit.
2024-11-15GDBStub: Signal Breakpoint Changes To Hostmitaclaw
2024-11-03VideoBackendBase: Clarify function nameDentomologist
Rename GetDefaultBackendName to GetDefaultBackendConfigName to distinguish it from the display name.
2024-10-30Merge pull request #13147 from mitaclaw/jit-block-table-model-fixJMC47
JitBlockTableModel: Catch All Block Invalidating Events (I Hope)
2024-10-28Merge pull request #13140 from dreamsyntax/skip-efb-default-flipJMC47
GraphicsSettings: EFBAccessEnable=false by default
2024-10-23Host: Rename `JitCacheInvalidation`mitaclaw
There are two hard problems in computer science...
2024-10-22GraphicsSettings: EFBAccessEnable=false by defaultdreamsyntax
Makes Graphics -> Hacks -> Skip EFB Access from CPU enabled by default. Some GPU drivers stall when EFB access occurs in games where EFB is not used. Most games that require this setting set to 'true' already have this defined in their game inis.
2024-10-19DolphinQt: JIT Widget Refreshmitaclaw
Fulfilling a certain six-year-old todo.
2024-10-18JitCache: Add WipeBlockProfilingData Functionmitaclaw
Accessible from DolphinQt and Android.
2024-10-17Simplify `std::remove` with `std::erase`mitaclaw
`std::erase` is a replacement for the remove-erase idiom. Changes to `OpenModeToAndroid` inadvertently revealed that the prior implementation had UB (potentially deleting the end iterator). This is now fixed.
2024-10-14Android: Add vsync settingJosJuice
Recently we have been getting some requests to make the existing vsync setting available in the Android GUI: https://bugs.dolphin-emu.org/issues/13650 https://forums.dolphin-emu.org/Thread-vsync-toggle-for-android I don't quite understand why enabling the vsync setting is helpful when Android already enforces vsync, but I guess having the option available doesn't hurt. I'm putting the setting under Advanced, unlike in DolphinQt, since there's no clear reason why the typical user would want to use this setting.
2024-10-13Merge pull request #13069 from JosJuice/android-real-balance-boardJMC47
Android: Add the "Real Balance Board" setting
2024-10-12Merge pull request #13079 from JosJuice/android-16kTilka
Android: Add 16 KiB page size support
2024-10-12Merge pull request #13080 from JosJuice/androidx-edge-to-edgeTilka
Android: Use enableEdgeToEdge
2024-10-04Partially revert "Revert "Audit uses of IsRunning and GetState""JosJuice
This reverts the revert commit bc67fc97c39628c76a4dbca411b0e8a9bfaf726a, except for the changes in BaseConfigLoader.cpp, which caused the bug that made us revert 72cf2bdb87f09deff22e1085de3290126aa4ad05. PR 12917 contains an improved change to BaseConfigLoader.cpp, which can be merged (or rejected) independently. A few changes have also been made based on review comments.
2024-09-28Android: Use enableEdgeToEdgeJosJuice
Dolphin has been using edge-to-edge rendering for a little while now, but it has required a bit of manual work. Now that edge-to-edge is becoming something expected of apps in Android 15, there's a nicer API we can use. Tested on Android 8, 11 and 13, with no changes in behavior noted.
2024-09-28Android: Add 16 KiB page size supportJosJuice
So far, Dolphin hasn't been able to run on Android devices that use a 16 KiB page size. 16 KiB page sizes are a very new Android feature that no phones have shipped with so far, so we're still compatible with the phones that exist out there, but let's get this fixed before phones start shipping with 16 KiB page sizes. Because I couldn't get Android Studio's emulator to work, I haven't been able to confirm that this change actually makes Dolphin fully compatible with devices that use a 16 KiB page size. But I have confirmed that this doesn't break anything on a regular 4 KiB page size device.
2024-09-22StringUtil: Remove `JoinStrings`mitaclaw
With 12 uses of `JoinStrings` in the codebase vs 36 uses of `fmt::join`, fmtlib's range adapter for string concatenation with delimiters is clearly the preferred option.
2024-09-22Android: Add the "Real Balance Board" settingJosJuice
2024-08-21Android: Wait for surface in RunJosJuice
When we boot the core, it needs to have a valid surface to draw graphics to. Our Kotlin code does wait for a valid surface to exist before it calls NativeLibrary.Run, but there's a chance for the surface to be deleted before Run locks s_surface_lock. If that happens, the core boots without a valid surface, which presumably would cause a crash. (I haven't been able to reproduce the problem myself.)
2024-08-18Merge pull request #12863 from JosJuice/android-gamepad-sensorsTilka
Android: Fix and enable input device sensor input
2024-08-15Use 'contains' methodmitaclaw
2024-07-30Merge pull request #12965 from JosJuice/android-ndk-27OatmealDome
Android: Update to NDK 27.0.12077973