Commit Graph

1199 Commits

Author SHA1 Message Date
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