JosJuice
002a96adb0
Merge pull request #11662 from t895/kotlin-settings
...
Android: Convert Settings to Kotlin
2023-03-19 17:15:22 +01:00
JosJuice
8e363c0995
Android: Translate C++ "w" to ParcelFileDescriptor "wt"
...
Previously we were translating "w" to "w", which unlike in C++ doesn't
truncate. See https://issuetracker.google.com/issues/180526528 , and for
reference, https://en.cppreference.com/w/cpp/io/c/fopen and
https://en.cppreference.com/w/cpp/io/basic_filebuf/open .
This issue was brought to my attention by the recently published issue
CVE-2023-21036 in the screenshot editing tool on Pixel phones. I'm not
aware of any code in Dolphin that actually uses "w" with an existing
file on Android (when we ask the user for a location to save to using
SAF, a new file is always created), but still, best to fix this.
2023-03-18 13:44:01 +01:00
JosJuice
6b545eaada
Merge pull request #11659 from JosJuice/android-after-dirinit-runner-cleanup
...
Android: Clean up AfterDirectoryInitializationRunner
2023-03-16 17:12:58 +01:00
Charles Lombardo
a32d66e5ec
Android: Upgrade Kotlin to 1.8.10
2023-03-15 23:58:11 -04:00
Charles Lombardo
f06c0897ab
Android: Update gradle to 8.0
2023-03-15 23:58:11 -04:00
Charles Lombardo
de34c962d7
Android: Upgrade AGP to 7.4.2
2023-03-15 23:58:11 -04:00
Charles Lombardo
7e84285047
Android: Upgrade dependencies
...
Desugar JDK 2.0.0 -> 2.0.2
Androidx Appcompat 1.6.0 -> 1.6.1
Androidx Exif Interface 1.3.5 -> 1.3.6
Material Components 1.7.0 -> 1.8.0
Androidx recyclerview 1.2.1 -> 1.3.0
Androidx viewmodel ktx 2.5.1 -> 2.6.0
Androidx viewmodel 2.5.1 -> 2.6.0
2023-03-15 23:58:11 -04:00
Charles Lombardo
805f921b55
Android: Remove unused benchmark flags
2023-03-15 23:57:47 -04:00
Charles Lombardo
2782318b8c
Android: Update ndk version to 25.2.9519653
2023-03-15 23:57:47 -04:00
Charles Lombardo
9020b6aeb9
Android: Convert SettingsAdapter to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
673c8d9cb2
Android: Convert SettingsActivity to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
4cbbe15e77
Android: Convert SettingsFragment to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
cea882181d
Android: Convert SettingsActivityPresenter to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
3b32ff6980
Android: Convert SettingsFile to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
92f39a98d6
Android: Convert SwitchSettingViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
49e480ee53
Android: Convert SubmenuViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
760417b08f
Android: Convert SliderViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
9b79f5fa5d
Android: Convert SingleChoiceViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
917a0c2287
Android: Convert SettingViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
7b7ee13162
Android: Convert RunRunnableViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
6a08b12c9b
Android: Convert InputStringSettingViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
bc6d10e29a
Android: Convert HeaderViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
789493b722
Android: Convert HeaderHyperLinkViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
220cdafbaa
Android: Convert FilePickerViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
f0304d80ef
Android: Convert SettingsViewModel to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
508e56e2bf
Android: Convert SettingsFragmentView to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
656d91cd18
Android: Convert SettingsFragmentPresenter to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
c78cde2e18
Android: Convert SettingsActivityView to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
dc77ee140d
Android: Convert MenuTag to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
2af8efdd72
Android: Convert SwitchSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
ab11b44938
Android: Convert SubmenuSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
065c80fb4d
Android: Convert SliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
3c6bb9e0c9
Android: Convert SingleChoiceSettingDynamicDescriptions to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
d51f504629
Android: Convert SingleChoiceSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
1fc9f03b27
Android: Convert RunRunnable to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
62679bacc1
Android: Convert PercentSliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
72be338d56
Android: Convert LogSwitchSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
56c33890b9
Android: Convert InvertedSwitchSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
2369977e14
Android: Convert IntSliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
826e849a7b
Android: Convert InputStringSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
fc97c4d35a
Android: Convert HyperLinkHeaderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
f95fd7788e
Android: Convert HeaderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
1e2e9e004b
Android: Convert FloatSliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
f7ad065408
Android: Convert FilePicker to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
1553477c09
Android: Convert StringSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
2c560e05a8
Android: Convert Settings to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
dee85cead8
Android: Convert PostProcessing to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
42f4fb815f
Android: Convert NativeConfig to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
7c59640f8e
Android: Convert IntSetting to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
46e68171b9
Android: Convert FloatSetting to Kotlin
2023-03-15 17:34:49 -04:00
Charles Lombardo
3ac72855e3
Android: Convert BooleanSetting to Kotlin
2023-03-15 17:34:21 -04:00
Charles Lombardo
84c23c14db
Android: Convert AdHocStringSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
a8f3d4291a
Android: Convert AdHocBooleanSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
f1028b4652
Android: Convert AbstractStringSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
32f9e48257
Android: Convert AbstractIntSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
baeeaa2a43
Android: Convert AbstractFloatSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
5bc2b46983
Android: Convert AbstractBooleanSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
21e0b5b9d9
Android: Convert AbstractSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
43fa5cf5e4
Android: Convert SettingsItem to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
6dc6720250
Android: Convert StringSingleChoiceSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
98ab893be7
Android: Create extension functions for serializables
...
Getting serializables without explicitly stating the type is deprecated in Android 13. However we still need a way to get a serializable in versions below that. Now with these we can avoid repeating the same if block.
2023-03-15 14:26:37 -04:00
JosJuice
fe8be906f3
Android: Use LifecycleOwner instead of subtype
2023-03-14 23:03:13 +01:00
JosJuice
846f5f6671
Android: Clean up outdated comment in AfterDirectoryInitializationRunner
2023-03-14 23:03:13 +01:00
Mai
4281606838
Merge pull request #11641 from JosJuice/android-remove-old-config
...
Android: Remove support for the old config system
2023-03-14 15:48:04 -04:00
Pierre Bourdon
aceafc9d26
Merge pull request #11652 from t895/header-padding
...
Android: Make header padding appear even
2023-03-14 13:03:19 +01:00
Pierre Bourdon
970ddf0ea0
Merge pull request #11651 from JosJuice/android-profile-off-by-one
...
Android: Fix per-game profile setting off-by-one
2023-03-14 02:02:00 +01:00
Charles Lombardo
4f610bb354
Android: Make header padding appear even
2023-03-13 15:27:09 -04:00
JosJuice
5818685911
Android: Fix per-game profile setting off-by-one
2023-03-13 18:30:55 +01:00
Robin Kertels
784ce78eaf
Android: Use $applicationId for DocmentProvider authority
...
Fixes side by side installation of debug, benchmark and release builds.
2023-03-12 15:28:21 +01:00
JosJuice
804b94ee9e
Merge pull request #11524 from K0bin/document-provider
...
Android: Implement DocumentProvider
2023-03-11 19:24:19 +01:00
JosJuice
08334015f9
Android: Remove SettingsActivityView parameters from Settings
...
No longer used for anything.
2023-03-11 18:49:43 +01:00
JosJuice
99600ef781
Android: Rework the "global" settings functions
...
getXGlobal() is now identical to getX(), and setXGlobal(int, X) is now
identical to setX(int, X) in the cases where setX(int, X) exists.
We can remove/rename them.
2023-03-11 18:49:43 +01:00
JosJuice
58fc347f8d
Android: Don't require Settings object for reading a setting
...
Made unnecessary by the previous commit.
2023-03-11 18:49:43 +01:00
JosJuice
68fd133057
Android: Remove support for the old config system
...
All settings that we care about from an Android perspective are now
supported by the new config system, so we can remove all the Android code
for the old config system. This should have no impact on users.
2023-03-11 17:51:59 +01:00
JosJuice
53e7090f55
Migrate game INI profile setting to new config system
2023-03-11 17:51:58 +01:00
JosJuice
62ff2f1030
Merge pull request #11385 from JosJuice/android-input-overhaul
...
Android input overhaul
2023-03-11 12:37:44 +01:00
Admiral H. Curtiss
eb25c46a91
HW/DVDInterface: Refactor to class.
2023-03-10 18:12:59 +01:00
Robin Kertels
13ed46a488
Android: Implement DocumentProvider
...
This allows users to access the Dolphin user directory.
2023-03-08 23:09:49 +01:00
Robin Kertels
1b47144312
Android: Center list view headers
2023-03-08 18:57:19 +01:00
Robin Kertels
edde253724
Android: Only show divider in settings for headers
2023-03-08 18:57:08 +01:00
Charles Lombardo
75ce7a04ca
Android: Use coroutine for system updates
2023-03-07 15:45:41 -05:00
Charles Lombardo
d66d8210bf
Android: Switch to indeterminate progress bar on system update cancel
2023-03-07 15:45:41 -05:00
Charles Lombardo
917ca2273e
Android: Remove hardcoded strings from system update dialogs
2023-03-07 15:45:41 -05:00
Charles Lombardo
410aaef56e
Android: Remove orientation lock on system update dialog
2023-03-07 15:45:41 -05:00
Charles Lombardo
c0868f04a9
Android: Use Kotlin extensions for lifecycle components
2023-03-07 15:45:41 -05:00
Charles Lombardo
5eeb0a540b
Android: Convert OnlineUpdateRegionSelectDialogFragment to Kotlin
2023-03-07 15:45:41 -05:00
Charles Lombardo
0ac4fe763b
Android: Convert SystemMenuNotInstalledDialogFragment to Kotlin
2023-03-07 15:45:41 -05:00
Charles Lombardo
c8907349be
Android: Convert SystemUpdateResultFragment to Kotlin
2023-03-07 15:45:40 -05:00
Charles Lombardo
60cb886cd4
Android: Convert WiiUtils to Kotlin
2023-03-07 15:45:40 -05:00
Charles Lombardo
2b17e0334a
Android: Convert SystemUpdateViewModel to Kotlin
2023-03-07 15:45:40 -05:00
Charles Lombardo
6dfa555099
Android: Convert SystemUpdateProgressBarDialogFragment to Kotlin
2023-03-07 15:45:40 -05:00
JosJuice
75fb1a7edf
Android: Disable input device sensor input due to crash
2023-03-07 17:39:34 +01:00
JosJuice
1788a797e7
Android: Add "more settings" button to overlay control setting dialog
...
Some people might wonder where the ability to select an extension
and the Sideways Wii Remote went. This button will take them to the
general settings, which is where those settings now live.
At some point in the future, we should probably move everything to the
general settings. But this pull request is already big enough as it is!
2023-03-07 17:39:34 +01:00
JosJuice
6b5f82c12f
Android: Change how the overlay controller setting works, part 2
...
The previous commit wasn't enough for getting inputs to work for
controllers 2-4.
2023-03-07 17:39:34 +01:00
JosJuice
1b55d7c594
Android: Change how the overlay controller setting works
...
Up until now, there have been two settings on Android that stored the
selected Wii Remote extension: the normal one that's also used on PC,
and a SharedPreferences one that's used by the overlay controls to
determine what controls to show. It is possible for these two to end up
out of sync, and my input changes have made that more likely to happen.
To fix this, let's rework how the overlay controller setting works.
We don't want it to encode the currently selected Wii Remote extension.
However, we can't simply get rid of the setting, because for some Wii
games we need the ability to switch between a GameCube controller and a
Wii Remote. What this commit does is give the user the option to select
any of the 4 GameCube controllers and any of the 4 Wii Remotes. (Before,
controllers 2-4 weren't available in the overlay.) Could be useful for
things like the Psycho Mantis fight in Metal Gear Solid. I'm also
switching from SharedPreferences to Dolphin.ini while I'm at it.
2023-03-07 17:39:34 +01:00
JosJuice
4c326f2030
Android: Remove the in-emulation IR sensitivity options
...
This too can be set in the normal controller settings now.
2023-03-07 17:39:34 +01:00
JosJuice
ee2c7dc24b
Android: Remove the in-emulation motion control options
...
You can set this in the normal controller settings now.
2023-03-07 17:39:34 +01:00
JosJuice
32cb41007b
Android: Allow changing controller settings during emulation
2023-03-07 17:39:34 +01:00
JosJuice
c2779aef06
Android: Add the advanced input mapping dialog
...
It's missing a lot of features from the PC version for now, like
buttons for inserting functions and the ability to see what the
expression evaluates to. I mostly just wanted to get something in
place so you can set up rumble.
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-07 17:39:30 +01:00
JosJuice
42943672bb
Android: Add selecting input profile per game
2023-03-03 22:28:25 +01:00
JosJuice
1eeded23df
Android: Add input profile management
...
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-03 22:28:25 +01:00
JosJuice
7ef229d908
Android: Show warning when using old pre-defined controller INIs
...
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-03 22:28:25 +01:00
JosJuice
8b78f73e80
Android: Add Default and Clear actions for controllers
2023-03-03 22:28:25 +01:00
JosJuice
ea3200d4ba
Android: Prevent showing mapping dialog with no device selected
2023-03-03 22:28:25 +01:00
JosJuice
a1cc19f443
Android: Add "Create mappings for other devices"
2023-03-03 22:28:24 +01:00
JosJuice
2b1dd52750
Android: Add input device selection
2023-03-03 22:28:24 +01:00
JosJuice
2113bf5e3a
Android: Implement enabling/disabling control groups
...
All this code for just a single checkbox... Ah well, it has to be done
2023-03-03 22:28:24 +01:00
JosJuice
a78dca5fb0
Android: Move Sideways Wii Remote setting one submenu up
...
A slight departure from DolphinQt, but I think it makes sense, because
it will make the important Sideways Wii Remote setting easier to find.
2023-03-03 22:28:24 +01:00
JosJuice
e7530a1cb9
Android: Split Wii Remote settings into submenus
...
Too much stuff on one screen otherwise. This split matches DolphinQt.
2023-03-03 22:28:24 +01:00
JosJuice
0dd8bbbbbb
Android: Add extension selection
2023-03-03 22:28:24 +01:00
JosJuice
1c26a85e35
Android: Add NumericSetting support
2023-03-03 22:28:24 +01:00
JosJuice
2c529b9db1
Android: Add new input mapping implementation
2023-03-03 22:28:24 +01:00
JosJuice
dd8976f18d
Android: Remove old input mapping implementation
...
This old code is of no use now that ButtonManager is gone.
2023-03-03 22:28:24 +01:00
JosJuice
304d898966
Android: Remove copyAsset's overwrite parameter
...
Because of the previous commit, this is no longer needed.
2023-03-03 22:28:24 +01:00
JosJuice
93657cce54
Android: Stop extracting pre-defined controller INIs
2023-03-03 22:28:24 +01:00
JosJuice
8e33458f48
ControllerInterface/Android: Implement rumble
2023-03-03 22:28:23 +01:00
JosJuice
065481d989
ControllerInterface/Android: Automatically suspend sensors
...
This is a battery-saving measure. Whether a sensor should be suspended
is determined in the same way as whether key events and motion events
should be handled by the OS rather than consumed by Dolphin.
2023-03-03 22:28:23 +01:00
JosJuice
36acb17700
ControllerInterface/Android: Implement sensor input for InputDevices
...
This functionality was added in Android 12 to let apps get motion data
for gamepads.
2023-03-03 22:28:23 +01:00
JosJuice
5e51b56d72
ControllerInterface/Android: Implement sensor input
2023-03-03 22:28:23 +01:00
JosJuice
104ea09892
ControllerInterface/Android: Implement hotplug
2023-03-03 22:28:23 +01:00
JosJuice
ca508e4503
ControllerInterface/Android: Handle input events
...
Android doesn't let us poll inputs whenever we want. Instead, we
listen to input events (activities will have to forward them to the
input backend), and store the received values in atomic variables
in the Input classes. This is similar in concept to how ButtonManager
worked, but without its homegrown second input mapping system.
2023-03-03 22:28:23 +01:00
JosJuice
68ebb5c33e
Android: Remove old rumble implementation
2023-03-03 22:28:23 +01:00
JosJuice
9e7a2ee0fb
Android: Remove old motion input implementation
2023-03-03 22:28:23 +01:00
JosJuice
0150f521f7
ControllerInterface/Android: Rip out ButtonManager
...
ButtonManager is very different from how a normal input backend works,
and is making it hard for us to improve controller support on Android.
The following commits will add a new input backend in its place.
2023-03-03 22:28:23 +01:00
JosJuice
95ce41ac56
Merge pull request #11399 from JosJuice/jit-one-stack
...
Jit: Don't use a second stack
2023-03-03 22:27:16 +01:00
Mai
ab2f8d3475
Merge pull request #11607 from AdmiralCurtiss/sd-progress
...
Qt/WiiPane: Add progress window for SD card conversion.
2023-03-02 15:08:18 -05:00
Mai
6fcec80eb0
Merge pull request #11605 from JosJuice/android-mappings-button
...
Android: Add a button for accessing controller mappings
2023-03-02 15:06:47 -05:00
Mai
78e8669bac
Merge pull request #11614 from t895/kotlin-cheats
...
Android: Convert Cheats Activity to Kotlin
2023-03-02 15:04:19 -05:00
Mai
1b7969bc62
Merge pull request #11615 from t895/kotlin-riivolution
...
Android: Convert Riivolution Boot Activity to Kotlin
2023-03-02 15:03:43 -05:00
Mai
b9fd7e7bd4
Merge pull request #11616 from t895/kotlin-skylanders
...
Android: Convert Skylanders code to Kotlin
2023-03-02 15:03:18 -05:00
JosJuice
96deb2d897
Android: Hide controller mappings button when controller type is None
...
Also removed the make_sure_continuous_scan_enabled message.
It doesn't make sense with the new UX.
2023-03-02 18:25:10 +01:00
Charles Lombardo
2067c8eed1
Android: Convert ConvertActivity to Kotlin
2023-03-02 01:54:46 -05:00
Charles Lombardo
fb432dd58a
Android: Convert ConvertFragment to Kotlin
2023-03-02 01:54:46 -05:00
Charles Lombardo
7efb672be6
Android: Convert SkylanderSlotAdapter to Kotlin
2023-03-01 17:32:19 -05:00
Charles Lombardo
36f1315513
Android: Convert SkylanderSlot to Kotlin
2023-03-01 17:32:07 -05:00
Charles Lombardo
bbc1951afb
Android: Convert SkylanderConfig to Kotlin
2023-03-01 17:32:07 -05:00
Charles Lombardo
71e82d76b5
Android: Convert SkylanderPair to Kotlin
2023-03-01 17:13:42 -05:00
Charles Lombardo
85b30f198b
Android: Convert Skylander to Kotlin
2023-03-01 17:13:01 -05:00
Charles Lombardo
4045e213ba
Android: Convert RiivolutionAdapter to Kotlin
2023-03-01 14:39:18 -05:00
Charles Lombardo
df21663d4c
Android: Convert RiivolutionBootActivity to Kotlin
2023-03-01 14:38:59 -05:00
Charles Lombardo
79d0ff55d2
Android: Convert RiivolutionItem to Kotlin
2023-03-01 14:38:37 -05:00
Charles Lombardo
e37503675a
Android: Convert RiivolutionViewHolder to Kotlin
2023-03-01 14:38:19 -05:00
Charles Lombardo
ec7b811de3
Android: Convert RiivolutionPatches to Kotlin
2023-03-01 14:38:02 -05:00
Charles Lombardo
3935449ca0
Android: Convert TwoPaneOnBackPressedCallback to Kotlin
2023-03-01 13:47:28 -05:00
Charles Lombardo
6bc4ae7438
Android: Convert SettingDisabledWarningFragment to Kotlin
2023-03-01 13:41:55 -05:00
Charles Lombardo
53d404c5a0
Android: Convert HeaderViewHolder to Kotlin
2023-03-01 13:41:02 -05:00
Charles Lombardo
58b7b80902
Android: Convert GraphicsModsDisabledWarningFragment to Kotlin
2023-03-01 13:40:48 -05:00
Charles Lombardo
a8da5902bb
Android: Convert CheatViewHolder to Kotlin
2023-03-01 13:40:28 -05:00
Charles Lombardo
25fb3218d9
Android: Convert CheatsDisabledWarningFragment to Kotlin
2023-03-01 13:40:08 -05:00
Charles Lombardo
fcfde12c52
Android: Convert CheatsAdapter to Kotlin
2023-03-01 13:39:49 -05:00
Charles Lombardo
23d9def613
Android: Convert CheatsActivity to Kotlin
2023-03-01 13:39:23 -05:00
Charles Lombardo
3bcc4a0a59
Android: Convert CheatListFragment to Kotlin
2023-03-01 13:39:07 -05:00
Charles Lombardo
d8c1381155
Android: Convert CheatItemViewHolder to Kotlin
2023-03-01 13:38:27 -05:00
Charles Lombardo
cacbac9152
Android: Convert CheatItem to Kotlin
2023-03-01 13:37:57 -05:00
Charles Lombardo
5f5c95e7da
Android: Convert CheatDetailsFragment to Kotlin
2023-03-01 13:37:21 -05:00
Charles Lombardo
b2dd510d0a
Android: Convert ActionViewHolder to Kotlin
2023-03-01 13:37:07 -05:00
Charles Lombardo
fb177631ef
Android: Convert ReadOnlyCheat to Kotlin
2023-03-01 13:36:53 -05:00
Charles Lombardo
59ecda7939
Android: Convert CheatsViewModel to Kotlin
2023-03-01 13:36:40 -05:00
Charles Lombardo
1b61f2c223
Android: Convert Cheat to Kotlin
2023-03-01 13:35:43 -05:00
Charles Lombardo
fbc617c917
Android: Convert AbstractCheat to Kotlin
2023-03-01 13:35:33 -05:00
Charles Lombardo
37e8cd1789
Android: Convert GeckoCheat to Kotlin
2023-03-01 13:35:14 -05:00
Charles Lombardo
9e090c6bab
Android: Convert GraphicsMod to Kotlin
2023-03-01 13:34:34 -05:00
Charles Lombardo
5f6995fe6c
Android: Convert GraphicsModGroup to Kotlin
2023-03-01 13:34:09 -05:00
Charles Lombardo
9cbe66bce4
Android: Convert PatchCheat to Kotlin
2023-03-01 13:33:16 -05:00
Charles Lombardo
408b6cb50c
Android: Convert ARCheat to Kotlin
2023-03-01 13:32:42 -05:00
Charles Lombardo
a4730a9388
Android: Initialize TaskViewModel earlier in User Data Activity
2023-03-01 08:28:44 -05:00
Charles Lombardo
211be4698f
Merge pull request #11515 from t895/user-data-kotlin
...
Android: Rewrite User Data Activity in Kotlin
2023-02-28 23:47:00 -05:00
Charles Lombardo
c904e068f0
Android: Use DialogFragments to direct UserData actions
2023-02-28 22:33:42 -05:00
Charles Lombardo
8d1cf14565
Android: Convert ThreadUtil to Kotlin
2023-02-28 22:21:18 -05:00
Admiral H. Curtiss
435d8c39ee
Common/FatFsUtil: Add callback for cancelling SD card conversion.
2023-02-28 20:31:51 +01:00
JosJuice
86c1f6e1e7
Jit: Don't use a second stack
...
This second stack leads to JNI problems on Android, because ART fetches
the address and size of the original stack using pthread functions
(see GetThreadStack in art/runtime/thread.cc), and (presumably) treats
stack addresses outside of the original stack as invalid. (What I don't
understand is why some JNI operations on the CPU thread work fine
despite this but others don't.)
Instead of creating a second stack, let's borrow the approach ART uses:
Use pthread functions to find out the stack's address and size, then
install guard pages at an appropriate location. This lets us get rid
of a workaround we had in the MsgAlert function.
Because we're no longer choosing the stack size ourselves, I've made some
tweaks to where the put the guard pages. Previously we had a stack of
2 MiB and a safe zone of 512 KiB. We now accept stacks as small as 512 KiB
(used on macOS) and use a safe zone of 256 KiB. I feel like this should
be fine, but haven't done much testing beyond "it seems to work".
By the way, on Windows it was already the case that we didn't create
a second stack... But there was a bug in the implementation!
The code for protecting the stack has to run on the CPU thread, since
it's the CPU thread's stack we want to protect, but it was actually
running on EmuThread. This commit fixes that, since now this bug
matters on other operating systems too.
2023-02-28 20:29:46 +01:00
JosJuice
b827b155a0
Android: Refactor handleMenuTag
...
It was a bit silly having four functions for effectively the same thing
in all of SettingsFragmentView, SettingsFragment, SettingsActivityView,
SettingsActivity, and SettingsActivityPresenter.
With this change, we split on the four MenuTag types in
SettingsActivityPresenter instead of in SettingsAdapter.
2023-02-27 21:52:17 +01:00
JosJuice
8acc39cc3f
Android: Add a button for accessing controller mappings
...
The settings GameCube Controller N and Wii Remote N (where N is a number)
have two purposes: You can select what controller type you want to use,
and also, when you select a controller type (even if you're selecting the
one that already is selected), the mapping settings open. This second part
is less discoverable than it ideally should be. I'm changing it so that
there now is a button for opening the mapping settings instead.
2023-02-27 20:10:24 +01:00
Charles Lombardo
a049a0d4bc
Android: Remove unused refreshScreenshotAtPosition interface method
2023-02-25 11:17:16 -05:00
Charles Lombardo
5957d85178
Android: Create AutofitGridLayoutManager
...
Extends GridLayoutManager to make span changes much more responsive.
2023-02-25 11:17:16 -05:00
JosJuice
2aedd8f568
Merge pull request #11590 from t895/unused-layout-class
...
Android: Remove SettingsFrameLayout
2023-02-20 23:33:07 +01:00
JosJuice
0fb9105700
Merge pull request #11408 from t895/coil
...
Android: Rewrite image loading with Kotlin and Coil
2023-02-20 20:51:36 +01:00
Charles Lombardo
0638e08989
Android: Remove SettingsFrameLayout
2023-02-20 14:11:08 -05:00
Charles Lombardo
28faca63a6
Android: Replace Glide with Coil image loading
2023-02-20 00:38:24 -05:00
JosJuice
e65167f9cd
Merge pull request #11521 from t895/adjust-grid-options
...
Android: Simplify the grid options dialog fragment
2023-02-18 15:42:46 +01:00
Charles Lombardo
8d16aed581
Android: Convert UserDataActivity to Kotlin
2023-02-15 18:50:33 -05:00
Scott Mansell
2c24d07837
Merge pull request #11538 from t895/disc-speed-stuff
...
Rename "Speed up Disc Transfer Rate" to "Emulate Disc Speed"
2023-02-13 15:46:56 +13:00
Charles Lombardo
d0941342d2
Android: Expose Emulate Disc Speed
2023-02-12 16:20:38 -05:00
MayImilae
508c79a66f
Rename VI Skip to VBI Skip
...
VI Skip was very hard to explain on the blog, so this small changes
clarifies what VI Skip is to resolve that issue.
2023-02-11 20:28:41 -08:00
Scott Mansell
ccf92a3e56
Merge pull request #11522 from phire/KillRendererWithFire
...
Kill Renderer (with phire)
2023-02-09 19:59:16 +13:00
Charles Lombardo
e6583f8bec
Android: Convert image loading code to Kotlin
2023-02-08 19:34:27 -05:00
Joshua de Reeper
680db55239
Android: Add Skylanders Portal
...
Co-Authored-By: Charles Lombardo <clombardo169@gmail.com>
2023-02-02 21:16:14 +13:00
Admiral H. Curtiss
e55a0f4fff
Merge pull request #11495 from OatmealDome/android-cmake
...
Android: Don't enforce a particular CMake version
2023-02-01 19:35:09 +01:00
Charles Lombardo
2ec7577788
Android: Fix settings being editable when marked otherwise
2023-02-01 00:51:48 -05:00
Scott Mansell
abfc75f362
Cleanup headers
2023-01-31 19:41:24 +13:00
Charles Lombardo
be8cbe3c66
Merge pull request #11513 from JosJuice/android-scaled-int-setting
...
Android: Create ScaledIntSetting class
2023-01-31 01:05:36 -05:00
Scott Mansell
0d4537d60f
Move Presenting, Dumping and ImGui out of Renderer
2023-01-31 18:45:21 +13:00
Charles Lombardo
12b8b44a08
Android: Simplify the grid options dialog fragment
2023-01-30 17:09:16 -05:00
JosJuice
43194b2742
Merge pull request #11519 from lioncash/android
...
AndroidCommon: Make use of std::string_view where applicable
2023-01-30 20:21:44 +01:00
JosJuice
2e8ad9f105
Android: Create ScaledIntSetting class
...
A little refactoring to cut down on the size of the very big
SettingsFragmentPresenter class.
I ended up adding a bunch of @NonNull annotations in various settings
classes so I could make the parameters `Settings` instead of `Settings?`
in the new Kotlin code.
2023-01-30 20:07:09 +01:00
JosJuice
f0b833a639
Merge pull request #11518 from t895/deprecated-setting
...
Android: Remove unused force filtering setting
2023-01-30 19:56:44 +01:00
Charles Lombardo
96bc0a3063
Android: Remove unused force filtering setting
2023-01-30 13:38:39 -05:00
Lioncash
5c1954c843
AndroidCommon: Make use of std::string_view where applicable
...
Several of these can take a string_view rather than needing to
specifically use std::string.
2023-01-30 13:30:52 -05:00
Charles Lombardo
26c8440ae1
Android: Set each slider step size manually
2023-01-30 13:17:02 -05:00
JosJuice
00fdf1ddce
Android: Fix crash when attempting to change MEM2 size
...
The step size for the slider ended up being 10, but Android wanted it
to be a divisor of the slider's range (which is 128 - 64 = 64).
2023-01-29 23:35:54 +01:00