Commit graph

808 commits

Author SHA1 Message Date
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
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
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 AlertDialogs 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
Simonx22
6f10730abf update androidSupportVersion and compileSdkVersion to 28 2019-11-09 23:28:22 -05:00
Simonx22
be489443bd target Android SdkVersion 28 2019-11-09 02:17:22 -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
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
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
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
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
Tillmann Karras
84e3391535 Mark files as non-executable 2019-06-02 12:31:40 +01: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
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
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
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
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
JMC47
fa685afd77
Merge pull request #7723 from zackhow/newcale
Android: Wiimote only(no nunchuck) overlay upgrades
2019-02-25 11:48:05 -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
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
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
82fd923a4e Android: Add getter method for NativeLibrary.sEmulationActivity
Also makes sEmulationActivity private.
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
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
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
mahdihijazi
cc4d998118 Android: Change the file browser dialog ok button title
I hope this will make it more clear to users that they are suppose to
select the dircetory that has the games.
2018-10-27 15:35:33 +02:00
weihuoya
1e3a297900 android: remove enter and exit transition 2018-10-27 18:29:01 +08:00
Pierre Bourdon
d0c29f8814
Merge pull request #7514 from zackhow/no-rumble
Android: Don't require vibrate permission
2018-10-25 23:16:14 +02:00
zackhow
df12942244 Android: Don't require vibrate permission
Google Play won't distribute the app to devices that do not allow
the vibrate permission if required is not false.
2018-10-25 17:13:10 -04:00
zackhow
9e44df1d3a Android: lock screen to landscape by default
A new setting has been added to the general config to allow rotation. This should
resolve a lot of crash complaints due to screen rotation.
2018-10-24 21:43:09 -04:00
zackhow
cd02a16a07 Android: fix crash on rotate 2018-10-13 07:22:38 -04:00
Mat M
7ac90b55d6
Merge pull request #7466 from zackhow/hide-savestate
Android: Require user to enable savestate menu options
2018-10-12 10:27:44 -04:00
zackhow
e52be87bf1 Android: Require user to enable savestate menus
With the nature of android updates invalidating save states, it's best to hide
these options unless enabled by the user. The option to use savestates can now
be enabled via the General settings menu.
2018-10-07 12:57:27 -04:00
JosJuice
683eef3044
Merge pull request #7413 from zackhow/launcher-crash
Android: Run Directory Initialization as a thread instead of service
2018-10-05 15:45:36 +02:00
JosJuice
4a7715927e
Merge pull request #7392 from weihuoya/android-menu-fx
Menu show action fx for android
2018-09-26 19:54:36 +02:00
zackhow
67902a7091 Android: Layout for emulation when phone is portrait
This sets the surfaceview to the top half of the screen instead of it sitting in the middle which gives more room for onscreen controls.
2018-09-21 17:20:13 -04:00
zackhow
f05d85dfe4 Android: add reset touch overlay 2018-09-21 17:20:13 -04:00
zackhow
ab46f0cb82 Android: Add default portrait touch overlays 2018-09-21 17:18:30 -04:00
zackhow
afe59c50c4 Android: add profile for portrait touch overlay 2018-09-21 17:18:30 -04:00
Markus Wick
85961f996e
Merge pull request #7400 from zackhow/phone-rumble
Android: Add rumble for phone
2018-09-21 17:05:46 +02:00
zackhow
1311f84706 Android: Run Directory Initialization as a thread instead of service
Two reasons for this change. First, it appears that some android launchers do some sort of call into
the application when long pressing the app icon, which in turn calls the DirectoryInit service. This
was ok to do prior to Oreo but will cause crashes with the new restrictions on services running
in the background. Which leads to the second reason that DirectoryInit doesn't need to be a service
at all since these actions are required for dolphin to function and shouldn't be a scheduled action.
So we instead just kick this off in a new thread and send the broadcast when done.
2018-09-14 09:54:36 -04:00
zackhow
126ff8dc5f Android: Add rumble for phone
This currently only supports using the internal vibrate on a phone for rumble.
2018-09-07 08:54:03 -04:00
weihuoya
c062258719 use app:showAsAction 2018-09-03 16:07:45 +08:00
Anthony
4a34dba001
Merge pull request #7387 from zackhow/covers-nostretch
Android: Fix cover stretching and show more games per row
2018-08-31 19:29:49 -07:00
zackhow
374b0bf2dc Android: show more games per row 2018-08-31 21:15:28 -04:00
zackhow
ec0e1d2826 Android: Fix cover stretching 2018-08-30 17:14:09 -04:00
zackhow
169e41aa30 Android: fix crash if user is offline
If the user is offline, then there won't be a network response. Just debug log that the report couldn't send and move on
2018-08-29 16:41:47 -04:00
zackhow
bbf2184933 Android: Analytics - get android ui type when called instead of setting it ahead of time
It's possible to not have set the device type if the user launches a game without going to the main activity(like launching from the TV menu)
2018-08-28 18:23:57 -04:00
riking
248ee12aed Reformat Android code 2018-08-26 21:37:54 -07:00
Pierre Bourdon
eef47990d9
Merge pull request #7339 from weihuoya/cache-all-page
Android: cache all page, avoid image flicking when swipe from last page to first page
2018-08-27 04:41:23 +02:00
Pierre Bourdon
246b1f4459
Merge pull request #7350 from zackhow/android-analytics
Android: Add usage statistics to android
2018-08-27 04:37:17 +02:00
Pierre Bourdon
b571d0c537
Merge pull request #7355 from hackbar/style-cleanup
Style cleanup
2018-08-27 04:32:50 +02:00
zackhow
a26cf8febc Android: Analytics - Set new session after being closed for 6 hours 2018-08-25 16:57:07 -04:00
Mike
308ae11f2b Android: add a description for 'Compile Shaders Before Starting'
Before this, it was using 0 as a resource ID. That has undefined
behavior, and seemed to use a previous string.
2018-08-24 08:50:29 -07:00
Mike
55e4637b42 Android: add braces to a one-line if block
There isn't an official Java style, but this seems to be consistent with
everything else. Also it's weird to see one one liners without braces in
Java.
2018-08-24 08:50:29 -07:00
Mike
6d954afddd Android: minor spacing and brace fix.
There isn't an official Java style, but this seems to be consistent with
everything else.
2018-08-24 08:50:25 -07:00
Mike
fda785c452 Android: whitespace fix 2018-08-23 18:32:29 -07:00
Mike
dd8d7bba98 Android: Get rid of the per-platform styles, as we only using the GC one.
I think the intention might have been to switch styles based on what
platform was selected, but that never happened. Instead, everything just
used the GC styles.

All the platform-specific styles did was add an accent color (which
tints the checkbox and text area elements). This adds a specific color for
that instead of abusing a platform color.

There should be no visual changes for this commit.
2018-08-23 18:32:29 -07:00
zackhow
82f82a6b7d Android: Add usage statistics to android.
Added an option in General config to enable/disable usage statistics. Added a popup on first open if
the user would like to engage in reporting. Clicking cancel or out of the box opts out. Only
clicking 'Ok' will enable reporting. Also added a new android specific values to report.
2018-08-23 17:31:17 -04:00
JosJuice
c3b0208de6
Merge pull request #7340 from zackhow/enable-touch-con
Android: Set GC controller 1 to enabled if settings don't exist
2018-08-19 20:32:21 +02:00
JosJuice
b2880d0330
Merge pull request #7336 from zackhow/extension-ui-bug
Android: Fix wiimote extension from defaulting to none in UI
2018-08-19 20:31:21 +02:00
zackhow
afc1876e49 Android: Set GC controller 1 to enabled if settings don't exist
If a user changes any config options before starting emulation then all SIDevices are set to 0.
This was added in PR 6267(commit 58ee9d2a78) to fix a bug.
2018-08-17 08:20:22 -04:00
weihuoya
4f90bcce63 cache all pages, android 2018-08-16 14:10:44 +08:00
zackhow
4c281f72b6 Android: Enhance Dpad movements/touches
Allows you to 'slide' your finger to move across the dpad like a joystick.
2018-08-15 21:13:11 -04:00
zackhow
a20513eff9 Android: Fix wiimote extension from defaulting to none in UI
Another index disconnect between the padId's and the wiimote numbers. This was done correctly when saving but not when reading the current value
2018-08-15 17:39:22 -04:00
zackhow
1f40efda5d Android: Don't crop covers 2018-08-13 17:39:26 -04:00
zackhow
3f21975d2a Android: Update mobile and TV to use game covers
Using covers should give a consistent look to dolphin's library.
2018-08-13 08:24:52 -04:00
Markus Wick
84c24516b1
Merge pull request #7306 from zackhow/touch-button-placement
Android: Add default touch button overlay
2018-08-13 13:44:03 +02:00
Markus Wick
9322c0edfa
Merge pull request #7320 from zackhow/leanback-button-clear
Android: Clear controller binding by long press on TV
2018-08-13 13:42:48 +02:00
zackhow
a2f90d3915 Android: require back to be pressed twice to exit on mobile 2018-08-12 06:59:06 -04:00
zackhow
51fa5d2fd8 Android: Clear controller binding by long press on TV
The TV interface can't 'click' the clear button, this gives TV a way to clear
2018-08-11 21:47:49 -04:00
zackhow
75f4e74e94 Android: Add default touch button overlay
This sets up default positions for touch buttons so they are not just bunched in the corner on a fresh install. Also added a toast when emulation starts on how to edit button layout
2018-08-11 12:56:23 -04:00
Markus Wick
74057ec222
Merge pull request #7303 from zackhow/exitemumenu
Android:  Add exit to phone emu menu
2018-08-09 10:19:25 +02:00
Markus Wick
bfbf9ed2ee
Merge pull request #7292 from mahdihijazi/settings_refactor
Android: Settings refactor & Fix custom game settings
2018-08-09 10:17:03 +02:00
zackhow
58aa6b9905 Android: Add exit to phone emu menu
Some phones that have capacitive nav bar buttons disable those buttons while in emulation. This gives those devices a way to exit
2018-08-06 22:26:58 -04:00
mahdihijazi
f41785e1b9 Android: Reflect the settings that is being used by the emulator on the UI
Per-Game settings now load the settings in this order
1. Emulator Settings
2. Default Settings of the Game that we ship with Dolphin
3. Custom game settings the user have

where the later always overides the former in case of collision, then
we show that on the UI to make it clear to the user which settings being
used.
2018-08-05 01:33:30 +02:00
zackhow
ec5e46fa7a Android: Return 0 on fail on WiimoteReal IOWrite and update WiimoteNew defaults
Some of the write checks do an & on the result, returning 0 will allow these fails to be caught.
Updated the default WiimoteNew to set wiimotes 2-4 to be disabled on new install. No reason to have these
enabled unless there is actually a 2+ players
2018-08-03 19:46:26 -04:00
mahdihijazi
ed1c91b4f6 Android: Fix custom game settings
Apparently there was a different section names used by the custom game
settings that caused Android to have those settings broken for
some sections like the graphics one. This adds the map between the generic
settings <> custom settings.
2018-08-03 22:45:52 +02:00
mahdihijazi
c664bb7458 Android: Refactor the settings managemnt
1. Create Settings class the encaupslate the loading/saving of all settings
2. Decouple the logic of saving the settings into 3 different config files
from the UI code.
2018-08-03 21:45:39 +02:00
mahdihijazi
61835a7e08 Android: Start structure the project around features instead of data types
This only moves the settings feature, the rest will be moved slowely later
2018-08-03 21:41:34 +02:00
zackhow
be02a8e70b Android: Fix wiimote settings saving.
Index was off by one, so if you enabled Emulated Controller for
wiimote1, it would set the 'Source = 1' for wiimote0.
2018-07-30 19:50:45 -04:00
zackhow
38c8d970f2 Android: Fix emulated wiimotes via controller
A little background: Android has 8 controller setup, 4 gamecube pads and 4 wiimote pads. When the static GCPadNew.ini and wiimotenew.ini is created, pads 0-3 are gc 1-4, and 4-7 are wii 1-4. Problem was the settings set wii controllers as pads 1-4, instead of 4-7. So any setting for wiimote1, was set for gc2(padID 1). Which is why the only wiimote to work was 4, since it mapped to padID 4, which is actually wiimote1.
2018-07-29 21:24:28 -04:00
Markus Wick
be9437450e
Merge pull request #7234 from zackhow/master
Android: Support for AndroidTV Oreo Homescreen channels
2018-07-22 15:02:49 +02:00
zackhow
0488fe1d30 Android: Support for AndroidTV Oreo Homescreen channels 2018-07-20 17:56:45 -04:00
JosJuice
7f6be99ad9 Android: Make ControllerMappingHelper methods static
This class has no state.
2018-07-11 14:00:57 +02:00
JosJuice
78cb1c2914 Android: Remove controller-specific code that isn't needed anymore 2018-07-11 14:00:37 +02:00
JosJuice
d32c297c0d Android controller mapping: Ignore axes with constant values
Some controllers have axes that are stuck to values like 0.5 or 1.
Starting with PR #6123, when you press a control to map, Dolphin will
immediately think that such an axis is the axis that you want to map.
This commit fixes that issue (https://bugs.dolphin-emu.org/issues/10909)
2018-07-11 13:59:22 +02:00
Markus Wick
d819df1d08
Merge pull request #7186 from gwicks/androidTouchJoystickRelCenter
Android: Make touch joystick re-centering configurable
2018-07-11 08:41:06 +02:00
Markus Wick
fd83937987
Merge pull request #6338 from mahdihijazi/settings_enhancements
Update Android UI Settings to have the most common used settings
2018-07-04 21:50:09 +02:00
Markus Wick
0cf205f947
Merge pull request #7211 from mahdihijazi/upgrade_targetsdk
Android: Upgrade targetSDK to 27 and androidSupportVersion to 7.1.1
2018-07-04 21:45:13 +02:00
mahdihijazi
e8ad6e4d49 Upgrade targetSDK to 27 and androidSupportVersion to 7.1.1 2018-07-02 16:40:16 +02:00
mahdihijazi
03fd8ddce6 Disable automatic backup
Since we don't have proper confuguration file of what to include/exclude
in the backup, this better be disabled because it will lead to unexpected
state. This will solve any issue that was keep hapenning even after fresh
install of the emulator until you manually clear the app data.
2018-07-02 16:24:57 +02:00
mahdihijazi
77e51ab527 Android: Make the header focusable
otherwise the settings list scrolling is not working properly
on Android Oreo(Tv)
2018-07-01 22:25:14 +02:00
mahdihijazi
a639fa9a81 Android: Expose arbitrary mipmap detection toggle in UI 2018-07-01 22:25:14 +02:00
mahdihijazi
e7d295894a Android: Support GameCube System Language 2018-07-01 22:25:14 +02:00
mahdihijazi
d5a048a2ba Android: Create didcated sections for GameCube & Wii
This align the Android UI with the desktop UI
2018-07-01 22:25:14 +02:00
mahdihijazi
5010dfde7e Android: Support WideScreen Hack 2018-07-01 22:25:13 +02:00
mahdihijazi
84229c0c05 Android: Support SpeedLimit config option 2018-07-01 22:25:13 +02:00
mahdihijazi
b924445e48 Android: Support Post Processing Shaders 2018-07-01 22:25:13 +02:00
mahdihijazi
b4bb213ffd Android: Add Force 24-Bit Color enhancement option 2018-07-01 22:25:12 +02:00
mahdihijazi
ef23d97063 Android: Refine the Graphics Settings Screen
1. Add General Section
2. Move the Aspect Ration Settings from the Enhancmenets Section to
the General section to match the desktop GUI.
2018-07-01 22:25:12 +02:00
mahdihijazi
e0e9b43559 Android: Rename main settings buttons to match the desktop version
- Video Settings to Graphics Settings
- CPU Settings to Config
2018-07-01 22:25:12 +02:00
mahdihijazi
9316537964 Android: Change the incremental value of the slider to be 5% instead of 20% 2018-07-01 22:25:12 +02:00
mahdihijazi
87534f1b2f RfC: Refactor the settings for Android to use dedicated tags
Before we used different way of identifying which settings menu to
show, someotimes we used the section name, other times we used the
settings file name. This one replaces all those different ways by just
one way based on a menu tag which is more clear and easy to follow.
2018-07-01 22:25:05 +02:00
Greg Wicks
82ec3c929c Android: Make touch joystick re centering configurable 2018-06-29 16:09:59 -04:00
JosJuice
1073aa4602
Merge pull request #7181 from Ebola16/R
Android: Properly set default Internal Resolution
2018-06-29 09:40:09 +02:00
Ryan Meredith
cdbc61dd0e Android: Properly set default Internal Resolution 2018-06-28 22:14:53 -04:00
JosJuice
d1a82182ac Android: Use case insensitive sorting in game list 2018-06-18 19:11:58 +02:00
Léo Lam
bd85d63c62
Merge pull request #7120 from Ebola16/313
Update Android Gradle to 3.1.3 and minor improvements
2018-06-15 19:54:49 +02:00
Ryan Meredith
31b3647d73 Android: Add Emulated CPU Clock description and minor cleanup 2018-06-14 23:15:39 -04:00
Ryan Meredith
fb3ae94acb Android: Add AlertDialog for files without Game IDs in Game Settings 2018-06-09 11:30:20 -04:00
JosJuice
f0f8ca2172 Android: Don't allow INI editing for DOL/ELF files 2018-06-06 17:34:08 +02:00
JosJuice
1c027bc148 Use UICommon's game list code on Android
Deduplicates code, and gets rid of some problems the old code had
(such as: bad performance when calling native functions, only one
disc showing up for multi-disc games, Wii banners being low-res,
unnecessarily much effort being needed for adding more metadata).
2018-06-06 17:34:07 +02:00
JosJuice
daee5a4b43 Android: Store folders to scan in SharedPreferences instead of SQLite
Needed in order for the next commit to get rid of the SQLite database.
2018-06-04 22:12:25 +02:00
Léo Lam
86368fcd4d
Merge pull request #6499 from Ebola16/SettingsGroup
Android: Initial implementation of Interface submenu
2018-06-03 12:02:56 +02:00
JosJuice
1b127bdf33 Android: Refresh all fragments, not just the selected one
This fixes the oddity of having to manually refresh after adding a
folder that contains games for a different tab than the one you're on.
2018-06-01 18:17:51 +02:00
Ryan Meredith
4e010912cd Android: Consistently use description 2018-06-01 09:58:34 -04:00
Ryan Meredith
c448fceb26 Rename strings to specify INI vs submenus 2018-05-03 16:09:46 -04:00
Ryan Meredith
532493bed5 Android: Update Stereoscopy submenu string names 2018-05-03 16:09:45 -04:00
Ryan Meredith
4c40871fff Android: Add missing Show FPS description 2018-05-03 16:05:22 -04:00
Ryan Meredith
c2355d4f63 Android Interface submenu: Add Show OSD Messages 2018-05-03 16:05:22 -04:00
Ryan Meredith
25179258b7 Android: Initial implementation of Interface submenu 2018-05-03 16:05:22 -04:00
Distro Lucas
dbeec37b0f Fixed aspect ratio bigger than 16:9 on Android Devices 2018-05-02 22:21:28 -03:00
Stenzek
ea4090d92c Dolphin: Add disable copy filter to graphics options 2018-04-29 19:05:20 +10:00
Ryan Meredith
00db87e304 Android: Updates for Android Studio 3.1 2018-03-28 16:38:22 -04:00
Stenzek
2f1a7cbee1 Implement "Skip" ubershader mode
Skip ubershader mode works the same as hybrid ubershaders in that the
shaders are compiled asynchronously. However, instead of using the
ubershader to draw the object, it skips it entirely until the
specialized shader is made available.

This mode will likely result in broken effects where a game creates an
EFB copy, and does not redraw it every frame. Therefore, it is not a
recommended option, however, it may result in better performance on
low-end systems.
2018-03-26 01:57:41 +10:00