summaryrefslogtreecommitdiff
path: root/Source/Android/app/src
AgeCommit message (Collapse)Author
2021-10-02DolphinQt/Android: Add warning when converting NKit filesJosJuice
Yes, that's right! It's time to add even more NKit warnings, because users still don't understand what NKit is or how it works! More specifically, some users seem to be under the impression that converting an NKit file to for instance RVZ using Dolphin's convert feature will result in a normal RVZ file, when it in fact results in an NKit RVZ file (since NKit is not a container format in the sense that GCZ/WIA/RVZ/WBFS/CISO is, but rather a kind of trimmed ISO). I can hardly blame users for not knowing this, because it's not intuitive unless you know the technical details of how NKit works.
2021-09-21Android: Remove the EmulationState classJosJuice
The purpose of this class was to keep track of state which the emulation core was already keeping track of. This is rather risky - if we update the state of one of the two without updating the other, the two become out of sync, leading to some rather confusing problems. This duplicated state was removed from EmulationState in the previous commits, so now there isn't much left in the class. Might as well move its members directly into EmulationFragment.
2021-09-21Android: Remove synchronized keywords from EmulationStateJosJuice
These methods are only being called from the GUI thread anyway...
2021-09-21Android: Don't rely on onPause for pausing before destroying surfaceJosJuice
Fixes a crash which was uncovered (or just made more likely?) by the previous commit.
2021-09-21Android: Remove state from EmulationStateJosJuice
2021-09-21Android: Remove mSurface from EmulationStateJosJuice
2021-09-18Android: Show confirmation dialog for clearing game settingsJosJuice
2021-09-16Android: Add button for opening system file managerJosJuice
Apparently some phones (at least some from Samsung) don't expose the system file manager in the system settings despite it being the only on-device file manager that can open app-specific directories...
2021-09-16Android: Add a "user data" screenJosJuice
To make it clearer for users where Dolphin is storing user data, now that there's more than one possible place.
2021-09-16Android: Enable backup of external app-specific directoryJosJuice
2021-09-16Android: Increment targetSdkVersion to 30 (Android 11)JosJuice
This enables scoped storage for new Dolphin installs on Android 11 and up (along with a few other changes in behavior which unlike scoped storage are uncontroversial). Existing installs are unaffected. We have to do this in order to be able to release updates on Google Play from November 2021 and on.
2021-09-16Android: Show a dialog for scoped storage incompatible settingsJosJuice
The following settings are currently not SAF compatible, and might never be due to the performance impact: Dump Path Load Path Resource Pack Path Wii NAND Root This commit makes us show a message to the user if they try to change one of these settings while scoped storage is active. I don't want to entirely remove the settings from being listed in the settings activity, because it's important that the user is able to reset them if they were set to something custom in a previous version of Dolphin.
2021-09-16Android: Use app-specific directory as User folder by defaultJosJuice
This lets Dolphin function without the user granting access to external storage. We need this for scoped storage compatibility. When scoped storage is not active, we still ask for permission to access external storage the first time the app is started so that we can use the existing dolphin-emu folder if there is one. But if it doesn't exist, or the user denies the permission, or scoped storage is active, the app-specific directory will be used instead.
2021-09-16Android: Add save button to cheats activityJosJuice
By request. Matches the settings activity.
2021-09-16Android: Allow $ line when entering cheat codeJosJuice
Port of cda442d.
2021-09-16Android: Add Gecko code downloadingJosJuice
2021-09-16Android: Fix CheatsActivity d-pad navigationJosJuice
Special shoutout to Android for not having RTL compatible variants of nextFocusRight and nextFocusLeft. Ideally we would have some way to block the user from using the d-pad to switch between the two panes when in portrait mode, or make the list pane act as if it's to the left of the details pane rather than the right when the details pane is open, but I don't know of a good way to do this. SlidingPaneLayout doesn't really seem to have been implemented with d-pad navigation in mind. Thankfully, landscape is the most important use case for gamepads.
2021-09-16Android: Show warning when Enable Cheats is offJosJuice
2021-09-16Android: Add the ability to delete cheatsJosJuice
2021-09-16Android: Add the ability to add cheatsJosJuice
2021-09-16Android: Add headers to cheat listJosJuice
2021-09-16Android: Scroll to field with error when error occursJosJuice
2021-09-16Android: Add creator and notes fields for Gecko codesJosJuice
2021-09-16Android: Allow viewing/editing the actual codesJosJuice
2021-09-16Android: Update cheat list when a cheat is editedJosJuice
The way I'm implementing events using LiveData feels rather unorthodox, but I'm not aware of anything in the Android framework that would let me do it in a better way... One option I did consider was wrapping the cheat lists in LiveData and observing those, but then CheatsAdapter wouldn't know which cheat had changed, only that there was some kind of change to the list, necessitating the use of the not recommended notifyDataSetChanged.
2021-09-16Android: Add edit button for cheatsJosJuice
2021-09-16Android: Programmatically open/close cheat detailsJosJuice
Only has an effect when using a narrow screen.
2021-09-16Android: Add details view for cheatsJosJuice
The details view only contains the name of the cheat for now.
2021-09-16Android: Add checkboxes for toggling cheats enabledJosJuice
2021-09-16Android: Add "Enable Cheats" setting to GUIJosJuice
2021-09-16Android: Implement basic read-only cheats listJosJuice
2021-09-16Android: Create CheatsActivityJosJuice
2021-08-24Android: Add fast path to addOrGetJosJuice
This path isn't really any faster in the normal case, but it does let us skip waiting for the lock to be available, which makes a huge difference if the lock is already taken.
2021-08-24Android: Don't hold gameFileCache lock during updateAdditionalMetadataJosJuice
It seems like we spend a lot of the game list scanning time in updateAdditionalMetadata, which I suppose makes sense considering how many different files that function attempts to open. With the addition of just one little atomic operation, we can make it safe to call updateAdditionalMetadata without holding a lock.
2021-08-24Android: Don't hold gameFileCache lock while finding gamesJosJuice
FindAllGamePaths may take a little while, and holding the gameFileCache lock isn't actually necessary until it's time to put the results returned by FindAllGamePaths into gameFileCache. The downside of this change is that we have to do an extra round of JNI in between FindAllGamePaths and Update, but I don't think that's much of a problem.
2021-08-07Merge pull request #9864 from PEmu2/wiimoteJosJuice
Change "Wiimote" to "Wii Remote" in interface
2021-07-23Android: Allow non-square overlay control imagesJosJuice
This removes an assumption in the code which made every overlay control image be scaled to a square even if the actual image was rectangular.
2021-07-23Android: Adjust DSP selection namesJosJuice
The Android strings were not updated in 59e6048 along with the DolphinQt strings.
2021-07-06Merge pull request #9841 from JosJuice/revert-9835Léo Lam
Partially revert "Android: Clean up some hardcoded strings"
2021-07-06Merge pull request #9862 from delroth/spdx-tagsMai M
Use SPDX for Dolphin licensing info
2021-07-06Merge pull request #8416 from JosJuice/shader-compilation-namesLéo Lam
Change the names for shader compilation settings
2021-07-04Change "Wiimote" to "Wii Remote" in interfacePEmu2
2021-07-05licensing: add missing license info to many Java filesPierre Bourdon
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2021-06-30Partially revert "Android: Clean up hardcoded platform names"JosJuice
This partially reverts commit cbc4989095baff7b84694802bb195c0c79d56ebe due to a crash: https://bugs.dolphin-emu.org/issues/12561 I can't debug what the cause of the crash is due to not having an Android TV device. Let's just revert this for now to fix the crash.
2021-06-26Android: Add Fallback Region setting to GUIJosJuice
2021-06-24Merge pull request #9828 from JosJuice/android-pressed-opacityLéo Lam
Android: Apply opacity setting to pressed buttons too
2021-06-22Merge pull request #9836 from JosJuice/android-getemulationactivityMai M
Android: Don't use getEmulationActivity in GCAdapter/Wiimote code
2021-06-22Android: Don't use getEmulationActivity in GCAdapter/Wiimote codeJosJuice
The app context should work just as well as an activity context. Also moving a hardcoded string to strings.xml.
2021-06-22Android: Store HomeScreenChannel's appLinkIntentUri as UriJosJuice
Cleanup of some code touched by the previous commit.