Commit Graph

489 Commits

Author SHA1 Message Date
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
JosJuice
828c2c44ca Bring the Android GUI setting for ubershaders up to date
9fa2470 changed how the ubershader setting is stored in INIs but didn't
update the Android GUI code to reflect that, so the setting in the
Android GUI has been broken starting with that commit.

Fixes https://bugs.dolphin-emu.org/issues/10947
2018-03-15 19:15:13 +01:00
Greg Wicks
b28236611d Android: Make on-screen joysticks center on the initial touch input. 2018-02-21 20:36:03 -05:00
Markus Wick
9d3d31a8e8
Merge pull request #6387 from mahdihijazi/fix_build_no
Android: Use the git rev-list --count for versionCode
2018-02-20 10:42:22 +01:00
Stenzek
0dddaf9d7d Android: Update renderer surface before resuming emulation
Previously, this could cause a race condition which resulted in the
Vulkan backend attempting to acquire a swap chain image from a now
non-existant surface. By ensuring the backend knows about the surface
before a frame is presented, this race does not happen.
2018-02-20 01:15:55 +10:00
mahdihijazi
135ac2a7a8 Android: Use the git rev-list --count for versionCode 2018-02-19 15:33:46 +01:00
Greg Wicks
e19922c5de Android: Implement game-specific settings overrides UI 2018-02-16 13:47:52 -05:00
Markus Wick
5ba18f642c
Merge pull request #6306 from mahdihijazi/fix_hardcoded_path2
Android: Don't hard code the user dircetory path to /sdcard/dolphin-emu
2018-01-26 11:38:51 +01:00
mahdihijazi
ae8b469b80 Android: Don't hard code the user dircetory path to /sdcard/dolphin-emu
Android is allowed to pick any path for the external storage media and
that's why we should always use Environment.getExternalStorageDirectory()
to get the external storage path
2018-01-24 12:15:59 +01:00
Léo Lam
c3dc8bf1c0
Merge pull request #6310 from mahdihijazi/fix_animation
Android: Fix settings screen animation if Animator Duration Scale is Off
2018-01-24 12:14:21 +01:00
mahdihijazi
c9dc585dcb Android: Support change disc 2018-01-21 13:59:36 +01:00
mahdihijazi
e2dbf10ee5 Android: Keep the local copy of the mSurface
onCreateView might not be called after resuming the emulatoin wich will
leed the game to stuck in the middle since mRunWhenSurfaceIsValid will be
true but surfaceChanged will never be called in this case.
2018-01-21 01:30:45 +01:00
mahdihijazi
53f2fcb571 Android: Fix settings screen animation if Animator Duration Scale is Off
If Animator Duration Scale is Off, the Enhancements/Hacks screens were
not visible unless you enable the Animator Duration Scale back. This
make sure screens will be visible regardless of your animation settings.
2018-01-19 11:55:20 +01:00
Léo Lam
ec78118a43
Merge pull request #6302 from JosJuice/gradle-compile
Use "implementation" for all dependencies in build.gradle
2018-01-13 11:25:37 +01:00
JosJuice
83870fbcf0 Use "implementation" for all dependencies in build.gradle 2018-01-12 21:29:42 +01:00
Markus Wick
41fe276323
Merge pull request #6295 from 34will/master
Yes/No Dialogs for Android
2018-01-10 14:55:37 +01:00
34will
10ea9e5f5b Added an actual implementation for yes/no dialogs on Android using Object.wait and Object.notify.
Modified NativeLibrary to display alerts in AlertDialogs rather than Toast notifications, and allow yes/no options.
Modified MainAndroid to use the new displayAlertMsg, and to return its output.
2018-01-10 13:41:57 +00:00
Markus Wick
a1467f0e5a
Merge pull request #6282 from mahdihijazi/replace_file_browser
[Android] Replace current file browser
2018-01-10 09:50:16 +01:00
mahdihijazi
409ae4c444 [Android] Replace current file browser
1. Allow users to pick games dircetory from external storage.
2. Better UX experince to distinguish between selecting a directory or
a game. The later is needed when we implement change disk for android.
2018-01-05 21:43:19 +01:00
Markus Wick
e705d43312
Merge pull request #6270 from mahdihijazi/suppport_restore_state
[Android] Support restore emulator state
2018-01-05 13:45:36 +01:00