Commit graph

723 commits

Author SHA1 Message Date
JosJuice
1fdabc7481 Android: Exit emulation by long pressing Back 2020-09-08 16:39:34 +02:00
JosJuice
a03f40ab15 Android: Change "Exit" to "Exit Emulation" 2020-09-08 16:39:34 +02:00
JosJuice
29bb51c456 Android: Adjust margins for game title in menu 2020-09-08 16:39:34 +02:00
JosJuice
7aa9222dac Android: Hide Refresh Wii Remotes menu entry for GameCube games 2020-09-08 16:39:34 +02:00
JosJuice
36a3b54c1f Android: Port over settings from the old menu 2020-09-08 16:39:34 +02:00
JosJuice
364b9702f4 Android: Use narrow layout for savestate slot picker in portrait 2020-09-08 16:35:26 +02:00
JosJuice
772a98e853 Android: Ensure menu is always wide enough
25% of the screen isn't necessarily wide enough on phones,
especially not in portrait mode.
2020-09-08 16:35:26 +02:00
JosJuice
48de1333df Android: Close the menu when tapping outside of it 2020-09-08 16:35:26 +02:00
JosJuice
48c34bba8a Android: Don't hide the menu when pressing Exit
Removing the menu for a split second before showing the transition
back to the main activity looks janky.
2020-09-08 16:27:09 +02:00
JosJuice
27554d2f26 Android: Remove inappropriate leanback checks
Android TV devices aren't the only devices without touchscreens.

Regarding MotionAlertDialog, I could've replaced the leanback
check with a touchscreen check instead of just removing it,
but I thought there was no reason to prevent people with
touchscreens from doing a long back press if they want to.
2020-09-08 16:27:09 +02:00
JosJuice
cf51642c17 Android: Use Back to open the emulation menu on all devices
https://bugs.dolphin-emu.org/issues/12029

We currently have one way of opening the menu on touch screen
devices (swiping down from the top of the screen to bring up the
action bar and selecting the menu in the action bar), and another
way of opening the menu on Android TV (pressing Back). However,
some devices that claim to support touch (or don't support
leanback? Dolphin currently conflates the two) don't actually let
you swipe down from the top of the screen in the way that Dolphin
expects, notably Chromebooks. There are also some phones where you
can swipe down from the top of the screen but this for some reason
doesn't lead to the action bar becoming visible, though we are
getting less reports about this nowadays than in the past.

This change makes us use the Back method on all devices,
since it should work on all devices with no significant drawbacks.

Unfortunately, we not only have two different ways of triggering
the menu but actually two entirely different menus, with the
non-touch menu not implementing options that only are revelant
when using a touch screen. A later commit will add the missing
features to the menu that we now use on all devices.
2020-09-08 16:27:09 +02:00
LC
67761c7d31
Merge pull request #9067 from Ebola16/Fixes4
Android: Optimize imports
2020-09-08 09:47:59 -04:00
Ryan Meredith
1aacb575de Android: Remove calling create immediately before show 2020-09-08 06:20:19 -04:00
Ryan Meredith
10e85ff40c Android: Remove unnecessary getString calls 2020-09-08 06:14:58 -04:00
Ryan Meredith
255e8ff007 Android: Optimize imports 2020-09-08 06:01:34 -04:00
LC
a3dfb228fd
Merge pull request #9062 from JosJuice/android-dir-init-fail-message
Android: Optional AfterDirectoryInitializationRunner failure message
2020-09-07 22:33:52 -04:00
LC
95376208a1
Merge pull request #9064 from JosJuice/android-filepicker-normal
Android: Make FilePicker act like a normal setting
2020-09-07 22:33:10 -04:00
JMC47
344fdabf23
Merge pull request #8943 from JosJuice/android-horizontal-wiimote-buttons
Android: Fix saving Horizonal Wii Remote overlay A/B/1/2 positions
2020-09-06 17:09:51 -04:00
JosJuice
00a8f4faaa Android: Make FilePicker act like a normal setting
The reason why the finish() call was added no longer exists.
(Also, there was never a duplicate SettingsActivity as far as
I can tell, only a duplicate SettingsFragment.)
2020-09-06 14:41:01 +02:00
JosJuice
ee9444a8f9 Android: Create separate InvertedCheckBoxSetting and PercentSliderSetting classes
This way we don't have to hardcode any keys inside the classes.
2020-09-06 13:29:57 +02:00
JosJuice
c6a308380c Android: Replace Java INI parser with C++ INI parser
Fixes https://bugs.dolphin-emu.org/issues/12096.
2020-09-06 13:29:56 +02:00
JosJuice
74f197caed Android: Expose a proper interface for C++ IniFile class
Replaces the inflexible INI functions in NativeLibrary.
2020-09-06 13:29:52 +02:00
JosJuice
2959e76f4a Android: Optional AfterDirectoryInitializationRunner failure message
This centralizes the code for showing the write_permission_needed
and external_storage_not_mounted toasts.
2020-09-06 00:47:36 +02:00
LC
fb32f1ab88
Merge pull request #9042 from Ebola16/FP
Android: Minor cleanup
2020-09-01 07:27:07 -04:00
LC
d17c407f09
Merge pull request #9052 from Ebola16/GCAT
Android: Better GCAdapter scanning thread management
2020-09-01 07:25:59 -04:00
Ryan Meredith
05f3c4d579 Android: Remove unused files 2020-08-31 11:42:27 -04:00
Ryan Meredith
85ddb8fc86 Android: Minor cleanup 2 2020-08-31 11:23:59 -04:00
Ryan Meredith
30ea98177a Android: Minor cleanup 2020-08-31 07:20:02 -04:00
Ryan Meredith
7d39ed9bcc Android: res cleanup 2020-08-31 06:49:10 -04:00
Ryan Meredith
9fe6466c79 Android: Better GCAdapter scanning thread management 2020-08-27 07:43:20 -04:00
Ryan Meredith
d5ea4b4b80 Android: Prevent getSetting ClassCastExceptions in ItemViews 2020-08-21 11:09:24 -04:00
LC
905df6756b
Merge pull request #9024 from JosJuice/android-wiimote-false
Android: Fix defaults for WiimoteContinuousScanning/EnableSpeaker
2020-08-17 15:25:23 -04:00
JosJuice
ac17e49243 Android: Take RTL layout into account for menu animations 2020-08-17 19:37:40 +02:00
JosJuice
bd9d0964cd Android: Fix defaults for WiimoteContinuousScanning/EnableSpeaker
The default values need to match the default values defined in C++.
2020-08-11 09:18:15 +02:00
JosJuice
02fe1cdec4 Android: Rewrite GetRenderSurfaceScale in Java
Long sequences of JNI calls are both hard to read and slow.
2020-08-09 21:07:22 +02:00
LC
5ec65a20d6
Merge pull request #9009 from JosJuice/android-settings-recreation
Android: Fix SettingsActivity lifecycle management
2020-08-06 19:46:16 -04:00
LC
d8c0344ee8
Merge pull request #9010 from JosJuice/android-settingsadapter-redundant-static
Android: Remove some static variables from SettingsAdapter
2020-08-06 19:45:54 -04:00
JosJuice
05e49b13ef Android: Fix SettingsActivity back stack behavior after stop+start
Fixes the behavior where the settings activity would go back to
the top-level menu after switching to a different app and back.
2020-08-05 21:21:45 +02:00
JosJuice
a427eafa7b Android: Persist Settings using ViewModel
Just for maintainability. This is a shorter and more standard
solution compared to our current one where the Fragment
persists the Settings and passes it to the Activity.
2020-08-05 19:50:11 +02:00
JosJuice
e3911736c2 Android: Remove some static variables from SettingsAdapter
All of these have non-static equivalents (mView and mClickedItem).
2020-08-05 18:47:17 +02:00
JosJuice
c727f03590 Android: Properly restore state of SettingsActivityPresenter
Fixes https://bugs.dolphin-emu.org/issues/10815
2020-08-05 13:21:07 +02:00
JosJuice
7414020563
Merge pull request #8966 from Ebola16/WP
Android: Clear game profiles and GameSettings
2020-08-02 22:06:16 +02:00
JosJuice
e33876fbe2
Merge pull request #8978 from Ebola16/RS
Android: Settings and Emulation activities skip (Tv)MainActivity library rescan
2020-08-02 22:05:38 +02:00
JosJuice
234eaa0ff9
Merge pull request #7252 from Ebola16/Log
Android: Add Log Configuration to UI
2020-08-02 22:00:48 +02:00
JosJuice
bf3d1fa2d8
Merge pull request #8858 from Ebola16/PUP
Android: Add Pause / Unpause Emulation Toggle
2020-08-02 21:56:25 +02:00
Ryan Meredith
12d277b4a0 Android: Add Pause / Unpause Emulation Toggle 2020-07-29 13:03:52 -04:00
JosJuice
709031bb1d Android: Remove touchscreen check for rumble
That a device doesn't have a touchscreen doesn't necessarily mean
that it doesn't support rumble (though it is usually the case).
setPhoneVibrator already contains a check for whether the device
supports rumble, so we can simply remove the touchscreen check.
2020-07-29 17:48:56 +02:00
JosJuice
9c44ad11e3 Android: Set preferMinimalPostProcessing="true"
When using the combination of Android 11 and HDMI 2.1,
this will send a signal to the TV suggesting it to switch to
a low latency mode ("game mode").
2020-07-28 22:21:57 +02:00
Ryan Meredith
fdcc6a436b Android: Add Log Configuration to UI 2020-07-24 13:59:13 -04:00
Ryan Meredith
e7d53224b2 Android: Clear game profiles and GameSettings 2020-07-24 13:36:38 -04:00