summaryrefslogtreecommitdiff
path: root/Source/Android
AgeCommit message (Collapse)Author
2025-11-21Android: Remove CompletableFutureSimonx22
We only use this class in one in one single function since its introduction with 12aa1071cbb30269cd6526cfbbcd3c4143d584ac in 2021. If we do need it elsewhere we can always bring it back.
2025-11-19Android: Convert Log to KotlinSimonx22
2025-11-19Merge pull request #14111 from Simonx22/android/native-library-kotlinJordan Woyak
Android: Convert NativeLibrary to Kotlin
2025-11-18RetroAchievements - Android login callbackLillyJadeKatrin
Modify the RetroAchievements login code in Android to pass in a callback, pop a message if login fails, close the login box if it succeeds.
2025-11-18Android: Use Android's HandlerThread in ControllerInterface instead of our ↵Simonx22
own implementation
2025-11-18Merge pull request #14136 from Simonx22/android/compress-callback-kotlinJordan Woyak
Android: Convert CompressCallback to Kotlin
2025-11-17Android: Update Kotlin serialization pluginSimonx22
I forgot to update this, which broke installing GPU drivers Co-Authored-By: OatmealDome <OatmealDome@users.noreply.github.com>
2025-11-17Android: Convert CompressCallback to KotlinSimonx22
2025-11-17Merge pull request #14131 from Simonx22/android/stereo-float-settingsJordan Woyak
Android: Convert stereo settings to floats
2025-11-17Android: Convert BooleanSupplier to KotlinSimonx22
2025-11-17Android: Convert stereo settings to floats to match C++ definitionsSimonx22
These settings were recently changed with 113c86f1b4661c7e300d3867cd26ed26b2640f2a to be floats instead of ints. This commit also changes the Android UI to use the direct convergence value instead of the percentage to match the Qt UI.
2025-11-17Merge pull request #14106 from Simonx22/android/dependency-updates-11102544758JosJuice
Android: Update dependencies
2025-11-17Merge pull request #14097 from Simonx22/android/network-helper-kotlinJosJuice
Android: Convert NetworkHelper to Kotlin
2025-11-16Android Achievements - Hardcore disablesLillyJadeKatrin
Disables state loading and emulation speeds below 100% when RetroAchievements hardcore mode is enabled.
2025-11-16Add login to achievement settingsLillyJadeKatrin
2025-11-16Add Achievements submenu to Android settingsLillyJadeKatrin
2025-11-16Merge pull request #14023 from JosJuice/android-overlay-okJosJuice
Android: Treat EmulationActivity dialog dismiss the same as OK
2025-11-16Merge pull request #13689 from JosJuice/lock-core-any-threadJosJuice
Core: Let any thread call previously host-thread-only functions
2025-11-16Android: Convert NativeLibrary to KotlinSimonx22
2025-11-16Android: Ship Sys/Resources/JosJuice
We were previously excluding this folder from Android builds because it didn't contain any files that were used on Android. However, we now have an OSD font file that we do want to use on Android, and there's also a few PNG files that will be needed by the RetroAchievements integration. In terms of file size, this is what gets added: OSD font: 48.1 KiB RetroAchievements graphics: 3.5 KiB Unused graphics: 116.8 KiB We're still excluding Sys/Themes/, which is 1.1 MiB and entirely unused.
2025-11-16Merge pull request #14104 from Simonx22/android/remove-extract-native-libsJosJuice
Android: Remove deprecated extractNativeLibs manifest flag
2025-11-16Android: Rate limit refreshInputOverlay calls from slidersJosJuice
Sliders can trigger change listeners very rapidly, so let's add some rate limiting so dragging a slider doesn't cause the whole UI to lag. (Now the input overlay looks laggy when dragging a slider, though.)
2025-11-16Android: Treat EmulationActivity dialog dismiss the same as OKJosJuice
In the dialog where you can choose what controller the input overlay should be controlling, there's an OK button. If you change controller but don't press OK, your selection will be saved, but the input overlay won't refresh to show the new controller unless you perform some other action that would cause it to refresh. This is not good UX. This commit changes the behavior not only of this dialog but also other dialogs spawned by EmulationActivity so that everything is properly updated when dismissing a dialog, as if you had pressed OK.
2025-11-16Merge pull request #13992 from JosJuice/android-register-for-activity-resultJosJuice
Android: Replace deprecated startActivityForResult
2025-11-12Android: Remove unused BiMap classSimonx22
2025-11-12Android: Update Gradle WrapperSimonx22
2025-11-11Merge pull request #14098 from Simonx22/android/dolphin-application-kotlinJMC47
Android: Convert DolphinApplication to Kotlin
2025-11-11Android: Update dependenciesSimonx22
Note: This also updates Kotlin to 2.2.21 which requires small adjustments in our Kotlin code.
2025-11-11Android: Convert NetworkHelper to KotlinSimonx22
2025-11-11Merge pull request #14103 from Simonx22/android/agp-8.11.0-to-8.13.0Jordan Woyak
Android: Upgrade AGP dependency from 8.11.0 to 8.13.0
2025-11-11Android: Replace deprecated startActivityForResultJosJuice
2025-11-11Android: Remove deprecated extractNativeLibs manifest flagSimonx22
extractNativeLibs is deprecated. Native lib packaging is already controlled by packaging.jniLibs.useLegacyPackaging (which we already have), so the manifest override is unnecessary.
2025-11-11Android: Upgrade AGP dependency from 8.11.0 to 8.13.0Simonx22
2025-11-10Core: Remove IsHostThreadJosJuice
The core no longer cares which thread is the host thread. Cleaning up Android's HostThreadLock is left for another PR, in part because the HostThreadLock in NativeConfig.cpp still serves a purpose, and in part to make any issues easier to bisect.
2025-11-10Android: Keep main toolbar pinned on game gridSimonx22
Prevents the version/build bar from sliding behind the status bar when scrolling so the time and build info remain readable instead of overlapping.
2025-11-09Android: Convert DolphinApplication to KotlinSimonx22
2025-11-09Android: Prevent dismissing the System Update dialog by tapping outsideSimonx22
Tapping outside the System Update dialog would previously close it and leave the update in a partially canceled, inconsistent state. This change disables outside-touch dismissal to avoid accidental interruptions and ensure the process completes cleanly.
2025-11-08Init achievement manager in Android startupLillyJadeKatrin
2025-11-08Android: Clear listener in SwitchSettingViewHolderJosJuice
If bind was called more than once for a SwitchSettingViewHolder, the line `binding.settingSwitch.isChecked = setting.isChecked` would accidentally trigger the listener registered during the previous bind call.
2025-11-08Merge pull request #14047 from Simonx22/reset-all-dolphin-settings-androidOatmealDome
Android: Add Reset Dolphin Settings functionality
2025-11-08Merge pull request #14077 from Simonx22/android-alert-message-kotlinOatmealDome
Android: Convert AlertMessage dialog to Kotlin
2025-11-08Merge pull request #14086 from Simonx22/android/use-native-analyticsOatmealDome
Android: Use the shared HTTP analytics backend
2025-11-08Android: Convert AlertMessage dialog to KotlinSimonx22
2025-11-08Android: Use the shared HTTP analytics backendSimonx22
We can now route Android analytics through Common::HttpAnalyticsBackend, drop the Volley sender, and keep the JNI layer limited to only transfer metadata since https://bugs.dolphin-emu.org/issues/11772 has been fixed.
2025-11-08Merge pull request #13939 from ↵JosJuice
Dentomologist/logging_avoid_overwriting_debug_verbosity_in_release_builds Logging: Don't overwrite LDEBUG level in Release builds
2025-11-07Android: Replace Action1 helper with Kotlin lambdaSimonx22
2025-11-02Android: Add Reset Dolphin Settings functionalitySimonx22
2025-11-01Merge pull request #13655 from JosJuice/android-always-expand-sheetsJosJuice
Android: Expand bottom sheets on devices with touch too
2025-11-01Merge pull request #14048 from Simonx22/android-instant-settings-savingJosJuice
Android: Save settings instantly after edits
2025-10-30Android: Expand bottom sheets on devices with touch tooJosJuice
In a few places in Dolphin, we're using BottomSheetDialogFragments. These unhelpfully tend to start out in a "collapsed" state when in landscape mode (presumably depending on factors like screen size). The user then has to manually expand them before they can meaningfully interact with them. We've been automatically setting BottomSheetDialogFragments to the expanded state if the device Dolphin is running on doesn't support touch, since with d-pad navigation it's impossible to expand these sheets. But I think we should set them to expanded on devices that support touch too. I haven't encountered a single case where you can do anything useful with any of Dolphin's BottomSheetDialogFragments while they're collapsed, so the user always has to expand sheets manually if they start out collapsed. And just because a device supports touch doesn't necessarily mean you're interacting with it through the touch screen right now - you could be using a gamepad, for instance.