Commit Graph

2087 Commits

Author SHA1 Message Date
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
Pierre Bourdon
05b77925cb
Merge pull request #11460 from t895/reveal-settings
Android: Reveal several hidden settings
2023-01-29 07:00:38 +01:00
Charles Lombardo
ab817dcaed Android: Convert Analytics to Kotlin 2023-01-26 21:14:35 -05:00
Charles Lombardo
14c7d81b54 Android: Create analytics dialog fragment 2023-01-26 20:42:39 -05:00
OatmealDome
a534af4dd6 Android: Don't enforce a particular CMake version 2023-01-26 18:46:31 -05:00
Pierre Bourdon
9c9310bf44
Merge pull request #11208 from TellowKrinkle/CPUCull
Cull vertices on the CPU
2023-01-26 23:15:23 +01:00
TellowKrinkle
7413be1487 VideoCommon: Add configuration option for CPUCull 2023-01-25 02:21:56 -06:00
Lioncash
e5b91f00b0 Common: Replace StringBeginsWith/StringEndsWith with std equivalents
Obsoletes these functions in favor of the standard member functions
added in C++20.
2023-01-24 14:58:20 -05:00
Mai
ba6ee9d7ba
Merge pull request #11413 from t895/sample-window-slider
Android: Add slider for Performance Sample Window
2023-01-24 17:22:11 +00:00
Mai
f4a8f80228
Merge pull request #11482 from t895/rtl-fixes
Android: Fix RTL layout in several views
2023-01-24 16:52:06 +00:00
Mai
cb55921971
Merge pull request #11443 from t895/agp-upgrade-eel
Android: Update build tools and dependencies
2023-01-24 16:50:40 +00:00
Mai
b6d2cf5e30
Merge pull request #11483 from t895/grid-option-fix
Android: Fix grid options menu string
2023-01-24 16:49:19 +00:00
Charles Lombardo
c3a1a7d924 Android: Fix rtl layout in cheat details fragment 2023-01-24 08:41:20 -05:00
Charles Lombardo
7741046e6f Android: Fix rtl layout for about dialog 2023-01-24 08:41:20 -05:00
Charles Lombardo
8d5967ad87 Android: Fix rtl layout on game details dialog 2023-01-24 08:41:20 -05:00
Charles Lombardo
d61dbd06a6 Android: Fix rtl layout for cheat warning fragment 2023-01-24 08:25:47 -05:00
Charles Lombardo
2904e28d91 Android: Fix rtl layout for cheat list items 2023-01-24 08:25:47 -05:00
Charles Lombardo
3fa08833ff Android: Fix rtl layout for multiple settings activity views 2023-01-24 08:25:47 -05:00
Charles Lombardo
dc11180784 Android: Fix rtl layout for control dialogs 2023-01-24 08:25:47 -05:00
Charles Lombardo
3e1a096f7f Android: Fix rtl layout in convert activity 2023-01-24 08:25:47 -05:00
Charles Lombardo
82d0501fc8 Android: Fix rtl layout for in-game menu fragment 2023-01-24 08:25:47 -05:00
Charles Lombardo
9bccf58fdb Android: Fix rtl layout for grid options dialog 2023-01-24 08:25:47 -05:00
Charles Lombardo
ab0ab1aa7d Android: Fix rtl layout in riivolution boot activity 2023-01-24 08:25:47 -05:00
Charles Lombardo
b35ee27568 Android: Fix rtl layout in user data activity 2023-01-24 08:25:47 -05:00
Charles Lombardo
cd7251cd3a Android: Fix rtl layout on card_game 2023-01-24 08:25:46 -05:00
Pierre Bourdon
014d0573b8
Merge pull request #11455 from t895/about-dialog
Android: Add about dialog
2023-01-24 13:16:15 +01:00
Charles Lombardo
82de765106 Android: Fix grid options menu string
Previously the string was "Settings" and not "Grid Options"
2023-01-23 23:44:46 -05:00
Charles Lombardo
860f56150a Android: Add safeguards around skip ipl setting
A user shouldn't be able to disable "skip ipl" when they don't have a bios file. This finds the ipl file and tells the setting when toggling is allowed. Additionally, if the user previously disabled the option and then deletes their ipl file, they will be allowed to enable it but toggling will be disabled afterwards.
2023-01-23 12:48:27 -05:00
Pierre Bourdon
8d5edb13a9
Merge pull request #11367 from Sam-Belliveau/lagbegone
VideoCommon: VI Skip
2023-01-19 01:20:01 +01:00
Charles Lombardo
b598b6ec72 Android: Add about dialog 2023-01-18 15:58:06 -05:00
Charles Lombardo
bbb83054af Android: Expose custom rtc options 2023-01-18 01:56:05 -05:00
Charles Lombardo
d63462a14e Android: Add missing headers 2023-01-18 01:55:39 -05:00
Charles Lombardo
6448d6dbe7 Android: Expose emulated memory size override
Update BooleanSetting.java
2023-01-18 01:55:39 -05:00
Charles Lombardo
96c8a7ee1f Android: Expose texture filtering options 2023-01-17 11:13:02 -05:00
Charles Lombardo
23331e4367 Android: Expose frame dump compression level 2023-01-17 11:13:02 -05:00
Charles Lombardo
6373c9225b Android: Expose accurate cpu cache toggle 2023-01-17 01:10:46 -05:00
Charles Lombardo
bc64392692 Android: Expose pause on panic toggle 2023-01-17 01:08:40 -05:00
Pierre Bourdon
10fd768898
Merge pull request #11420 from t895/copy-profile
Android: Copy baseline profile during release builds
2023-01-17 04:48:30 +01:00
Charles Lombardo
a3b7510505 Android: Expose skip main menu toggle 2023-01-16 20:39:33 -05:00
JosJuice
716dabde96
Merge pull request #11447 from t895/save-state-fix
Android: Fix large strings in save/load savestate fragment
2023-01-16 19:09:37 +01:00
Charles Lombardo
b1e05c9125 Android: Remove pre-generated baseline profile 2023-01-15 21:16:55 -05:00
Charles Lombardo
19aa9247be Android: Copy baseline profile during release builds 2023-01-15 21:16:55 -05:00
Charles Lombardo
dbe03a4f76 Android: Fix navigation bar buttons appearing invisible on API 26 2023-01-15 18:36:22 -05:00
Charles Lombardo
76ca57ef2e Android: Fix large strings in save/load savestate fragment 2023-01-15 17:49:48 -05:00
Charles Lombardo
33c5f7a129 Android: Update benchmark module dependencies
Androidx JUnit 1.1.4 -> 1.1.5
Androidx Espresso 3.5.0 -> 3.5.1
2023-01-14 18:41:18 -05:00
Charles Lombardo
005d7574aa Android: Update app module dependencies
Androidx Fragment 1.5.4 -> 1.5.5
Androidx AppCompat 1.5.1 -> 1.6.0
Androidx Profile Installer 1.2.1 -> 1.2.2
Core android library desugaring libraries 1.1.5 -> 2.0.0
2023-01-14 18:39:43 -05:00
Charles Lombardo
45cdc7357a Android: Upgrade Java bytecode from 1.8 to 11 2023-01-14 18:35:32 -05:00
Charles Lombardo
27466fd5f9 Android: Upgrade AGP from 7.3.1 to 7.4.0 2023-01-14 18:30:07 -05:00
Charles Lombardo
054b2219d4 Android: Upgrade gradle from 7.5.1 to 7.6 2023-01-14 18:29:39 -05:00
Sam Belliveau
23ad07b368 Add VISkip 2023-01-14 01:56:37 -05:00
Charles Lombardo
4f397edab3 Android: Fix grid options text borders
Previously on displays with a small width, text would appear under the switch. Now the text will break into a new line.
2023-01-13 17:02:53 -05:00
Charles Lombardo
937e08980e Android: Change slider step size based on range
Credit to JosJuice for the slider formula
2023-01-13 16:32:09 -05:00
Charles Lombardo
e70b57fe8a Android: Adjust width of slider value text view 2023-01-13 16:32:09 -05:00
Charles Lombardo
27e64e6855 Android: Add Performance Sample Window slider 2023-01-13 16:32:09 -05:00
Charles Lombardo
6b97b64e93 Android: Ignore workaround view height if 0 2023-01-10 12:01:54 -05:00
Charles Lombardo
7fe2faff4a Android: Expose "Log Render Time to File" toggle 2023-01-09 23:29:31 -05:00
Charles Lombardo
f49f3441b3 Android: Disable focus on workaround view 2023-01-09 14:20:50 -05:00
Charles Lombardo
72176641ef Android: Revert "Make the header focusable" 2023-01-09 14:20:34 -05:00
JosJuice
1af8602530
Merge pull request #11411 from t895/managed-device-update
Android: Update managed device for baseline profile generation
2023-01-08 13:37:41 +01:00
Charles Lombardo
d32cc1e5eb Android: Fix workaround view in cheats activity
When using a fullscreen mode on some phones that remove the navigation bar, inset callbacks will not be fired. To account for this we set the workaround view at a height of 1px to prevent the view from filling the entire screen due to this activity using a Constraint layout.
2023-01-07 13:08:51 -05:00
Charles Lombardo
6fe46fcf03 Android: Update managed device for baseline profile generation 2023-01-06 18:33:51 -05:00
Charles Lombardo
4d86e44c12 Android: Add hints to allow cheats activity to be previewed 2023-01-06 15:58:29 -05:00
JosJuice
24d7cf12a5 Android: Move FPS-related settings to a submenu
Back when this was just the FPS setting, having it in the top level
of the graphics settings was reasonable. But now it's seven settings.
Let's add a new submenu for them.
2022-12-29 17:34:23 +01:00
JosJuice
cc768b1ea3
Merge pull request #11357 from t895/elevate-ingame-fragment
Android: Elevate ingame menu fragment with color
2022-12-28 10:25:36 +01:00
Mai
9e9910df8b
Merge pull request #11376 from JosJuice/android-delete-local-ref
Android: Make more meticulous use of DeleteLocalRef
2022-12-28 00:57:29 +00:00
JosJuice
b3a368ae06 Android: Add VectorToJObjectArray utility function 2022-12-27 22:59:42 +01:00
JosJuice
0b9351c194 Android: Make more meticulous use of DeleteLocalRef
If we're in a function that isn't just going to immediately return to
Java, leaking local references can lead to problems eventually.
2022-12-27 22:03:44 +01:00
JosJuice
582d6b738b
Merge pull request #11358 from t895/close-soft-keyboard
Android: Close soft keyboard on panel close
2022-12-24 11:21:56 +01:00
JosJuice
b3bc9c41ea
Merge pull request #11369 from t895/switch-fix
Android: Allow users to interact with switches in settings
2022-12-24 09:09:17 +01:00
Charles Lombardo
cf8537576e Android: Allow users to interact with switches in settings 2022-12-24 02:56:36 -05:00
Charles Lombardo
22dd0dbc3c Android: Upgrade NDK to 25.1.8937393 2022-12-23 21:41:03 -05:00
Sam Belliveau
673f81c18a New FrameTime/VBlank Analyzer + Graph 2022-12-23 19:52:53 -05:00
Charles Lombardo
4423afd462 Android: Close soft keyboard on panel close 2022-12-20 17:06:21 -05:00
Charles Lombardo
9c57d6028d Android: Elevate ingame menu fragment with color
Whenever the app is not using the default theme, the ingame menu fragment will be treated as an elevated component like an alert dialog.
2022-12-20 16:39:17 -05:00
Mai
46bc21291a
Merge pull request #11346 from t895/grid-settings
Android: Move game grid options to MainActivity
2022-12-20 15:10:51 +00:00
Charles Lombardo
2f5808e7a4 Android: Convert ThemeHelper to Kotlin 2022-12-18 16:54:28 -05:00
Charles Lombardo
6090694eab Android: Move game grid options to Main/TV Activities 2022-12-17 02:00:48 -05:00
Charles Lombardo
3bfe722c49 Android: Use colorSurface attribute for cheats activity background 2022-12-15 13:32:53 -05:00
JosJuice
19db7a87a3
Merge pull request #11343 from t895/kotlin-clean
Android: Introduce Kotlin support
2022-12-11 20:12:47 +01:00
Charles Lombardo
8226506c84 Android: Introduce Kotlin support 2022-12-11 12:59:58 -05:00
JosJuice
82e87cf7b9
Merge pull request #9944 from JosJuice/android-nonsquare-buttons
Android: Allow non-square overlay control images
2022-12-11 12:10:55 +01:00
Mateus B. Cassiano
5f0960ff88 Android: fix compile error 2022-12-11 01:10:30 -04:00
JosJuice
1fd8d476e8
Merge pull request #11325 from t895/extra-dark
Android: Add black backgrounds toggle
2022-12-10 21:09:26 +01:00
JosJuice
2b7b3c3942
Merge pull request #11335 from t895/baseline-profile
Android: Baseline profile generation
2022-12-10 21:09:18 +01:00
Charles Lombardo
fd7a84b794 Android: Add black backgrounds toggle
Makes all background colors black in dark mode when enabled through a ThemeOverlay. Applied the same way as a theme/mode.
2022-12-10 14:53:01 -05:00
JosJuice
932926a4aa
Merge pull request #11329 from t895/elevation-bar
Android: Use ElevationOverlay for app bar elevation color
2022-12-10 20:33:56 +01:00
Charles Lombardo
2555e3720b Android: Replace Checkbox with MaterialSwitch 2022-12-10 00:23:07 -05:00
Charles Lombardo
974003888a Android: Baseline profile generation
This creates a new benchmark module that is responsible for generating baseline profiles and testing them. As part of this commit a baseline-prof.txt file has been included to speed up launch times with the app in its current state. Later, profile generation can be automated and keep up with the app as it changes.
2022-12-09 20:55:10 -05:00
Charles Lombardo
c440781ce7 Android: Upgrade dependencies 2022-12-08 14:13:15 -05:00
JosJuice
abf08b5869
Merge pull request #11309 from t895/agp-upgrade
Android: Upgrade AGP to 7.3.1
2022-12-08 19:57:59 +01:00
Charles Lombardo
f2c71a77fe Android: Use ElevationOverlay for app bar elevation color 2022-12-06 18:41:55 -05:00
JosJuice
2a23aab254
Merge pull request #11327 from t895/settings-animation
Android: New settings fragment animations
2022-12-06 22:11:38 +01:00
Charles Lombardo
b9d05c4668 Android: New settings fragment animations 2022-12-06 14:17:04 -05:00
Charles Lombardo
dbfcbcb670 Android: Migrate all strings to strings.xml 2022-12-06 14:11:06 -05:00
Charles Lombardo
e9c60f3e65 Android: Have each activity manage insets separately 2022-12-04 13:37:01 -05:00
JosJuice
6abcaadd5a
Merge pull request #11314 from t895/menu-cutout-padding
Android: Pad menu fragment when expanding to cutout area
2022-12-04 18:59:32 +01:00
Mai
f21edf6d5a
Merge pull request #11270 from t895/theme-mode
Android: Add theme mode switcher
2022-12-04 17:56:59 +00:00
JosJuice
3a7ecc851b
Merge pull request #11324 from t895/back-fix
Android: Fix cheats layout
2022-12-04 18:51:43 +01:00
Charles Lombardo
2a0939ab98 Android: Pad menu fragment when expanding to cutout area 2022-12-04 12:39:51 -05:00
Charles Lombardo
c60982b248 Android: Fix cheats layout
The sliding panel layout was in the way of the top app bar and prevented the up button from being pressed. This anchors the panel to the bottom of the top app bar and removed unnecessary hardcoded padding.
2022-12-04 12:34:36 -05:00
Mai
51dfab6823
Merge pull request #11317 from t895/dialog-adjustment
Android: Use progress indicator in short loading scenarios
2022-12-04 09:15:39 +00:00
Charles Lombardo
64733b2504 Android: Use expanding Extended FAB
This adds text to the FAB when expanded and shrinks the FAB on scroll. The text will return when scrolling up as well.
2022-12-02 22:12:33 -05:00
Charles Lombardo
6a95c565ae Android: Use progress indicator in short loading scenarios 2022-12-02 15:16:10 -05:00
Charles Lombardo
b9fffa2e66 Android: Add theme mode switcher
Similar to app themes, theme modes have to be loaded before directory initialization is ready. So we save the proper key the same way.
2022-12-02 13:31:57 -05:00
Charles Lombardo
09e350d9a7 Android: Greatly simplify MotionAlertDialog theming 2022-12-01 18:52:13 -05:00
Charles Lombardo
32b4f74d44 Android: Letterbox content with display cutouts in landscape 2022-12-01 01:24:09 -05:00
Charles Lombardo
2e63c6c3ee Android: Upgrade AGP to 7.3.1 2022-11-28 15:52:17 -05:00
JosJuice
ddf63bacb9
Merge pull request #11296 from t895/tv-game-details-fix
Android: Fix GameDetailsDialog on leanback
2022-11-23 22:06:49 +01:00
Sam Belliveau
edb2c90b38
Improve FPS/VPS Counting and Revamp Appearance 2022-11-23 00:11:47 +01:00
Charles Lombardo
6e5f546d4e Android: Fix GameDetailsDialog on leanback
Previously the app would crash because Material Dividers inherit from AppCompat and the leanback activity does not. This creates a new layout file with leanback-specific accommodations and code is duplicated in GameDetailsDialog to prevent inflation crashes.
2022-11-22 15:56:15 -05:00
Charles Lombardo
e67788571a Android: Fix condition where we set grid span too early 2022-11-22 15:19:15 -05:00
Charles Lombardo
275e9e3a58 Android: Adjust card_width 2022-11-16 15:33:38 -05:00
JosJuice
9766238649
Merge pull request #11267 from t895/smooth-keyboard
Android: Use smooth keyboard animation in cheats activity
2022-11-16 20:48:20 +01:00
JosJuice
cecd4d15fe
Merge pull request #11254 from t895/adaptive-grid
Android: Dynamically adapt grid span to card_game size
2022-11-16 20:47:59 +01:00
JosJuice
7ce2be9386
Merge pull request #11256 from t895/animate-focus-change
Android: Animate covers on focus change
2022-11-16 20:47:16 +01:00
Admiral H. Curtiss
6c9b9cbf95
Merge pull request #11255 from JosJuice/disable-sd-convert
Disable SD card conversion while emulation is running
2022-11-15 03:44:49 +01:00
Charles Lombardo
eb060c7356 Android: Dynamically adapt grid span to card_game size
In order to avoid getting stuck making a new dimension file every time a new device is found we take a known value for how large the game card will be, take the screen size, and adjust the grid accordingly.
2022-11-13 15:49:29 -05:00
JosJuice
f614f94568
Merge pull request #11272 from t895/tv-update-fix
Android: Use progress bar that does not inherit from AppCompat on leanback
2022-11-13 21:01:56 +01:00
Charles Lombardo
2e978ad428 Android: Use progress bar that does not inherit from AppCompat on leanback 2022-11-13 12:25:47 -05:00
JosJuice
2340a7eea6
Merge pull request #11248 from t895/offload-unmangle
Android: Offload cover path unmangling to another thread
2022-11-13 14:59:00 +01:00
JosJuice
1e80bcbd57
Merge pull request #11265 from t895/dialog-ripple-color
Android: Change alert dialog button ripple color for default theme
2022-11-13 09:16:06 +01:00
Charles Lombardo
8bfa08fa0e Android: Use smooth keyboard animation in cheats activity 2022-11-11 00:53:59 -05:00
Charles Lombardo
8a46404329 Android: Change system update dialog title/message when cancelling 2022-11-10 22:46:41 -05:00
Charles Lombardo
4b622ef4d0 Android: Change alert dialog button ripple color for default theme 2022-11-10 21:58:11 -05:00
Charles Lombardo
e79a4b0d8c Android: Fix list_item_cheat text
Sometimes a gecko code would have a title long enough to appear over the checkbox. This is now prevented by marking the text's boundary a 16dp before the start of the checkbox.
2022-11-06 17:30:07 -05:00
Charles Lombardo
60fb151581 Android: Animate covers on focus change
Co-Authored-By: JosJuice <josjuice@gmail.com>
2022-11-06 15:52:19 -05:00
JosJuice
982afec040 Android: Disable SD card conversion while emulation is running 2022-11-06 18:27:04 +01:00
Charles Lombardo
ff38fef2e4 Android: Use FrameLayout as root for notouch emulation layout
When inflating this layout, the layout inflater doesn't expect a View and rather a descendant of ViewGroup. This resulted in a crash which is resolved by using a FrameLayout instead.
2022-11-06 01:51:12 -05:00
Charles Lombardo
6eb5013359 Android: Offload cover path unmangling to another thread 2022-11-04 14:28:21 -04:00
Charles Lombardo
349b16aa55 Android: Add more game grid sizes for long displays 2022-10-31 13:11:17 -04:00
JosJuice
aeb0fcb8ab
Merge pull request #11092 from t895/view-binding
Android: Use view binding
2022-10-29 17:20:08 +02:00
Charles Lombardo
5c30f65bbb Android: Use view binding 2022-10-29 11:05:09 -04:00
Charles Lombardo
a78e266a26 Android: Use androidx preference manager 2022-10-23 22:34:23 -04:00
JosJuice
d442f3f2e0
Merge pull request #11079 from t895/system-windows
Android: Do not fit system windows
2022-10-23 21:20:06 +02:00
Charles Lombardo
90d27be1d6 Android: Do not fit system windows 2022-10-23 15:09:01 -04:00
JMC47
9654d9a72b
Merge pull request #11196 from JosJuice/android-vs-lines-points-setting
Android: Add "Prefer VS for Point/Line Expansion" to GUI
2022-10-23 14:22:25 -04:00
JosJuice
7743afddac
Merge pull request #11163 from t895/convert-layout
Android: Replace spinners with dropdown menus
2022-10-23 20:00:18 +02:00
Charles Lombardo
0fdae88fab Android: Replace spinners with dropdown menus 2022-10-23 13:25:12 -04:00
JosJuice
c1c3ecacac Android: Add "Prefer VS for Point/Line Expansion" to GUI
This adds PR 10890's new setting to the Android GUI. I'm curious to see
if any Android users might get a performance improvement from it.

Due to how our settings work on Android, I haven't implemented disabling
the checkbox when the graphics backend doesn't support both GS and VS
for point/line expansion, but I don't think that's critical to have.
2022-10-23 10:14:23 +02:00
GaryOderNichts
88c57a00a3 Show vWii System Menu version in Menu Bar 2022-10-22 13:36:55 +02:00
Admiral H. Curtiss
da27a3e6bc
Merge pull request #11095 from K0bin/misc-vulkan
Remove special treatment for Android in video settings
2022-10-08 22:24:30 +02:00
JosJuice
51ee05cb35 Android: Use input override system for touch controls
This is the first step of getting rid of the controller indirection
on Android. (Needing a way for touch controls to provide input
to the emulator core is the reason why the controller indirection
exists to begin with as far as I understand it.)
2022-10-03 22:04:09 +02:00
Robin Kertels
4e204a9a1a
VideoCommon: Remove special treatment for Android in video settings 2022-10-01 20:53:02 +02:00
Mai
e3e6c3dfa4
Merge pull request #11088 from JosJuice/uicommon-set-enable-alert
Move a SetEnableAlert call to UICommon
2022-09-29 09:09:29 -04:00
Mai
3fab5b2338
Merge pull request #11097 from JosJuice/android-launch-wii-menu-check
Android: Improve checking in MainPresenter.launchWiiSystemMenu
2022-09-29 09:03:46 -04:00
JosJuice
d4709ce0ba Android: Remove unnecessary Context parameters 2022-09-27 19:09:47 +02:00
JosJuice
45901f64b5 Android: Use synchronized methods for GameFileCache
Compared to the previous solution of using big `synchronized` blocks,
this makes GameFileCacheManager's executor thread release and re-lock
the lock when possible, giving the GUI thread a chance to do a
(comparatively) quick getOrAdd call if it needs to.
2022-09-27 19:06:10 +02:00
JosJuice
51debaeb47 Revert "Android: Don't hold gameFileCache lock during updateAdditionalMetadata"
This reverts commit fb265b610d.

The optimization in that commit is safe when the executor thread is
writing and the GUI thread is reading, but I had failed to take into
account that it's unsafe when the GUI thread is writing and the executor
thread is reading. (The native UpdateAdditionalMetadata function loops
through m_cached_files, which is unsafe if another thread is adding
elements to m_cached_files simultaneously.)

Losing out on this optimization isn't too bad, because
719930bb39 makes it very unlikely that
both threads will want the lock at the same time.
2022-09-27 19:06:05 +02:00
JosJuice
481df6b660 Android: Allocate GameFileCache on GUI thread
This is intended to fix https://bugs.dolphin-emu.org/issues/13053,
which is a crash caused by sGameFileCache being null when addOrGet
is called.
2022-09-27 18:47:54 +02:00
JosJuice
f857fa6529 Android: Add s prefix to static variables in GameFileCacheManager 2022-09-27 18:47:54 +02:00
JosJuice
2c216c9a2b Android: Improve checking in MainPresenter.launchWiiSystemMenu
Not only SystemMenuNotInstalledDialogFragment requires directory
initialization to have completed, but also isSystemMenuInstalled.
2022-09-25 22:15:15 +02:00
JosJuice
04072f0ce6 Integrate "Ignore for this session" better with config system
Because of the previous commit, this is needed to stop DolphinQt from
forgetting that the user pressed ignore whenever any part of the config
is changed.

This commit also changes the behavior a bit on DolphinQt: "Ignore for
this session" now applies to the current emulation session instead of
the current Dolphin launch. This matches how it already worked on
Android, and is in my opinion better because it means the user won't
lose out on important panic alerts in a game becase they played another
game first that had repeated panic alerts that they wanted to ignore.

For Android, this commit isn't necessary, but it makes the code cleaner.
2022-09-24 13:03:45 +02:00
JosJuice
09c07d4ff2
Merge pull request #11060 from t895/dividers
Android: Use material dividers
2022-09-14 22:43:18 +02:00
Charles Lombardo
33048d0d4c Android: Use material dividers 2022-09-14 14:23:59 -04:00
Charles Lombardo
96d431b519 Android: Remove TabLayout workaround 2022-09-14 12:03:21 -04:00
Charles Lombardo
eb6a548735 Android: Change top app bar color on scroll 2022-09-13 21:31:30 -04:00
JosJuice
3420823002
Merge pull request #11043 from t895/nav-bar
Android: Match navigation bar color to background
2022-09-13 22:34:52 +02:00
JosJuice
351ebe668f
Merge pull request #11056 from t895/new-bars
Android: Add more top app bars
2022-09-13 21:14:30 +02:00
JosJuice
7f450f1d7e
Merge pull request #10626 from t895/glide
Android: Replace Picasso with Glide
2022-09-13 08:24:18 +02:00
JosJuice
14f427d4cd
Merge pull request #11054 from t895/swipe-refresh
Android: Change swipe refresh colors to match other component colors
2022-09-12 09:05:14 +02:00
Charles Lombardo
8c477852f3 Android: Add more top app bars 2022-09-11 23:49:26 -04:00
Charles Lombardo
0e74acdd85 Android: Remove other color edge effect definitions 2022-09-11 15:10:27 -04:00
Charles Lombardo
63ff3c3830 Android: Change swipe refresh colors to match other component colors 2022-09-11 13:29:13 -04:00