Commit Graph

263 Commits

Author SHA1 Message Date
Charles Lombardo e691d74a1a android: Abstract settings
Previously we could only add settings that would change our ini file. Now we can create abstract settings in our presenter to alter things like shared preferences for theme support!
2023-06-03 00:05:52 -07:00
german77 f88fce2c11 android: Implement gamepad input 2023-06-03 00:05:52 -07:00
Charles Lombardo 0d2549b062 android: Bump minimum version to Android 11 2023-06-03 00:05:52 -07:00
Charles Lombardo 373eab5529 android: Decouple status bar shade from navigation bar visibility 2023-06-03 00:05:52 -07:00
Charles Lombardo 0ee7e74fb8 android: Enable code minification 2023-06-03 00:05:52 -07:00
Charles Lombardo 75d3612139 android: Switch from a colored status bar to a custom view
Allows for smoother transitions with the search bar
2023-06-03 00:05:52 -07:00
Charles Lombardo ac8bcc98a4 android: Adjustments to card_game
Removed a currently unused text view and moved to material text views.
2023-06-03 00:05:51 -07:00
Charles Lombardo f556705914 android: MainActivity overhaul
This moves several parts of the main activity into fragments that manage themselves to react to changes. UI changes like the appearance of a new search view or when the games list changes now gets updated via multiple view models. This also starts a conversion to the androidx navigation component which furthers the goals mentioned previously with more fragment responsibility. This will eventually allow us to use one activity with interchanging fragments and multiple view models that are stored within that central activity.

fdas
2023-06-03 00:05:51 -07:00
Charles Lombardo 6735b5dd2a android: Enforce Vulkan 1.1 support as minimum 2023-06-03 00:05:51 -07:00
Charles Lombardo 1c23ed27dd android: Update gradle version to 8.1 2023-06-03 00:05:51 -07:00
Charles Lombardo 929e93f0b5 android: Update app dependencies 2023-06-03 00:05:51 -07:00
Charles Lombardo ea8a2aa8c8 android: Convert gradle scripts to Kotlin DSL 2023-06-03 00:05:51 -07:00
bunnei 9cba432a12 android: settings: Add scaling filter & anti-aliasing options. (#66) 2023-06-03 00:05:50 -07:00
bunnei da0db2da17 android: video_core: Add support for disk shader cache. (#64) 2023-06-03 00:05:50 -07:00
bunnei 9a9c860d55 android: config: Change docked mode and GPU accuracy to favor performance on Android. 2023-06-03 00:05:50 -07:00
german77 a21d1dcd1e android: Initialize account manager 2023-06-03 00:05:50 -07:00
german77 ea63f26a20 android: Remove unsafe null check 2023-06-03 00:05:50 -07:00
Charles Lombardo 5b201decb8 android: Scale input overlay independently of system display scale 2023-06-03 00:05:50 -07:00
Charles Lombardo 61346cfe43 android: Use apply instead of commit for shared preferences
Previously we were operating on the assumption that apply'd settings wouldn't be visible immediately. This isn't true and settings will be accessible via memory before being stored to disk. This reduces any potential stutters caused by saving to shared preferences.
2023-06-03 00:05:50 -07:00
Charles Lombardo 4b3b59611b android: Add DPad slide toggle 2023-06-03 00:05:50 -07:00
Charles Lombardo 9f477c9592 android: Add relative stick center toggle 2023-06-03 00:05:49 -07:00
Charles Lombardo 5880b3d18d android: Make hash and branch accessible from BuildConfig 2023-06-03 00:05:49 -07:00
Charles Lombardo c04cc1b4f4 android: Backup shared preferences where applicable 2023-06-03 00:05:49 -07:00
Charles Lombardo e9aa7de8d2 android: Enable retaining app data after uninstall 2023-06-03 00:05:49 -07:00
Charles Lombardo aeeb148d1a android: Remove unused doFrame function 2023-06-03 00:05:49 -07:00
Charles Lombardo 485074b57f android: Convert NativeLibrary to Kotlin 2023-06-03 00:05:49 -07:00
Charles Lombardo 939dc1813e android: Remove LocalBroadcastManager
This causes a couple of minor changes to directory initialization. We don't have a lengthy initialization step so we could spend less time creating state receivers and just run initialization on the main thread. We also don't have a situation where external storage will be a concern so checks are removed in favor of a binary check to see if initialization is ready.

This additionally removes the unused DoFrame callback.
2023-06-03 00:05:49 -07:00
Charles Lombardo f41bca4873 android: Remove game database
The content provider + database solution was excessive and is now replaced with the simple file checks from before but turned into an array list held within a viewmodel.
2023-06-03 00:05:49 -07:00
Charles Lombardo df2e69f896 android: Adjust game icon loading 2023-06-03 00:05:49 -07:00
Charles Lombardo 229c4f5895 android: Remove unused dimensions files 2023-06-03 00:05:48 -07:00
Charles Lombardo 7c887a4901 android: Slightly reduce game card size 2023-06-03 00:05:48 -07:00
Charles Lombardo 157c5286c1 android: Only show company text view if it has content 2023-06-03 00:05:48 -07:00
Charles Lombardo 40d7b3724b android: Fix check for ok text in software keyboard 2023-06-03 00:05:48 -07:00
Narr the Reg 9d11e03d61 android: Implement amiibo reading from nfc tag 2023-06-03 00:05:48 -07:00
Charles Lombardo 702b1a30ad android: Add toggle controls option to input overlay 2023-06-03 00:05:48 -07:00
Charles Lombardo 8c40cdbb5c android: Do not update FPS text on null view 2023-06-03 00:05:48 -07:00
Charles Lombardo 03275e4114 android: Convert keyboard applet to kotlin and refactor 2023-06-03 00:05:48 -07:00
bunnei 3a4270dbc2 android: Implement basic software keyboard applet. 2023-06-03 00:05:47 -07:00
bunnei f3dfb76eb6 android: config: Disable shader cache by default on Android. 2023-06-03 00:05:47 -07:00
german77 2e0e20e86b android: Fix fps counter not showing up 2023-06-03 00:05:47 -07:00
Charles Lombardo 4a06d464ff android: Prevent showing games on an invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo a8834fa20c android: Re-implement overlay editing 2023-06-03 00:05:47 -07:00
Charles Lombardo bbee31810f android: Fix popup menu going out of bounds 2023-06-03 00:05:47 -07:00
Charles Lombardo 5e2695275e android: Use autofit grid for games fragment 2023-06-03 00:05:47 -07:00
Charles Lombardo 8962c3456f android: Prevent updating empty game list text on invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo 8a76f253e4 android: Persist settings across configuration changes
Mostly things get refactored here to remove previous assumptions made about how the activity/fragment lifecycles would operate. The important change for persistence is removing the assumption that the user will be at the first settings fragment on recreation when deciding whether or not to reload settings. Now we check a flag in Settings to know if we loaded the settings within this lifecycle.
2023-06-03 00:05:47 -07:00
Charles Lombardo 4bc0f87d96 android: Store settings object in viewmodel 2023-06-03 00:05:47 -07:00
Charles Lombardo 8fa08abdb3 android: Remove configChanges exceptions 2023-06-03 00:05:46 -07:00
Charles Lombardo 188516a016 Android: Enable resizeable activities 2023-06-03 00:05:46 -07:00
Charles Lombardo 59b20e67da android: Fix emulation fragment comments 2023-06-03 00:05:46 -07:00
Charles Lombardo 947e46ef2e android: Use modal navigation drawer as in game menu 2023-06-03 00:05:46 -07:00
Charles Lombardo 99d76acb77 android: Make Game class parcelable 2023-06-03 00:05:46 -07:00
Charles Lombardo c41072feb0 android: Add kotlin parcelize plugin 2023-06-03 00:05:46 -07:00
Charles Lombardo ef1b2561ef android: Remove deprecated use of onActivityResult 2023-06-03 00:05:46 -07:00
Charles Lombardo bb5faf6558 android: Fix RTL layouts 2023-06-03 00:05:46 -07:00
Charles Lombardo f7fc5d6e07 android: Use ellipsis character 2023-06-03 00:05:46 -07:00
Charles Lombardo 6d28b14f2d android: Move all array strings to main strings file 2023-06-03 00:05:46 -07:00
Charles Lombardo c86d7eb8c2 android: Remove unused strings 2023-06-03 00:05:45 -07:00
Charles Lombardo 49417520ef android: Remove unused colors 2023-06-03 00:05:45 -07:00
Charles Lombardo 5fd53f09c3 android: Remove citra date time picker 2023-06-03 00:05:45 -07:00
Charles Lombardo f4fdf5a4ce android: Remove unused premium header layout 2023-06-03 00:05:45 -07:00
Charles Lombardo 1c00ddcd05 android: Remove unused fragment animations 2023-06-03 00:05:45 -07:00
Charles Lombardo 4155bd2144 android: Remove unused string arrays 2023-06-03 00:05:45 -07:00
Charles Lombardo 85e9d656b9 android: Remove unused integer xmls 2023-06-03 00:05:45 -07:00
Charles Lombardo 155ce37214 android: Refactor ic_launcher.xml to drawables 2023-06-03 00:05:45 -07:00
Charles Lombardo b17d58b523 android: Suppress lint in InsetsHelper 2023-06-03 00:05:45 -07:00
Charles Lombardo 8add51924f android: Add data extraction rules 2023-06-03 00:05:44 -07:00
Charles Lombardo 9af7547774 android: Remove requestLegacyExternalStorage attribute 2023-06-03 00:05:44 -07:00
Charles Lombardo cfb821e680 android: Remove unused permissions 2023-06-03 00:05:44 -07:00
Charles Lombardo 4330135912 android: Inset input overlay based on system cutouts 2023-06-03 00:05:44 -07:00
Charles Lombardo 6cebdba191 android: Stop updating fps counter when emulation stops 2023-06-03 00:05:44 -07:00
Charles Lombardo 5ef7478141 android: Move driver installation off of main thread
Additionally creates an indeterminate loading dialog during installation
2023-06-03 00:05:44 -07:00
Charles Lombardo 8ee6154d6d android: Fix crash when decodeGameIcon creates a null Bitmap 2023-06-03 00:05:44 -07:00
Charles Lombardo 3e088c768b android: Use view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo dd0a0955eb android: Enable view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo 7e48948d54 android: Refactor CheckBoxSetting to SwitchSetting 2023-06-03 00:05:44 -07:00
bunnei 542e0c39f7 android: EmulationActivity: Fix variable shadowing in fragment creation. 2023-06-03 00:05:43 -07:00
bunnei 43394945c9 android: res: fragment_emulation: Ensure FPS counter is shown. 2023-06-03 00:05:43 -07:00
Liam d54605d1a5 build: only enable adrenotools on arm64 2023-06-03 00:05:43 -07:00
Charles Lombardo e6740530e5 android: Use Skyline's document provider 2023-06-03 00:05:43 -07:00
Charles Lombardo 9238214837 android: Use androidx splash screen 2023-06-03 00:05:43 -07:00
Charles Lombardo 77075417b0 android: Replace Picasso with Coil 2023-06-03 00:05:43 -07:00
Charles Lombardo 0caa228190 android: New swipe to refresh color scheme 2023-06-03 00:05:43 -07:00
Charles Lombardo c550f3bfff android: New settings fragment animations 2023-06-03 00:05:43 -07:00
Charles Lombardo ee29f2a875 android: Use edge to edge 2023-06-03 00:05:43 -07:00
Charles Lombardo 6581821e39 android: Use Material 3 components 2023-06-03 00:05:42 -07:00
Charles Lombardo e73d0adc16 android: Modernize theme system 2023-06-03 00:05:42 -07:00
Charles Lombardo ff36c209a5 android: Use vector icons 2023-06-03 00:05:42 -07:00
Charles Lombardo cc5ee75b52 android: Use adaptive icon 2023-06-03 00:05:42 -07:00
bunnei 374f9cbfa2 android: settings: Dynamically evaluate valueAsString
Co-Authored-By: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:42 -07:00
Charles Lombardo 13ee2288d2 android: Add license identifier 2023-06-03 00:05:42 -07:00
Charles Lombardo d88c5b4ea5 android: Convert YuzuApplication to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo 1234a59f8a android: Convert Action1 to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo bc26a0af50 android: Convert GameViewHolder to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 4090e875d5 android: Remove ThemeUtil 2023-06-03 00:05:41 -07:00
Charles Lombardo 2ad75ab815 android: Convert StartupHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 8841429c4b android: Convert Log to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo b8b70aa422 android: Convert GpuDriverMetadata to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 69ed6725b1 android: Convert GpuDriverHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo f1b93071cc android: Convert GameIconRequestHandler to Kotlin 2023-06-03 00:05:41 -07:00