Commit Graph

1429 Commits

Author SHA1 Message Date
LC 5a696f4934
Merge pull request #8906 from JosJuice/android-button-id-typo
Android: Fix button ID typo
2020-07-08 08:47:33 -04:00
LC 25118e2acc
Merge pull request #8928 from Ebola16/ADSL
Android: Update "Speed Limit" for "Unlimited" value
2020-07-08 08:39:44 -04:00
JosJuice c89828b22e Android: Convert some files to LF
I wonder why lint didn't catch this...
2020-07-06 17:04:58 +02:00
Ryan Meredith 9438b3cab2 Android: Update "Speed Limit" for "Unlimited" value 2020-07-04 03:26:44 -04:00
JosJuice f8e0ececb9 Android: Don't use square stick calibration
This essentially reverts d9c78d5. Thanks to the previous commit,
the touch controls issue which was fixed by d9c78d5 is still fixed.
The behavior for gamepads is reverted, bringing back the ability
to run diagonally in games that had trouble with it after d9c78d5.
2020-06-29 01:20:02 +02:00
JosJuice db75509ec5 Android: Enfore correct stick gate in overlay
Currently, the touch controller overlay uses a square gate for
sticks. This commit changes that so that it instead uses the
stick gate configured in the INI, which ensures that the values
sent to the core are appropriately scaled regardless of what
is configured in the INI and makes the overlay look nicer
if the INI is set to a stick gate that matches the graphics.
2020-06-29 01:20:02 +02:00
JosJuice e044db6da6 Android: Fix button ID typo
Probably didn't actually break anything in practice due to
how the code for sticks works, but still.
2020-06-28 22:12:35 +02:00
JosJuice 2a3aa7a1f6 Android: Wrap game details dialog in ScrollView
This makes the dialog scrollable if the contents don't fit on the
screen. This happens for me in landscape but not in portrait.
2020-06-25 12:23:56 +02:00
Tilka 26ed3b318c
Merge pull request #8891 from JosJuice/file-details
Show file format details in game properties
2020-06-25 11:00:49 +01:00
JosJuice d494e0230c Show file format details in game properties 2020-06-21 20:47:23 +02:00
JosJuice 8ce25769d7
Merge pull request #8803 from Ebola16/ANDROID
Android: Android INI section and make platform tab selection an INI setting
2020-06-21 13:49:56 +02:00
JosJuice 08c93adde2
Merge pull request #8739 from Ebola16/GCOVERLAY
Android: Separate GameCube overlay refresh logic
2020-06-21 13:49:45 +02:00
Ryan Meredith 53ccc7a2d1 Android: Make last platform tab selection an INI setting 2020-06-17 13:00:48 -04:00
JosJuice e2ae2b3b0b Add new file format RVZ based on WIA 2020-06-17 13:47:34 +02:00
JosJuice 8da5d0c4fe Add an early version of WIABlobReader
It can currently only read the first 0x80 bytes of a disc image,
which is enough for identifying it but not for doing anything else.
2020-06-17 13:43:51 +02:00
Tilka a2b7627d66
Merge pull request #8860 from Ebola16/Emu
Android: Disallow multiple launcher activities
2020-06-16 19:38:55 +01:00
Ryan Meredith ea3c3fd952 Android: Separate GameCube overlay refresh logic 2020-06-16 13:27:13 -04:00
JosJuice 851b438419
Merge pull request #8844 from Ebola16/RGL
Android: Refresh game library when resuming (Tv)MainActivity
2020-06-16 18:08:48 +02:00
Ryan Meredith 1e6925e423 Android: Disallow multiple launcher activities 2020-06-16 11:52:58 -04:00
Ryan Meredith bebeb935a5 Android: Android INI section 2020-06-14 10:54:08 -04:00
Tilka bf83e3eea0
Merge pull request #8845 from Ebola16/DISC2
Android: Display disc number instead of company if mulipart disc
2020-06-14 12:20:36 +01:00
Tilka 63c53ebc87
Merge pull request #8836 from Ebola16/REC
Android: Add recursive game paths to UI
2020-06-14 12:16:08 +01:00
Ryan Meredith 1c89e61d53 Android: Add option to disallow SD card writes 2020-06-08 03:45:59 -04:00
Ryan Meredith 3b1e6f3b7f Android: Display disc number instead of company if mulipart disc 2020-06-04 04:12:12 -04:00
Ryan Meredith 9ee0740c2d Android: Refresh game library when resuming (Tv)MainActivity 2020-06-02 16:45:23 -04:00
Ryan Meredith 9ea8f29765 Android: Conditionally respond to modified settings 2020-06-01 07:43:19 -04:00
Ryan Meredith 77f539355d Android: Add recursive game paths to UI 2020-05-31 10:00:09 -04:00
JosJuice 53aff81c45
Merge pull request #8821 from Ebola16/TV
Android TV: Add Open File and Install WAD
2020-05-27 21:41:09 +02:00
Ryan Meredith cfe1687248 Android TV: Add Open File and Install WAD 2020-05-19 03:24:32 -04:00
Ryan Meredith c8aa077f8c Android: Consistent TODO formatting 2020-05-09 12:33:09 -04:00
Léo Lam 297bbceadf Remove redundant "Emulation" from "DSP HLE Emulation"
HLE stands for "high-level emulation", so "DSP HLE Emulation" would
mean "DSP High-Level Emulation Emulation"
2020-05-03 17:54:05 +02:00
Léo Lam 6e01855e8e
Merge pull request #8770 from Ebola16/ADSP
Android: Add DSP Emulation Engine
2020-05-03 17:51:46 +02:00
Ryan Meredith a58942b442 Android: Add DSP Emulation Engine 2020-04-28 00:59:48 -04:00
Ryan Meredith f3800659b9 Android: Fix MenuTag typo 2020-04-27 17:33:03 -04:00
Léo Lam 88ae4c7914
Merge pull request #8729 from JosJuice/android-touch-ir-default
Android: Use touch emulation of IR by default
2020-04-27 17:56:01 +02:00
Léo Lam d040f91c3a
Merge pull request #8709 from Ebola16/AS
Android: Split General settings
2020-04-27 17:13:57 +02:00
JosJuice 18a4afb053 Android: Use touch emulation of IR by default
While having motion control emulation of IR enabled by default
makes sense in situations like using a DualShock 4 on a PC,
Android has the additional option of touch emulation of IR
which seems to be better liked, and the default value which
was chosen with PC in mind was carried over to Android
without any particular consideration. This change disables
motion control emulation of IR by default on Android only.
2020-04-27 17:02:53 +02:00
Ryan Meredith c5c080b235 Android: Run installWAD on separate thread 2020-04-23 19:31:41 -04:00
Ryan Meredith 2d6d0c86cc Android: Add Install WAD to menu_game_grid 2020-04-22 13:56:44 -04:00
JMC47 f83addee68
Merge pull request #8718 from JosJuice/android-tv-long-press
Android TV: Fix crash when long pressing a game
2020-04-22 04:25:44 -04:00
JMC47 a5bd263dfb
Merge pull request #8714 from JosJuice/progress-dialog-thread
DolphinQt: Run tasks that use progress dialogs on separate threads
2020-04-21 23:59:37 -04:00
JosJuice cf67b2093e
Merge pull request #8735 from Ebola16/INIT
Android: Reload Wii Remote settings upon saving them
2020-04-17 11:31:18 +02:00
Ryan Meredith 096e63d3f9 Android: Set Insert SD Card default setting to true 2020-04-16 19:11:19 -04:00
JMC47 19fc43f190
Merge pull request #8708 from Ebola16/Wii
Android: Add Insert SD Card and update the description
2020-04-16 18:27:51 -04:00
Ryan Meredith 0b66310957 Android: Reload Wii Remote settings upon saving them 2020-04-10 10:23:32 -04:00
JosJuice 55f787b898 Remove unused function Host_UpdateProgressDialog 2020-04-03 12:53:38 +02:00
JosJuice 163b176bab Android: Use the newly added style for all dialogs
For consistency, and in case I missed any cases where not specifing
a theme could lead to a crash on Android TV.
2020-04-02 15:06:34 +02:00
JosJuice ff0c36b21a Android: Use the newly added style for the analytics alert too
See 85ac06a.
2020-04-02 15:03:39 +02:00
JosJuice 4fd42d994e Android TV: Fix crash when long pressing a game
Also fixes the same crash when accessing the game details
(which only can be accessed after long pressing a game).
The problem was that we were not using a theme that had
an AppCompat theme as a parent.

Unfortunately, the game details dialog uses white on white on
Android TV, and I don't know how to fix this in a clean way.
2020-04-02 15:03:24 +02:00
Paul Keith 85ac06a57d Android: Force an AppCompat theme in the analytics AlertDialog
This fixes a crash on ATV devices, because the the AlertDialog is
from the appcompat class, but the theme derived from the parent
view on ATV devices isn't from AppCompat.
2020-04-01 18:46:57 -05:00
Ryan Meredith a3ff20a5f9 Android: Add Insert SD Card and update description 2020-03-31 14:58:00 -04:00
Ryan Meredith 4e0fc6cfe5 Android: Reduce Submenu height by 25 percent 2020-03-30 05:15:50 -04:00
Ryan Meredith fba1e3c7ca Android: Split General settings 2020-03-30 04:58:26 -04:00
JosJuice 1b97f081b8
Merge pull request #7920 from Ebola16/DISO
Android: Add Paths to UI
2020-03-29 15:13:27 +02:00
Ryan Meredith d15d6e70d7 Android: Don't let onSettingChanged clobber ConfirmRunnable changes 2020-03-24 17:08:35 -04:00
Léo Lam 584eee818c
Merge pull request #8660 from TheRealPSV/master
Android: Set up Day/Night mode for system-compatible optional dark theme
2020-03-24 10:03:35 +01:00
JosJuice de5430b222 Android: Don't use SettingsAdapter's static state in file picker 2020-03-23 00:53:22 -04:00
Ryan Meredith ccda75f33f Android: Add Paths to UI 2020-03-22 06:43:35 -04:00
Parthiv Vora 0ba3f497a7 Android: add lighter accent color for dark mode 2020-03-18 23:57:21 -04:00
JosJuice 868cc15b71 Android/JNI: Remove odd usage of the comma operator
This was probably a copypaste mistake of mine.
(env is used as the first argument when calling ToJString.)
2020-03-18 12:37:28 +01:00
Parthiv Vora 5446e7b7d6 Android: Set up Day/Night mode for system-compatible optional dark theme 2020-03-17 01:00:59 -04:00
Léo Lam d4085382dc
Merge pull request #8598 from JosJuice/channel-sync-android-tv
Android: More robust check for whether to sync channels
2020-03-16 20:53:47 +01:00
Léo Lam f81c0658c0
Merge pull request #8503 from JosJuice/android-stick-calibration
Android: Use square stick calibration
2020-03-15 23:42:05 +01:00
Stenzek 86db015c23 Common: Add a render_window field to WindowSystemInfo
We need this because we need to pass the layer to MoltenVK, not
the view handle. But the input subsystem still needs the window.
2020-03-11 23:09:30 +10:00
Ryan Meredith 38fa38d424 Android: Add Set as Default ISO to UI 2020-03-11 01:06:32 -04:00
Ryan Meredith 163d9506e8 Android: Fix obscured Dolphin version 2020-03-03 13:19:08 -05:00
Tilka e323f47ceb
Merge pull request #8472 from degasus/jitsetting
Core/Jits: Adds an option to disable the register cache.
2020-02-08 13:49:33 +00:00
JosJuice 64953bb63a Android: More robust check for whether to sync channels
This changes channel syncing to happen when the operating system is
Android TV rather than when TvMainActivity is launched. (You can run
TvMainActivity on a phone by specifying a launch activity manually
in Android Studio, which I do sometimes for testing purposes. Without
this change, you get an exception when channel syncing runs.)
2020-02-01 22:07:29 +01:00
Stenzek f83b2fc62d Android: Fix typo in Skip Presenting Duplicate Frames setting name 2020-01-31 22:14:51 +10:00
Stenzek 11ba623f26 Add an option to present/skip presenting duplicate frames
Currently, we do not display every second frame in 25fps/30fps games
which run to vsync. This improves performance as there's less rendering
for the GPU to perform, but when combined with vsync, could cause frame
pacing issues.

This commit adds an option to force every frame generated by the console
to be displayed to the host, which may improve pacing for these games.
2020-01-14 10:57:35 +10:00
Simonx22 345152b148 Android: update to Gradle 3.5.3 2019-12-06 12:13:53 -05:00
OatmealDome ef32a10d69 InputCommon: Decouple ButtonManager and Touchscreen from Android
Changes were also made for codestyle compliance.
2019-11-28 15:20:51 -05:00
JosJuice d9c78d54da Android: Use square stick calibration
Fixes https://bugs.dolphin-emu.org/issues/11911 and makes the range of
values when using touch controls correct. Also affects the range of
values for physical controllers in a way that may or may not be
desirable, depending on the controller model. (If there are
undesirable effects, they would be that the range of inputs is too
small, especially diagonally.) Such is our messy Android input system.
Should be an improvement on the whole for physical controllers, though.
2019-11-28 18:50:05 +01:00
JosJuice 7e64bdc85f Android: Clear preferences linked to WiimoteNew.ini when overwriting
Otherwise the preferences can end up in a state that is inconsistent
with WiimoteNew.ini.
2019-11-28 18:50:05 +01:00
JosJuice 6e0130351e Android: Fix crash on enabling GC adapter
We must set Java_GCAdapter.manager before the GC adapter thread (C++)
starts. We used to set it at emulation start, which was fine until
9f3f45a made the GC adapter thread start much earlier.
2019-11-28 00:47:58 +01:00
Anthony 155016531f
Merge pull request #8439 from JosJuice/android-native-motion-controls
Android: Native motion controls
2019-11-27 15:40:43 -08:00
Anthony 34a1df1c68
Merge pull request #8493 from JosJuice/android-audio-volume
Android: Add audio volume setting
2019-11-27 15:36:54 -08:00
Anthony 8d814baf79
Merge pull request #8494 from JosJuice/android-checkbox-no-description
Android: Fix displaying checkbox settings with no description
2019-11-27 15:35:29 -08:00
JosJuice cf8208ace9 Android: Add audio volume setting 2019-11-26 21:10:27 +01:00
JosJuice 8339793918 Android: Fix displaying checkbox settings with no description
https://bugs.dolphin-emu.org/issues/11904
2019-11-25 00:14:40 +01:00
JosJuice 9639dde114 Address review comments on old code 2019-11-23 17:48:44 +01:00
JosJuice 8e2b12e1ea GameDetailsDialog: Use labels instead of icons 2019-11-23 17:48:44 +01:00
JosJuice 2e13353201 GameDetailsDialog: Convert layout to ConstraintLayout
This also removes the FAB from GameDetailsDialog. It was
previously outside of the visible area and thus unusable.
2019-11-23 17:48:43 +01:00
JosJuice 4f1511043c GameDetailsDialog: Fix banner placeholder 2019-11-23 17:48:43 +01:00
JosJuice ec91674d07 GameDetailsDialog: Show game ID and revision 2019-11-23 17:48:43 +01:00
JosJuice 84e616337d GameDetailsDialog: Remove the screenshot ImageView
It takes up a lot of space on the screen, and the functionality for
saving these screenshots isn't in Dolphin anymore as far as I can tell.
2019-11-23 17:48:43 +01:00
JosJuice 100e7e2b3d GameDetailsDialog: Hide description if empty
In particular, Wii games don't have descriptions.
2019-11-23 17:48:43 +01:00
JosJuice 100f032e2f GameDetailsDialog: Don't use CircleImageView for banners
Because trying to fit a 3:1 banner into a circle looks very awkward.

Also move the banner below the title/description now that it
takes up more space horizontally.
2019-11-23 17:48:42 +01:00
JosJuice fcb96a179d GameDetailsDialog: Actually load the banner 2019-11-23 17:48:42 +01:00
JosJuice c2952c466f Bring back game banner loading code deleted in 3f21975 2019-11-23 17:48:42 +01:00
JosJuice 5ed0cf8e0e Rename GameSettingsDialog to GamePropertiesDialog
Since it no longer only contains settings.
2019-11-23 17:48:42 +01:00
JosJuice 00c4dad784 Android: Bring back the game details dialog
It was made inaccessible in e19922c (I'm not sure why)
and then removed by 593b697.
2019-11-23 17:48:41 +01:00
JosJuice 870912722e Revert "Android: Remove dead code and related lib <circleimageview>"
This reverts commit 593b69728d.
2019-11-23 17:35:19 +01:00
Rafael Toledo 8453277479 Moves `AlertDialog`s imports to AndroidX and fix tabs background color 2019-11-23 10:50:12 -03:00
Rafael Toledo 2d1f32efb4 Bumps compile API to 29 (Q) removes unecessary casts and deprecated
calls
2019-11-22 13:17:37 -03:00
JosJuice 2d4a3f4597 Android: Add an option for disabling native motion controls 2019-11-20 23:21:06 +01:00
JosJuice c8b8a60033 Android: Let WiimoteEmu know whether we have accelerometer/gyroscope 2019-11-20 20:13:36 +01:00
JosJuice 4d838212e2 Android: Overhaul the orientation lock setting
When using motion controls, it's useful to be able to lock the screen
to a certain orientation so that Android won't interpret game motions
as an intent to change the screen orientation. To this end, I've
changed the existing orientation lock setting in the following ways:

- A portrait lock mode has been added in addition to the existing
  landscape lock mode and unlocked mode.
- The landscape lock mode now locks to regular landscape rather than
  letting you change between the two possible landscape orientations.
- The setting is now accessed during emulation rather than outside.
2019-11-20 20:13:34 +01:00
JosJuice a548489aaf Android: Adjust accel/gyro data for screen orientation 2019-11-20 18:22:21 +01:00
JosJuice 4557901382 Android: Make "Horizontal Wii Remote" flip the motion controls
Before, it only flipped the d-pad (and arranged the overlay buttons
differently).
2019-11-20 18:22:21 +01:00
JosJuice 033eeda43b Android: Fix the whammy bar for emulated guitar controllers
Not that this has much relation to the rest of the PR, but it's an
easy fix that we might as well throw in while we're already
overwriting everyone's WiimoteNew.ini.
2019-11-20 18:22:20 +01:00
JosJuice b143df91be Android: Native motion controls 2019-11-20 18:22:20 +01:00
degasus 3ebcc445de Core/Jits: Adds an option to disable the register cache.
This will help to disable all inter-instruction dependencies.
So android users can check if only a single instruction is broken without compiling dolphin on their own.
2019-11-16 13:05:54 +01:00
Simonx22 9d606a6ad0 migrate to AndroidX 2019-11-15 12:57:42 -05:00
JosJuice 294fd8dd3a
Merge pull request #8463 from Simonx22/androidSupportVersion28
Android: update androidSupportVersion and compileSdkVersion to 28
2019-11-14 23:01:06 +01:00
JosJuice c1818c3e6c
Merge pull request #8461 from Simonx22/SdkVersion
Android: Update target Android SdkVersion to 28
2019-11-14 13:22:33 +01:00
Connor McLaughlin 913cb08066
Merge pull request #8456 from jordan-woyak/input-gate-race-fix
InputCommon: Make the "input gate" not racy.
2019-11-11 10:59:49 +10:00
Simonx22 6f10730abf update androidSupportVersion and compileSdkVersion to 28 2019-11-09 23:28:22 -05:00
Léo Lam 08b191ee8e
Merge pull request #8313 from JosJuice/gamelist-xml
GameFile: Support HBC-style XML metadata
2019-11-09 22:59:26 +01:00
Simonx22 be489443bd target Android SdkVersion 28 2019-11-09 02:17:22 -05:00
Simonx22 7dc0732a22 Gradle 3.5.2 2019-11-08 02:33:28 -05:00
Connor McLaughlin 18ba1fd723
Merge pull request #8452 from JosJuice/android-emulationactivity-rotation-crash
Android: Replace emulation rotation crash workaround with proper fix
2019-11-08 10:45:21 +10:00
Jordan Woyak 85ceb37ccd InputCommon: Make the "input gate" not racey. 2019-11-06 16:31:02 -06:00
JosJuice 8bfd7c9f36 Android: Expand the comment for NVidiaShieldWorkaroundView
This text has been taken from the message of the commit that added
the class. (I don't have an Nvidia Shield to reproduce the bug with.)
2019-11-05 09:39:57 +01:00
JosJuice c007dd1852 Android: Replace emulation rotation crash workaround with proper fix
The workaround was added in 0446a58.

The underlying problem is that we must not destroy the surface
while the video backend is initializing, otherwise the video
backend may reference nullptr.

I've also cleaned up the logic for when to destroy the surface.
Note that the comment in EmulationFragment.java about only being
able to destroy the surface when emulation is running is not true
anymore (due to de632fc, it seems like).
2019-11-05 09:28:40 +01:00
Ken Hosogoe 109108d3f6 Fix versionCode
ERROR: android.defaultConfig.versionCode is set to 0, but it should be a positive integer.
See https://developer.android.com/studio/publish/versioning#appversioning for more information.
Affected Modules: app
2019-10-30 19:13:32 +11:00
Ryan Meredith 68450fc1d9 Android Studio 3.5.1 Updates 2019-10-02 21:10:16 -04:00
JosJuice de700eba4f
Merge pull request #8325 from Ebola16/35
Android Studio 3.5 Updates
2019-09-28 18:38:43 +02:00
JosJuice d8958fbdf7 GameFile: Use enums for custom/length parameters 2019-09-25 12:25:59 +02:00
JosJuice 59f27ae4e1 GameFile: Support HBC-style XML metadata
This feature was originally exclusive to the previous iteration of
DolphinQt (the one that was the reason for the current iteration
being named DolphinQt2 initially).

https://bugs.dolphin-emu.org/issues/8949
2019-09-25 12:25:33 +02:00
Ryan Meredith 817fe9b799 Android: Add GameID to Game Settings title 2019-09-06 23:51:32 -06:00
Anthony ecef374cd8
Merge pull request #7810 from Ebola16/GFXUI
Android: Graphic setting description improvements
2019-09-01 12:16:38 -07:00
Ryan Meredith 1ee2234e44 Android Studio 3.5 Updates 2019-08-21 14:43:00 -04:00
Ryan Meredith 7d98c4f3a4 Add SingleChoiceSettingDynamicDescriptions 2019-08-21 13:17:16 -04:00
Ryan Meredith 630de81309 Show Stereoscopy Mode setting value as description 2019-08-21 13:17:16 -04:00
Ryan Meredith 92366fffaf Show Aspect Ratio setting value as description 2019-08-21 13:17:16 -04:00
Anthony c7fc9126aa
Merge pull request #8190 from JosJuice/android-init
Android: Call UICommon::Init at app start instead of emulation start
2019-08-21 10:14:52 -07:00
Anthony 998c171b65
Merge pull request #8196 from JosJuice/android-applinkactivity-race
Android: Fix race condition in AppLinkActivity
2019-08-21 10:14:08 -07:00
JosJuice c677268aaf Android: Don't use GameFile/GameFileCache before UICommon::Init
Preparation for the next commit.
2019-08-21 18:46:49 +02:00
JosJuice 9f3f45aa5f Android: Call UICommon::Init at app start instead of emulation start
Much of our native code assumes that UICommon::Init has been called
(for reasons such as wanting to access the user's settings),
so not calling it until emulation start heavily limits what native
code we can use in the Android GUI (except during emulation).
2019-08-21 18:46:49 +02:00
JosJuice 47e1108d57 Android: Add helper class AfterDirectoryInitializationRunner 2019-08-21 18:46:49 +02:00
Anthony 55d9f892a4
Merge pull request #7274 from Ebola16/DSA
Android: Dynamic SettingsActivity Titles
2019-08-21 09:01:25 -07:00
JosJuice 561a4cfcce Replace "Override Language on NTSC Games" with "Allow Mismatched Region Settings"
This new setting is like Override Language on NTSC Games, except
instead of only applying to the GameCube language setting,
it also applies to the Wii language setting.

Fixes https://bugs.dolphin-emu.org/issues/11299
2019-08-09 17:33:05 +02:00
JosJuice 2d316196c9
Merge pull request #8288 from allanxp4/master
Fix for Android version crashing when changing rotation on settings screen
2019-08-07 11:54:47 +02:00
JosJuice 4261e8d892 Android: Add a bit more warning to the game INI deletion prompt 2019-08-04 19:31:56 +02:00
Allan 7029ebd97b Fix for crash when switching to landscape mode
https://bugs.dolphin-emu.org/issues/10815
2019-08-04 13:47:19 -03:00
Stenzek 6a29e8fa58 Android: Use EmulationActivity.launchFile() for StartupHandler 2019-07-18 22:35:24 +10:00
Stenzek 9961e2866a Android: Support opening .dff files
This is also shared by the disc change code, but changing discs to a
.dol doesn't make sense either.
2019-07-18 22:35:23 +10:00
Stenzek 34e6a41d05 Android: Support opening files directly
This enables us to boot FIFO logs as well as homebrew directly, without
having to add it to the game list first.
2019-07-18 22:35:12 +10:00
Stenzek 6a6bbd7071 Android: Support bypassing game file cache to parse file 2019-07-18 22:35:12 +10:00
Ryan Meredith 2edc58950b Dynamic SettingsActivity Titles 2019-07-15 14:39:01 -04:00
JosJuice 36166c9b4f Android: Don't copy default game INIs into user game INIs
This isn't as serious as copying global INIs into user game INIs,
but still not good. We want to be able to remove settings from
default game INIs and have those removals apply.
2019-07-02 19:28:43 +02:00
JosJuice 7f841e9bfd Android: Suggest deleting game INIs if they contain global INI data 2019-07-02 19:28:38 +02:00
JosJuice 7652023407 Android: Don't copy global INIs into game INIs
See the source code comment in the next commit for why this is bad.
2019-07-02 19:27:42 +02:00
Silent 6c21811090
Make DolphinAnalytics a true singleton - static local variables are initialized in a thread safe manner since C++11
Also works around a Visual Studio 2017 bug where static inline class fields are destructed multiple times
2019-06-23 21:43:47 +02:00
Léo Lam 4885130799
Merge pull request #8194 from lioncash/common-msg
Common/MsgHandler: Tidy up interface and namespace code
2019-06-20 13:37:24 +02:00
Lioncash 4f1f55093f Common/MsgHandler: Namespace code within the Common namespace
Closes another gap in the Common library where code isn't being
namespaced under it.
2019-06-19 16:03:55 -04:00
JosJuice 16afac9da9
Merge pull request #7927 from weihuoya/android-key-map
android: simplify config loading code
2019-06-19 11:51:00 +02:00
JosJuice e4ef2193e0 Android: Fix race condition in AppLinkActivity
https://bugs.dolphin-emu.org/issues/11767
2019-06-17 10:12:42 +02:00
Connor McLaughlin b13e00b003
Merge pull request #8165 from lioncash/linkage
{Android/ButtonManager, ResourcePack/Manager}: Make file-scope variables/functions internally linked where applicable
2019-06-08 20:56:13 +10:00
Connor McLaughlin bed2d66bed
Merge pull request #8117 from weihuoya/threaded_env
android: get java env from thread local storage
2019-06-08 20:42:15 +10:00
Lioncash 7842bd1179 Android/ButtonManager: Make most file-scope local variables non-allocating
We can use std::array and const char* to make these capable of fully
being stored in the read-only segment, and get rid of a few static
constructors (144 of them).
2019-06-07 20:27:12 -04:00
Lioncash 069497e87d Android/ButtonManager: Make local file-scope variables internally linked where applicable
Silences a few -Wmissing-variable-declarations warnings.
2019-06-07 20:02:03 -04:00
Lioncash c0c0e412e0 Core/ConfigManager: Use forward declarations where applicable
Avoids dragging in IniFile, EXI device and SI device headers in this header which is
quite widely used throughout the codebase.

This also uncovered a few cases where indirect inclusions were being
relied upon, which this also fixes.
2019-06-07 19:54:39 -04:00
Tillmann Karras 84e3391535 Mark files as non-executable 2019-06-02 12:31:40 +01:00
weihuoya 0dec8feadb android: thread local env 2019-05-29 20:22:26 +08:00
Léo Lam 6eb7c525b2
Merge pull request #7801 from GerbilSoft/feature/Discord-PPCTitleChanged
Update Discord rich presence when the PPC title changes
2019-05-24 14:30:52 +02:00
David Korth 8417c78b7a Update Discord rich presence when the title changes
This allows us to update the rich presence description if a channel
is launched from the Wii Menu. It also handles other PPC title
launches, e.g. Smash Bros. Masterpieces.

Host.h: Added Host_TitleChanged().

DolphinNoGUI/MainNoGUI.cpp: Implemented Host_TitleChanged().
DolphinQt/Host.cpp: Implemented Host_TitleChanged().

Android/jni/MainAndroid.cpp: Stubbed Host_TitleChanged().
DSPTool/StubHost.cpp: Stubbed Host_TitleChanged().
UnitTests/StubHost.cpp: Stubbed Host_TitleChanged().
2019-05-24 14:12:48 +02:00
Connor McLaughlin 1d5dd5db91
Merge pull request #8093 from JosJuice/android-runtime-extension-change
Android: Support changing Wii Remote extension while emulating
2019-05-12 15:22:07 +10:00
weihuoya 8a4d15ae47 Android: change runtime wiimote extension 2019-05-11 15:01:52 +02:00
Techjar ff972e3673 Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
Léo Lam 9133e8f1be Require CMake 3.10 and use CMAKE_CXX_STANDARD
Removes the need to add -std= flags manually. CMake 3.10 is available
in Ubuntu 18.04, which is the oldest LTS version we support.
2019-05-05 00:13:13 +02:00
Léo Lam f4d7b537cc
Merge pull request #7958 from Craftyawesome/cpu-emulation-order
Re-order cpu emulation options from fastest to slowest
2019-05-01 17:56:19 +02:00
weihuoya 47e776d378 rm unused code 2019-04-17 20:15:56 +08:00
weihuoya 04ebee686c simplify config save 2019-04-10 18:32:27 +08:00
weihuoya f2394b8c91 android: simple config load code 2019-04-10 18:30:45 +08:00
Jordan Woyak 5efb717873 InputCommon: Clean up how numeric settings are handled. Add units of measure to UI. Eliminate hidden magic values of the IR cursor. 2019-04-07 09:32:49 -05:00
Craftyawesome 20cc4508f0 Re-order cpu emulation options from fastest to slowest
Based on https://bugs.dolphin-emu.org/issues/11658

Update arrays.xml
2019-04-04 10:51:12 -04:00
JMC47 42964e8531
Merge pull request #7921 from zackhow/fixir
Android: Fix touch IR
2019-03-31 23:15:04 -04:00
zackhow f6225e9694 Android: update IR defaults 2019-03-23 08:54:12 -04:00
zackhow dc51b95313 Android: fix touch ir from pr7829 changes 2019-03-23 08:40:28 -04:00
spycrab 61350b3d98 Core/Host: Allow frontends to block inputs 2019-03-21 13:16:21 +01:00
Tilka 19f4772e47
Merge pull request #7816 from JosJuice/titledatabase-edge-cases
Fix edge cases in TitleDatabase, cover downloading, Gecko code downloading
2019-02-26 04:25:45 +00:00
JosJuice 8842a0f402 Keep track of GameTDB ID separately from game ID
The difference between Dolphin's game IDs and GameTDB's game IDs
is that GameTDB uses four characters for non-disc titles, whereas
Dolphin uses six characters for all titles.

This fixes:

- TitleDatabase considering Datel discs to be NHL Hitz 2002
- Gecko code downloading not working for discs with IDs starting with P
- Cover downloading mixing up discs with channels (e.g. Mario Kart Wii
  and Mario Kart Channel) and making extra HTTP requests. (Android was
  actually doing a better job at this than DolphinQt!)
2019-02-25 19:54:25 +01:00
Mat M de3c8fee22
Merge pull request #7808 from Ebola16/331
Android Studio 3.3.1 Updates
2019-02-25 13:41:16 -05:00
JMC47 fa685afd77
Merge pull request #7723 from zackhow/newcale
Android: Wiimote only(no nunchuck) overlay upgrades
2019-02-25 11:48:05 -05:00
Ryan Meredith f0e6527f3e Android Studio 3.3.1 Updates 2019-02-18 10:32:57 -05:00
JosJuice 286aafd4ed
Merge pull request #7791 from JosJuice/android-show-files
Android: Show files in the directory picker
2019-02-16 18:11:20 +01:00
Mat M 7fb1c1e3a6
Merge pull request #7795 from JosJuice/android-wii-change-disc
Android: Allowing changing disc while emulating Wii
2019-02-08 14:30:42 -05:00
JosJuice 74fced8327 Android: Allowing changing disc while emulating Wii
There's no good reason this should be locked to GameCube.
Think of all the Dragon Quest X fans :(
2019-02-08 19:40:31 +01:00
JosJuice 0fa7b23067 Android: Improve the description for backend multithreading 2019-02-08 19:19:51 +01:00
JosJuice c520a033be Android: Show files in the directory picker
People in the Google Play reviews still seem to be confused about
games not showing up in the directory picker, so let's show them
even though they can't be selected. (Either that or they haven't
realized that they need to extract their pirated games.)
2019-02-08 18:24:37 +01:00
Anthony b72b128076
Merge pull request #7687 from weihuoya/android-minor-fx
Android: some minor changes
2019-02-03 12:48:39 -08:00
Anthony dc15c969ed
Merge pull request #7724 from zackhow/rum
Android: Don't clear vibrators in onStop
2019-02-03 12:45:02 -08:00
Anthony f65b3a998c
Merge pull request #7739 from zackhow/multib
Android: Disable backend multithreading and add option to gfx menu
2019-02-03 12:44:00 -08:00
JosJuice 9c38772301
Merge pull request #7755 from zackhow/score
Android: Update touch pointer from thread.
2019-01-31 22:43:59 +01:00
JosJuice 9340ddc7c9
Merge pull request #7726 from zackhow/rumfast
Android: Optimize rumble call
2019-01-30 19:37:24 +01:00
zackhow 3cc10dcaf9 Android: Call update touch pointer from thread.
Fixes crash in single core when attaching the JVM
2019-01-28 21:42:12 -05:00
JosJuice 3639607849 Android: Add an AutoStartFiles in addition to AutoStartFile
Lets launchers specify multiple discs to launch, for automatic disc
switching.
2019-01-28 20:26:04 +01:00
JosJuice 2c6a975d1f Android: Use SelectedGames instead of SelectedGame in StartupHandler
Regression from the automatic disc change PR. See
https://forums.dolphin-emu.org/Thread-commit-63c9831-broke-game-autostarting-on-android
2019-01-28 20:16:48 +01:00
zackhow 369a5d9963 Android: Add backend multithreading option to gfx menu 2019-01-26 09:44:00 -05:00
zackhow 4979220cf0 Android: Optimize rumble call
Moved rumble call to IDCache since GetMethodID is expensive
2019-01-26 09:38:35 -05:00
zackhow 10238b45a4 Android: Wiimote only(no nunchuck) overlay upgrades
Increase some button sizes
Create new defaults for Wiimote only and horizontal wiimote
2019-01-26 09:30:09 -05:00
spycrab 6962d5bc52
Merge pull request #7478 from stenzek/imgui
Replace raster font with dear imgui
2019-01-25 15:08:40 +01:00
zackhow fc32ec7ffe Android: Fix pointer if game aspect ratio is larger than devices 2019-01-24 22:19:48 -05:00
Stenzek c6f151c4e1 Android: Use scaledDensity as backbuffer scale (for imgui) 2019-01-25 11:15:57 +10:00
Stenzek 82fd923a4e Android: Add getter method for NativeLibrary.sEmulationActivity
Also makes sEmulationActivity private.
2019-01-25 11:15:57 +10:00
Stenzek 600d1fc0bc Renderer: Use imgui for drawing debug text and OSD 2019-01-25 11:15:57 +10:00
zackhow e15af5077f Android: don't init touch pointer when device doesn't have touch 2019-01-23 17:41:33 -05:00
zackhow e8739156e4 Android: Normalize pointer touches based on rendered aspect ratio
This allows the defaults to be actual defaults across devices with different
screen sizes
2019-01-23 17:41:33 -05:00
zackhow ec557eb3a2 Android: double tap screen to press button
Added ingame option to select either wiimote A, B, 2 or Classic A
2019-01-23 17:19:50 -05:00
zackhow f993659249 Android: Add IR width/height/center defaults
The added values were the most common from the few games tested
this can be changed later if thats not the case
2019-01-23 17:16:32 -05:00
zackhow b9e402e8b0 Android: Don't clear vibrators in onStop
Fixes issue where vibration would stop if you swapped between apps mid emulation.
2019-01-21 15:57:05 -05:00
weihuoya bddd0fb44e Android minor changes 2019-01-21 10:30:19 +08:00
zackhow 1db02c14c7 Android: add IR width/height/center option in emu menu
This sets the IR/Width, IR/Height, and IR/Center per game, so a controller profile is used
to save the value, then enable the profile in the game ini, then reload the
control configs.
2019-01-19 23:21:56 -05:00
zackhow 47d6406fd4 Android: Add touch to move pointer in overlay 2019-01-19 23:21:33 -05:00
Léo Lam 2c2910c129
Merge pull request #7522 from mahdihijazi/updates
Android: Bunch of cleanups & Updates
2019-01-16 22:23:40 +01:00
JMC47 1d3e3de44b
Merge pull request #7629 from JosJuice/auto-disc-change
Automatic disc change for 2-disc games
2019-01-15 13:01:36 -05:00
zackhow 058778a2e8 Android: only add controllers GC1 and Wiimote1 as touch controllers 2019-01-11 16:41:59 -05:00
Anthony 3da06970d9
Merge pull request #7605 from zackhow/jitarmconfigs
Android: Add Jit debug options to menu.
2019-01-07 13:50:57 -08:00
Anthony 3e7803b240
Merge pull request #7622 from zackhow/ds4trig
Android: fix/ignore L2/R2 buttons
2019-01-07 13:47:16 -08:00
JosJuice 63c9831b93 Add Android support for automatic disc changing 2019-01-04 09:24:42 +01:00
JMC47 fc68b835e7
Merge pull request #7661 from JosJuice/emulation-touch-button-help
Android: Edit the text that pops up on game launch
2019-01-02 16:37:54 -05:00
JosJuice af2fe0b5c9 Android: Edit the text that pops up on game launch
Some of the recent reviews on Google Play express trouble finding the
emulation activity menu. One of them thought you were supposed to go
to the settings accessible through the main activity to configure the
virtual controller buttons.

This commit changes the text so that the user now explicitly is told to
swipe down from the top of the screen to access the menu. In exchange,
I removed the exact selections to make in the menu so that the text
wouldn't get too long, but I think it shouldn't be too hard to
understand once you know how to open the menu.
2019-01-02 22:26:58 +01:00
JMC47 aac17bf0d8
Merge pull request #7591 from weihuoya/setting-desc
Android: show setting value as description
2019-01-02 15:09:20 -05:00
weihuoya 631463348b Android: show setting value as description 2018-12-25 22:14:09 +08:00
zackhow 7b2629717b Android: Add jit debug menu options 2018-12-21 15:06:37 -05:00
zackhow 0c0e045eda Android: fix/ignore L2/R2 buttons
L2/R2 will trigger a key press and an axis event if the trigger is pressed fully down
Was incorrectly ignoring L1/R1 key presses
2018-12-14 15:31:13 -05:00
zackhow 5bc8b7ae7b Android: fix gc adapter init
init write not read
2018-12-13 21:49:46 -05:00
Léo Lam 4e5f83d23f
Merge pull request #7436 from Ebola16/6
Android Studio 3.2.1 recommended updates
2018-12-05 17:36:25 +01:00
Pierre Bourdon 8104caa06b
Merge pull request #7427 from weihuoya/setting-fx
fx settings for android
2018-11-13 03:10:46 +01:00
weihuoya c4f065611e Android: fx setting 2018-11-13 10:04:44 +08:00
Pierre Bourdon 98d2e278b0
Merge pull request #7551 from zackhow/fixffs
Android: Fix crash on instant rotate
2018-11-09 04:27:59 +01:00
zackhow 5f5262ad34 AndroidTv: don't show landscape lock setting for leanback 2018-11-07 19:50:44 -05:00
zackhow 0446a58ec5 Android: Fix crash on instant rotate
Delay the creation of the emulation fragment if: the device is a phone, if
emulation should be locked to landscape, and the current orientation is
portrait.
2018-11-07 19:44:48 -05:00
Pierre Bourdon 2e370b4ec3
Merge pull request #7532 from mahdihijazi/mahdi/remove_cxl_btn
Android: Remove the cancel button from the file browser
2018-11-07 13:26:26 +01:00
Stenzek 71e3bc40a3 Android: Add defer EFB copies to settings 2018-11-07 16:25:01 +10:00
JosJuice 710b893b91
Merge pull request #7541 from zackhow/notoreo
AndroidTv: Don't run oreo channels when not on oreo
2018-11-03 18:54:27 +01:00
zackhow 409c064c73 AndroidTv: Don't run oreo channels when not on oreo 2018-11-03 08:40:32 -04:00
zackhow 50da284060 Android: don't try to pause emulation when not running
Forcing landscape at emulation start revealed a bug where if the activity was
recreated before emulation started then it would get stuck in a paused state
2018-11-03 00:01:51 -04:00
Ryan Meredith 66598f6c8d Android Studio 3.2.1 recommended updates 2018-11-02 13:04:14 -04:00
zackhow b7d0b27a8c Android: fix landscape lock
If emulation started in landscape then it wouldn't lock to landscape, thus
allowing a rotation to portrait then immediately back to landscape. Also
locking to landscape didn't need to be called from another thread, so that
was removed as well
2018-10-30 19:54:44 -04:00
mahdihijazi 47d9e8208c Android: Remove the cancel button from the file browser
Fix the regresion from #7520, also it applies the change
to the directory picker only.
2018-10-29 22:19:18 +01:00
mahdihijazi 9a45c62896 Android: Remove the use of restericted API and give AS a break 2018-10-29 21:52:29 +01:00
mahdihijazi fe9212a515 Android: Remove legacy hack that is not needed anymore 2018-10-29 21:37:44 +01:00
mahdihijazi 6be72e8cbb Android: Fix gradle warning
Picasso is using an old version of the support lib which creates a conflict
for the exifinterface support librar, this will make sure to use the
version Dolphin is using which is 27.1.1
2018-10-29 21:37:44 +01:00
mahdihijazi 593b69728d Android: Remove dead code and related lib <circleimageview> 2018-10-29 21:37:44 +01:00
mahdihijazi 5e1a3f11a5 Android: Remove rxjava lib
No need to keep rxjava lib around for one simple use case
2018-10-29 21:37:26 +01:00
mahdihijazi 1da69811b8 Android: Update Picasso lib to latest version 2018-10-29 21:37:26 +01:00
zackhow e02b80cfa8 Android: fix custom game control ui
Missed in previous rebase
2018-10-28 23:18:17 -04:00
zackhow 1b3db3d8c1 Android: fix ATV not exiting
regression from 1e3a297900 PR7518
2018-10-28 21:29:50 -04:00
zackhow f46157793f Android: Update rumble settings for use in game profiles 2018-10-28 20:44:41 -04:00
zackhow 471485071d Android: Move profile check to when it is saving 2018-10-28 20:22:06 -04:00
zackhow 405b37deaa Android: Speed up game settings saving
Previously would take several seconds to save, sometimes causing ANRs, which
was made worse when adding all the controller values. Now we only load/save
each section instead of doing it for each setting. Also added a method
to save an individual setting.
2018-10-28 20:22:06 -04:00
zackhow 5d93a10c60 Android: Add game specific gc/wii controller settings 2018-10-28 20:22:06 -04:00
Pierre Bourdon eb35514f3b
Merge pull request #7443 from zackhow/device-rumble
Android: Add controller rumble support
2018-10-28 23:59:11 +01:00
Pierre Bourdon 2bbc9d40f0
Merge pull request #7520 from mahdihijazi/app_bundles
Android: Change the file browser dialog ok button title
2018-10-28 23:55:34 +01:00
Pierre Bourdon 1cb0900a10
Merge pull request #7518 from weihuoya/remove-animation
[Android] Remove enter and exit transition
2018-10-28 23:53:06 +01:00
zackhow 3499a416e7 Android: Add controller rumble support
Android can be funky with controller vibration. Of the three controlers I have that contain a
vibrator(PS3, Xbox360, 2017 Shield controller), only the Xbox360 controller registered as having
a vibrator. So YYMV depending on the driver support of the device.
2018-10-27 14:25:17 -04:00
JosJuice ce640e129d Android: Don't create a savestate when rotating 2018-10-27 15:52:39 +02:00