Commit graph

539 commits

Author SHA1 Message Date
Ryan Houdek
0d63dd5e53 Update the android cmake toolchain file to support 64bit.
This is available in a PR here: https://github.com/taka-no-me/android-cmake/pull/23
The maintainer of the android toolchain cmake file seems to be AWOL for now.
I have tested this file personally and it works, it just isn't merged in yet
2014-08-28 16:57:48 -05:00
Tony Wasserka
99dc069b9a Merge pull request #597 from sigmabeta/android-studio-gitignore
[Android] Add a bunch of gradle/AS related stuff to gitignore.
2014-08-04 12:06:29 +02:00
Ryan Houdek
3627bd21f1 Remove JitArmIL files from the project.
Due to how the new CR-flags work, it isn't possible without some hefty work in the JITIL backend to support this on 32bit systems.
2014-07-30 21:41:17 -07:00
Eder Bastos
33f848c78c Add a bunch of gradle/AS related stuff to gitignore. 2014-07-30 22:27:38 -04:00
Sean
304d9ccd58 [Android] Enable filtering onscreen buttons 2014-07-16 20:29:10 -04:00
Lioncash
30e4366d28 Merge pull request #580 from SeannyM/smaller-b
[Android] User configurable input overlay scaling
2014-07-16 19:04:35 -04:00
Sean
cd9a0b6f4d [Android] Onscreen controls better resemble GC and user configurable scaling 2014-07-15 16:14:27 -04:00
Eder Bastos
36821cb117 Display file size in GiB instead of bytes. 2014-07-14 21:52:52 -04:00
Eder Bastos
0170050cad Use the "No Banner" graphic as a Drawable resource, instead of as an asset. 2014-07-14 21:34:44 -04:00
Eder Bastos
94b1eeaf6f Move first-execution copying of shaders / binaries to an IntentService. 2014-07-09 07:56:27 -04:00
Lioncash
5c7ed205a9 Android: Remove an unnecessary getString call from EmulationActivity 2014-07-05 18:02:30 -04:00
Eder Bastos
53e4f3d73c Implement ViewHolder pattern on the GameListAdapter. 2014-06-24 23:03:38 -04:00
Eder Bastos
2c1008f0ae Allow user to quit app with back button. 2014-06-23 08:24:39 -04:00
Lioncash
8e2015b9cb Separate the XML view handling of the folder browser and the game list from one another. 2014-06-21 19:47:11 -04:00
Eder Bastos
b940e69f3b Fix banner scaling in game list.
-In GameListAdapter.java, the existing scaling code is unnecessary and stops Android's built in scaling from doing its job.
-In gamelist...etc.xml, set the icon's width to 100 density-independent pixels (i.e. have android figure out how to make it the right size.)
2014-06-21 12:01:16 -04:00
Ryan Houdek
d62ae92b8f Merge pull request #373 from sigmabeta/android-ui-cleanup
Soften up some of the UI elements on Android
2014-06-19 19:25:52 -05:00
Paul Olszewski
5d793881b0 Fix the capitalization of "GameCube" throughout the project. 2014-06-08 11:24:49 +09:00
Ryan Houdek
7dc31fbd1a Fix potential crash in Video Settings.
When Shaders folder didn't exist it would cause crash.
2014-06-02 17:57:23 -05:00
Sean
568f3248f3 Android: add multitouch support 2014-05-30 19:02:28 -04:00
shuffle2
d0201335c6 Merge pull request #300 from Sonicadvance1/Fix-AndroidInput
[Android] Fixes a bunch of input bugs.
2014-05-30 15:32:08 -07:00
Eder Bastos
5416dd24d7 Attach '.debug' to the end of the app's package name. This allows for installation of both debug and release configs on the same device. 2014-05-26 00:08:40 -04:00
Eder Bastos
8a288c7765 Increase size of title text; force it to take a single line and ellipsize if text doesn't fit. Also set both text fields to a slightly lighter color. 2014-05-23 18:47:43 -04:00
Eder Bastos
570cda3e39 Clarify that 'tools' attributes are only visible in the UI editor preview, and darken the game title text a little 2014-05-15 19:39:47 -04:00
Eder Bastos
08bb79ccb3 Soften up some of the UI elements. 2014-05-15 18:06:23 -04:00
Sean Maas
1da3a43698 Add japanese strings 2014-05-11 00:35:59 -04:00
Ryan Houdek
878740b43d Merge pull request #349 from Sonicadvance1/Android-Default-Config
[Android] Change default EFB copy method from disabled to texture.
2014-05-10 23:19:43 -05:00
Ryan Houdek
aa30f5a6cb Change Android's default EFB configuration to texture instead of disabled. 2014-05-05 17:13:04 -05:00
Ryan Houdek
33bdc0f985 Adds support for the PP shaders in the Android UI.
Copies over the PP shaders to the APK's assets and installs them on run.
Exposes them via the video settings UI.

This is in anticipation of dropping the workaround for rotated blits on Adreno and instead forcing shader usage by the user.
2014-05-05 13:44:08 -05:00
Sean Maas
5865ae2d6f Add a comment about game list color 2014-04-27 20:03:30 -04:00
Sean
be7f39445f Make the Android UI more like the desktop UI 2014-04-27 17:13:09 -04:00
Sean
eef51fdde6 Android: Fix Scaled EFB Copy setting 2014-04-25 16:11:28 -04:00
Ryan Houdek
e1bbda1e18 [Android] Fix a bunch of input bugs.
Looking at the old code for the ButtonManager was a brainfsck. This fixes a ton of bugs I kept uncovering as I was moving along.

Fixes the gamepad configuration file being incorrect.
No longer treats touchscreen in a special way. Ends up as a regular device with a "Touchscreen" device name.
Was incorrectly converting a index from integer to ButtonType. Wouldn't work due to the addition of some unused(in JNI) enumerators in ButtonType.
Fixes an issue where a map had a key as an axis which was causing its binding to be overwritten for every axis that was used twice (eg main stick left and right);
Fixes Triggers not working at all.
Fixes DPad not working at all.
Fixes C-Stick only half working.
Removes touch screen specific nativelibrary types onTouchAxisEvent and onTouchEvent.

Adds a configuration version configuration option. Allows easy configuration overwriting if the options need to be changed during updating.

Supersedes github PR #291.
2014-04-24 08:51:44 -05:00
Sean
4edb0a3134 Add braces 2014-04-22 19:40:03 -04:00
Sean
c81ac090c9 Clarify code with comments 2014-04-22 18:34:16 -04:00
Sean
f489e30cd8 Release button after touch leaves boundaries
Now, your finger can still move around, but as soon as it leaves the button boundaries the button is released.
2014-04-21 22:59:08 -04:00
Sean
72f3d69a78 Android: Allow finger movement while pressing button 2014-04-21 21:24:49 -04:00
Ryan Houdek
9849129b5d Merge pull request #199 from lioncash/defined-densities
Provide clearly defined densities of the controller icons.
2014-03-23 00:35:40 -05:00
Lioncash
a35e1d42d9 Provide clearly defined densities of the controller icons. 2014-03-23 01:23:39 -04:00
Ryan Houdek
b76351e2d3 Make configuring the onscreen controls less annoying.
Now instead of the top left corner of the button snapping to your finger.
Remember where we clicked on the button initially so it moves from the same location you touched.
This is more intuitive than before of course.
2014-03-22 23:32:46 -05:00
Lioncash
13c780d6a7 Fix two untranslated Japanese strings. 2014-03-22 22:42:29 -04:00
Lioncash
7922428dd7 Fix a call to a parent class method in InputOverlay.
Should have been a call to draw, not onDraw. Behavior-wise, it's still the
same however.
2014-03-22 22:41:42 -04:00
Ryan Houdek
d85b8afe58 Pass our signing information to gradle by argument.
Changes from using environment variables that the world can see to arguments.
So we don't have to expose our keys and aliases to people
2014-03-22 07:33:18 -05:00
Ryan Houdek
adaf095229 Fix building the release APK with gradle.
In release build all warnings are errors, and lint has some obnoxious warnings.
2014-03-17 16:28:31 -05:00
Lioncash
932e3c1db2 [Android] Tidy up the dialog buttons that don't do anything.
All we want to do with these is dismiss the dialog. The same can be done by simply passing null.
2014-03-09 23:02:08 -04:00
Pierre Bourdon
8863eb0671 Merge pull request #145 from lioncash/split-about-activity
[Android] Split the AboutFragmentItem and InfoFragmentAdapter into their own class files.
2014-03-10 02:20:25 +01:00
Tillmann Karras
161b67076a Update android.toolchain.cmake
from https://raw.github.com/taka-no-me/android-cmake/master/android.toolchain.cmake
2014-03-09 15:24:33 +01:00
Lioncash
53ed0051c8 [Android] Split the AboutFragmentItem and InfoFragmentAdapter into their own class files.
It doesn't make sense conceptually to keep them within the AboutActivity, as they are entirely self-contained classes.
2014-03-08 19:37:32 -05:00
Lioncash
c5fb4ac96f [Android] Remove unnecessary comment from VideoSettingsFragment.
Misleading comment. We won't need to access index four for anything.
2014-03-08 19:08:26 -05:00
Ryan Houdek
1f750904af Fix the OpenGL About tab.
Move EGLHelper to be local to the creation of the about GL/GLES tabs so we don't have 3 EGL contexts running at a time.
Fix issues with OpenGL context creation here so we show the correct information.
This requires adding an EGL function to the NativeLibrary since Android's JAVA bindings don't expose eglBindAPI.
2014-02-22 21:08:27 -06:00
Ryan Houdek
cf6e0b6015 Make it possible to build Dolphin for Android in OS X and also less of a pain with gradle. 2014-02-22 21:01:58 -06:00
Ryan Houdek
3666178f85 Remove Cache DL option from Android UI
This option has been removed entirely from Dolphin, so remove the option from Android
2014-02-06 17:02:38 -06:00
degasus
010a0d481a VideoCommon: remove Cache Displaylist
This option was known to break every second game and only boost a bit.
It also seems to be broken because of streaming into pinned memory and buffer storage buffers.

v2: also remove dlc_desc
2014-01-31 07:30:55 +01:00
Ryan Houdek
ac2ebd264d Merge pull request #5 from lioncash/android-info-fix
[Android] Fix three limits in GLES2InfoFragment.java.
2014-01-29 04:46:01 -08:00
Lioncash
74d9d7923e Fix three limits in GLES2InfoFragment.java. 2014-01-29 07:35:07 -05:00
Buildbot system user
7ed9f5e63e Upgrade Android API. 2014-01-28 23:35:13 +00:00
Lioncash
b9e7749fe6 [Android] Implement CPU info retrieval within the about menu.
ARM only at the moment. Could potentially support x86 and MIPS if necessary.
Capable of parsing the manufacturer codes and part IDs of some (but not all part numbers). If anyone knows of part numbers that aren't in the list, please report them.
2014-01-26 21:37:43 -05:00
Lioncash
521aa631dc [Android] Parse integer ranges in the GLES3 info tab.
The info we retrieve will only ever have 2 elements given back to us.
2014-01-22 12:28:46 -05:00
Lioncash
36863bf7b8 [Android] Get rid of the version check class in VideoSettingsFragment.java. Not needed anymore since the introduction of the EGLHelper class. Also decouples some classes from the VideoSettingsFragment.java class (yay).
- Minor other change is that the EGL helper fields in GLES3InfoFragment.java, GLES2InfoFragment.java, and GLInfoFragment.java are made final.
2014-01-22 11:56:25 -05:00
Lioncash
5c4d087e8f [Android] Greatly clean up the previous commits. Now here is the long list of cleaned up things:
- Spaces -> Tabs | Consistency
- Javadoc everything that was added and not documented.
- Remove duplicated code regarding the adapter that used to reside in DolphinInfoFragment.java. Now it resides in AboutActivity.java without a second duplication of it.
- Properly retrieve all of the contexts in the EGL initialization in EGLHelper.java.
- Remove the attribute EGL_RENDERABLE_TYPE from the pbuffersurface attributes in EGLHelper.java. With this present, the EGL context will always fail to reinitialize if destroyed and attempted to be recreated.
- Break the inner class Limit within GLES2InfoFragment.java, GLES3InfoFragment.java, and GLInfoFragment.java into its own single class. Greatly reduces code duplication.
- Introduce a Type enum into Limit.java (one of the wildly rare cases in Java where an enum is actually an OK solution). Removes duplicated constants from the Java files stated in the previous bullet note.
- Add a copyright comment to the top of EGLHelper.java. Forgot to do this initially, my bad.
- Add some missing override annotations to GLES2InfoFragment.java, GLES3InfoFragment.java, and GLInfoFragment.java.
- Use StringBuilders in the previously mentioned three Java files. This is better than using a String in this instance, as the String object won't have to be recreated multiple times (ala concatenation).
- Fix some constant accessors in the previously mentioned three Java files.
- Added the 'final' modifier to the above three classes and to Limit.java. These classes serve a single purpose only, and are not intended to be inherited.
2014-01-22 00:41:23 -05:00
Ryan Houdek
7e9b8d18a7 [android-about-menu-info] Add desktop OpenGL tab population.
Since showing every single limit that desktop OGL supports is crazy, Let's just show the basic information, and extensions.
2014-01-21 17:55:00 -06:00
Ryan Houdek
d3ccf1c7b5 [android-about-menu-info] Have information populate the GLES2 and GLES3 tabs.
There is a /lot/ of information in these tabs, we may have to think about changing how the information looks
OpenGL isn't done yet since there are a million limits on desktop GL, may just show a few things and extensions there.
2014-01-21 17:45:39 -06:00
Lioncash
0dc437e94d [Android] Finally check if regular OpenGL is possible on devices and display/hide it's fragment based upon this in AboutActivity.java.
Also added another constructor to EGLHelper which can be used to quickly query for information.
2014-01-21 00:12:40 -05:00
Lioncash
f8abdbf91a [Android] Initial introduction of the EGLHelper utility class. Should simplify all interop with the EGL/GL APIs. Not hooked up yet. However it is entirely functional. 2014-01-19 18:29:43 -05:00
Lioncash
45964e4b46 [Android] Initial implementation of the extended info menu.
Most fragments are not implemented yet. This is just a working base framework for it.
2014-01-07 19:47:15 -05:00
Lioncash
e6497bca5a [Android] Simplify instantiations of OverlayConfigButton.java. Also simplified resizeDrawable even more. We just acquire the resource instance and then get the display metrics directly. 2014-01-02 12:23:17 -05:00
Lioncash
5635c94a30 [Android] Simplify resizeDrawable in OverlayConfigButton.java.
Also add a missing override to onRestart in DolphinEmulator.java.
2014-01-02 11:53:28 -05:00
Ryan Houdek
2ed24d5311 [Android] Fix the gradle build system to allow for building from terminal. It will now copy the library files correctly and sign the resulting apk. 2013-12-24 15:28:24 -06:00
Ryan Houdek
86b3719d14 [Android] Add a gradle build file for use with Android Studio 4.0 2013-12-23 12:26:55 -07:00
Ryan Houdek
6737904c83 [Android] Stop copying assets that don't need to be copied anymore. 2013-12-21 16:20:14 -06:00
Ryan Houdek
2e1aa64958 [Android] Fix joysticks only capable of right/down movements. Also make it capable of using onscreen joystick even if controller 1 is bound. 2013-12-12 21:24:39 -06:00
Ryan Houdek
50df037bb5 [Android] Fix gamepad input. 2013-12-12 14:42:25 -06:00
Ryan Houdek
2a0adc3972 [Android] Make our OpenGL ES 3 check in the UI less stupid. 2013-12-12 11:58:38 -06:00
Ryan Houdek
bc01785264 [Android] Fix an issue that occurs due to the warning dialog. 2013-11-30 19:48:08 -06:00
Ryan Houdek
65ce711a21 [Android] 0.13 release. 2013-11-30 14:28:48 -06:00
Ryan Houdek
020331383a [Android] Fix alert when using crappy Qualcomm drivers. 2013-11-30 14:28:00 -06:00
Ryan Houdek
2ad686a2a2 [Android-overlay] Z-button support. 2013-11-29 21:50:42 -06:00
Ryan Houdek
b9f03444cd [Android-overlay] Fix Java imports. 2013-11-29 21:32:27 -06:00
Ryan Houdek
7bdd8191db Merge branch 'master' into android-new-control-input-overlay
Conflicts:
	Source/Android/src/org/dolphinemu/dolphinemu/settings/video/VideoSettingsFragment.java
2013-11-29 21:27:17 -06:00
Ryan Houdek
00a25cdaf5 [Android-overlay] Disable Wiimote configuration until it is wired up. 2013-11-29 21:12:36 -06:00
Lioncash
f6e89356c7 [Android] Simplify some things in the overlay. Also Javadoc the new static function. 2013-11-29 20:06:39 -05:00
Ryan Houdek
49eef423a8 [Android-overlay] Add the new overlay icons. Support configuring them. Disable hardfloat since it has issues since Dalvik doesn't understand passing floats due to ABI differences. 2013-11-29 18:37:33 -06:00
Lioncash
7f85c3215b [Android] Add Javadoc to InputOverlayDrawableJoystick. 2013-11-25 17:18:31 -05:00
Lioncash
76843b450b [Android] Build the configuration window for the overlay programmatically. Moved the overlay configuration classes into their own package. Also launch the overlay config activity through the preference XML via an embedded Intent. Lets us remove code explicitly handling this. 2013-11-25 14:23:28 -05:00
Ryan Houdek
7ed8e6a29c [Android] Fix the check for the Qualcomm graphics driver version for v53 drivers with the screen being rotated 90 degrees. Initialize the OpenGL information grabbing only once. Check for v14 Qualcomm drivers and spit out an error if the user tries selecting OpenGL ES 3. 2013-11-24 22:45:48 -06:00
Ryan Houdek
ba18f38e70 Merge branch 'master' into android-new-control-input-overlay
Conflicts:
	Source/Android/res/values-ja/strings.xml
	Source/Android/res/values/strings.xml
	Source/Android/src/org/dolphinemu/dolphinemu/AboutFragment.java
	Source/Android/src/org/dolphinemu/dolphinemu/emulation/EmulationActivity.java
	Source/Android/src/org/dolphinemu/dolphinemu/folderbrowser/FolderBrowser.java
	Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java
	Source/Android/src/org/dolphinemu/dolphinemu/settings/video/VideoSettingsFragment.java
2013-11-24 16:12:00 -06:00
Ryan Houdek
f292819ff5 [Android] Due to recent changes in code breaking Tegra 4 support, and also the upcoming code which will be breaking GLES2 support entirely. Taking the initiative to drop the remaining support code from the codebase in preparation for the upcoming changes. For a look at how Dolphin on Tegra 4 looked like prior and would not have been able to be fixed at all due to Tegra 4 not supporting the precision we need in our shaders; Look at this Youtube video http://youtu.be/Ga7Jc_Ote7U 2013-11-24 15:49:23 -06:00
Ryan Houdek
f6f2b1fc60 [Android-overlay] Support multiple gamepads with touch screen controls. 2013-11-24 15:04:53 -06:00
Lioncash
42f8562e5c [Android] Basic Wiimote binding settings now implemented. 2013-11-19 19:28:10 -05:00
Lioncash
7e544d8996 [Android] Basic UI functionality for enabling/disabling aforementioned Gamecube controllers. 2013-11-19 16:14:40 -05:00
Lioncash
53ab104d5f [Android] Expand the input binding UI in the settings to handle 4 Gamecube controllers in the future.
Other changes:

 - Broke out MotionAlertDialog into it's own separate class.
 - Made a preference specifically for handling input bindings.
2013-11-19 15:53:30 -05:00
Ryan Houdek
ae11fba069 [Android] Make joysticks less dumb from a configuration standpoint. 2013-11-18 14:48:08 -06:00
Lioncash
ee32c8b4e9 [Android] Remove accidental fragment tag in GameListActivity (it was useless, since it's an empty string) 2013-11-16 15:17:37 -05:00
Lioncash
11a156615f [Android] Like the previous commit (but for the GameListFragment), don't constantly create a new adapter when filling the game list. 2013-11-16 05:30:58 -05:00
Lioncash
d98664b053 [Android] Simplify the FolderBrowserAdapter a little, as well as the Fill method within FolderBrowser.java. Previously the fill method would create an entire new adapter and assign it to the backing ListView. This is pretty unnecessary, so what it now does is, when the function is called, it clears out the adapter, then simply fills it in again with the new directory's contents. Simple, and doesn't require a reference to the actual ListView to be used. 2013-11-16 04:36:22 -05:00
Lioncash
c8ddc70c97 [Android] Simplify the AboutFragment view inflating. Considering the backing layout is a direct ListView, the original rootView can just be casted to a ListView, no need for an intermediate. 2013-11-16 04:09:30 -05:00
Lioncash
94f8c68a35 [Android] Use the ViewHolder design pattern for the FolderBrowserAdapter. In directories with a lot of files, this should be noticeably smoother in terms of scrolling. Also fixed the case where the subtitle text might disappear. 2013-11-16 03:56:58 -05:00
Lioncash
c90ce1aad1 [Android] Change the name of the XML layout file gamelist_folderbrowser_list.xml to gamelist_folderbrowser_list_item.xml. More accurate name on what it is. 2013-11-16 03:31:02 -05:00
Lioncash
21a196f9af [Android] Eliminate the need to hold a reference to the shown Fragment within GameListActivity. Now we only care about the numeric ID of the one being shown. 2013-11-16 03:09:07 -05:00
Lioncash
777b5a109b [Android] Fix the handling of orientation changes for the Fragments related to the game list. Now screen orientation changes don't kick you back to the root view. 2013-11-16 01:48:17 -05:00
Lioncash
23c84c220f [Android] Add ability to take screenshots into the emulation menu. 2013-11-15 22:21:50 -05:00
Ryan Houdek
15bb974224 [Android] Add screenshot nativelibrary function. 2013-11-15 17:32:50 -06:00
Ryan Houdek
0720026dab [Android] Disable the workaround for Qualcomm devices with driver >= 53 for the rotated framebuffer since it is fixed now. 2013-11-15 16:56:21 -06:00
Lioncash
483a28f34a [Android] Simplify the AboutFragmentAdapter a little bit.
- Removes an unnecessary variable.
- Shortens the LayoutInflater usage.
- Gets rid of an unnecessary override of onAttach.
2013-11-15 17:19:09 -05:00
Lioncash
8c7d1afd5f [Android] Externalize the device compatibility warning strings. 2013-11-15 17:05:56 -05:00
Lioncash
4bb22aa0ab [Android] Indicate whether or not the device supports NEON within the About fragment. 2013-11-15 16:48:36 -05:00
Lioncash
d3731d0827 [Android] Get rid of some unnecessary variables in the getView() methods of some adapters.
Directly referencing convertView is fine.
2013-11-15 16:32:52 -05:00
Ryan Houdek
0e415467c4 [Android] Spawn a message if someone's phone doesn't support NEON. NEON is a requirement for Dolphin Mobile on ARM, CPU core will crash without it. 2013-11-15 14:17:47 -06:00
Lioncash
07765aa6f0 [Android] Documentation and some cleanup. 2013-11-15 12:26:17 -05:00
Ryan Houdek
1e90a838f2 Make sure to add our resources for the joystick. 2013-11-14 15:20:44 -06:00
Ryan Houdek
feedee5c23 [Android-overlay] Support touch screen axises in native. Have a non-configurable main joystick on screen at this point. 2013-11-14 15:18:33 -06:00
Lioncash
9d3d568ae4 [Android] Bump the targetSdkVersion in the AndroidManifest XML file to 19 (KitKat). Nothing we do would require compatibility behaviors to be enabled to maintain forward compatibility. 2013-11-14 11:01:44 -05:00
Lioncash
f15a0c17d0 [Android] Get rid of some unnecessary onAttach overrides in AboutFragment, VideoSettingsFragment, and FolderBrowser. These can just be replaced with calls to getActivity(). 2013-11-14 10:45:45 -05:00
Ryan Houdek
2a23bdde6f Merge branch 'master' into android-new-control-input-overlay
Conflicts:
	Source/Core/DolphinWX/Src/Android/ButtonManager.h
2013-11-13 16:17:42 -06:00
Ryan Houdek
0f061e4e7c [Android] Do /not/ give users the benefit of the doubt that the device supports OpenGL ES 3 when we can't grab an OpenGL context. The only devices that fail to do so is PowerVR5 and we can't run with them anyway. 2013-10-31 07:30:18 -05:00
Ryan Houdek
58d42f43e3 [Android] Fix PCH build. Clean up DolphinWX cmake file a little bit. Modify our android cmake toolchain file to make the default build location not be source root, because that is stupid. 2013-10-28 19:59:03 -05:00
Lioncash
3c7613fc83 [Android] More cleanup. We don't need the preference to enable/disable the overlay in the video preferences anymore. 2013-10-28 16:36:26 -04:00
Lioncash
4e999fe0ee [Android] General cleanup.
We no longer need the buttons in Assets, considering they are now resources (ie. drawables).

Also remove (now) junk code from VideoSettingsFragment.java. We handle the input overlay within the InputSettingsFragment.

Also add a TODO detailing what needs to be refactored when axis support is finally added.
2013-10-27 22:15:49 -04:00
Lioncash
d1834b3058 [Android] Overlay now works during emulation. 2013-10-27 22:08:41 -04:00
Ryan Houdek
c24dfe559b [Android] Change how the onTouchEvent native method works. Just pass in the correct Button ID and Action and it'll be pressed or not. Not actually rigged up to the Java code yet. Doesn't support anything with an Axis yet so no C stick, main stick, L and R triggers 2013-10-26 05:36:20 -05:00
Lioncash
c3e4aa1f35 [Android] Add the copyright header to some Java source files that were lacking them. 2013-10-26 01:06:00 -04:00
Lioncash
c78d5a9751 [Android] Improve an if statement check in InputConfigFragment.java. Also clarify it. 2013-10-26 00:59:53 -04:00
Lioncash
8d71a83ae5 [Android] Fix the super-mature string that was a placeholder for the title for the overlay configuration setting.
Also fix a NullPointerException possibility. Fixed it by giving the PreferenceScreen a title.
2013-10-26 00:55:07 -04:00
Lioncash
77eb9ce725 [Android] Add the capability to dynamically enable and disable the input overlay during emulation. 2013-10-25 23:10:17 -04:00
Lioncash
d9be95ed9e [Android] Fix alignment issues with the overlay config settings. 2013-10-25 21:29:06 -04:00
Lioncash
7c6caa388a [Android] Prevent automatic alignments within the overlay configuration settings. Let the user do this on their own. 2013-10-25 21:14:11 -04:00
Lioncash
c1ed54832c [Android] Maintain the chosen button layout when returning to the input overlay configuration menu.
- Also make the overlay configuration screen fullscreen for the app.

- Also force the overlay activity to be landscape, since this is the only orientation the EmulationActivity supports.
2013-10-25 21:05:42 -04:00
Lioncash
c8cf71c913 [Android] The emulation overlay now sets the button positions based upon the locations chosen in the input overlay configuration settings. Documented the hell out of how the initialization of the Drawables works inside InputOverlay.java.
Also made the use of InputOverlayItem.java obsolete. So this is now removed.
2013-10-25 20:34:38 -04:00
Lioncash
88c797a9c0 [Android] Slight cleanup for previous commit. Mostly UI adjustments.
Makes the buttons appear uniformly on the overlay config activity.
2013-10-25 17:39:23 -04:00
Lioncash
9f36081a8f [Android] Implement a very basic version of the input overlay configuration screen.
Still a bit of a mess, but this will get cleaned up during finalizations.
2013-10-25 16:52:46 -04:00
Lioncash
1267877e80 [Android] Documentation typo cleanups from the last commit.
Also cleaned up the Javadoc for the constructor of MotionAlertDialog.
2013-10-24 15:10:25 -04:00
Lioncash
079147ca07 [Android] Refactor InputConfigFragment a little bit in preparation for the implementation of the new input overlay.
This moves all of the dialog handling into the actual MotionAlertDialog class itself. This is something I should have done a long time ago.
Also moved the Gamecube input binding preferences into their own PreferenceScreen.
2013-10-24 14:55:10 -04:00
Ryan Houdek
187827624f [Android] 0.12 release. 2013-10-21 12:09:15 -05:00
Lioncash
2015cd0928 [Android] Implement OnSharedPreferenceChangeListener within PrefsActivity.java. This allows us to immediately save to the ini config when a preference in the front-end is changed, rather than waiting for the settings window to close. This also allows us to remove handling for preferences from CPUSettingsFragment.java and VideoSettingsFragment.java. 2013-10-13 22:20:34 -04:00
lioncash
615bac7ebc [Android] Replace the getter for the adapter backing the GameListFragment with a function that simply clears the array adapter. Maintains encapsulation this way. Simplified the actual setting of the backing ArrayAdapter for GameListFragment; this allows us to make a class variable a method variable now.
Also fixed up the Javadoc for the OnGameListZeroListener.
2013-10-10 17:08:46 -04:00
Lioncash
511de71736 [Android] Actually show the currently selected CPU core and video backend within the settings screen. 2013-10-10 11:57:18 -04:00
Lioncash
8b6ff7a358 Revert "{Android] Eliminate need for even using a byte array when copying assets over."
Turns out Android devs decided to opt for one of the most retarded ways of handling assets. Assets with some specific extensions are not compressed (png, jpeg, etc), and anything else is compressed. The AssetManager is so revolutionary, that you actually can't retrieve valid FileChannel descriptors from these compressed files! To add to this revolutionary system, they actually didn't give you a straightforward way of disabling this compression. Now using FileChannels are not possible, and thus we must use the much slower way of copying everything over. Thank you Android devs. Godforbid someone would like to use a non-array based way of copying things that's actually efficient, considering DMA access is possible with FileChannels.

This reverts commit 0dd32986b8.
2013-10-10 00:11:33 -04:00
Ryan Houdek
715d5ae8a7 Merge branch 'JitArmIL'
This implements a partial JITIL based off of the JIT64IL. It's enough to run most games, albiet at a slow speed.
Implementing instructions for this IL is really simple since it basically is just enabling based on what is already in JIT64IL, and then enabling each individual IL instruction.
2013-10-09 23:16:07 +00:00
Ryan Houdek
ba9f2d52e1 Add the JITIL Arm recompiler to the Android settings. 2013-10-09 23:08:12 +00:00
Lioncash
0dd32986b8 {Android] Eliminate need for even using a byte array when copying assets over. 2013-10-09 12:35:12 -04:00
Lioncash
a317391e3d [Android] Change the names of the functions responsible for loading/saving config values in UserPreferences.java. Makes readability better, since they have names that actually go with each other now. LoadIniToPrefs() and SavePrefsToIni(). 2013-10-08 19:08:06 -04:00
Lioncash
efac4bc608 [Android] Rephrase a comment in VideoSettingsFragment.java. 2013-10-08 18:45:10 -04:00
Lioncash
fb4cc76b11 [Android] Remove unnecessary equals comparison in VideoSettingsFragment.java in function SupportsGLES3(). contains() can handle this situation. 2013-10-07 19:50:50 -04:00
Ryan Houdek
a40daac5b1 [Android] Fix an issue where emulation would crash if we couldn't retrieve GPU information. Also if we can't get the graphics information, give them the benefit of the doubt and enable the GLES3 option. 2013-10-06 21:32:05 -05:00
Lioncash
cf1b634c33 [Android] Remove unnecessary attributes from the ViewPager layout XML file. 2013-10-06 20:04:53 -04:00
Lioncash
5bee29c7c2 [Android] Reflect the string change in the Tegra 4 support commit with the JP strings as well. 2013-10-06 10:45:05 -04:00
Ryan Houdek
6bdcde9dd6 [Android] Tegra 4 'support.' This brings up the OpenGL backend to support Tegra 4 to the point where it will run games but it doesn't have any video output for some reason. This is a large change that doesn't actually change much functionally. Walking through the changes.
It changes the string in the Android backend select to just OpenGL ES.
Adds a check in the Android code to check for Tegra 4 and to enable the option to select the OpenGL ES backend.
Adds a DriverDetails bug under BUG_ISTEGRA as a blanket case of Tegra 4 support.
The changes that effects most lines in this change. Removing all float suffixes in the pixel/vertex/util shaders since OpenGL ES 2 doesn't support float suffixes.
Disables the shaders for reinterpreting the EFB format since Tegra 4 doesn't support integers.
Changes GLFunctions.cpp to grab the correct Tegra extension functions.
Readds the GLSL 1.2 'hacks' as GLSLES2 'hacks' since they are required for GLSL ES 2
Adds a GLSLES2 to the GLSL_VERSION enum.
Disable the SamplerCache on Tegra since Tegra doesn't support samplers...
Enable glBufferSubData on Tegra since it is the only mobile GPU to correctly work with it.
Disable glDrawRangeElements on Tegra since it doesn't support it, This uses glDrawElements instead.
2013-10-06 03:12:29 -05:00
Lioncash
da46da17dc [Android] Make sure to change the title accordingly when coming back from the folder browser. 2013-10-02 22:55:16 -04:00
Lioncash
8dfc752780 [Android] Simplify LayoutInflater retrieval within GameListAdapter, FolderBrowserAdapter, and SideMenuAdapter.
Also added Javadoc to SideMenuAdapter. Gave the context variables a full spelling as well.
2013-10-02 22:42:43 -04:00
Lioncash
4e08a6cc8d [Android] Simplify a string retrieval in FolderBrowserAdapter.
Also remove an unnecessary import from EmulationActivity.java. This should have been removed in the previous commit.
2013-10-02 22:31:17 -04:00
Lioncash
c517b7fe7e [Android] Simplify call for getting the WindowManager instance within EmulationActivity. 2013-10-02 21:59:09 -04:00
Lioncash
b1268bfcd2 [Android] General documentation cleanup and additions. Adjusts the documentation to conform to the multitude of changes that have been made over time.
Very minor code changes were made as well (of which were mostly for formatting). Such as adding override annotations to methods from the Comparable interface, so that they are clearly marked as such.
2013-10-02 15:28:02 -04:00
Lioncash
cd6a863eec [Android] Make the GameListFragment extend a ListFragment instead of a Fragment. This allows us to simplify behavior a little by eliminating the need for an AdapterView. Now we just override "onListClick" and achieve the same result. 2013-10-01 21:43:27 -04:00
lioncash
16fb0b04d8 [Android] Externalize how the formatting is used in the file size string, the file clicked string, and the current dir string. 2013-10-01 10:32:05 -04:00
lioncash
80a4cbdbb4 [Android] Add xxhdpi versions of the file icon and the folder icon used in the folder browser. 2013-10-01 10:05:17 -04:00
lioncash
ca177539b6 [Android] Add correct density-sized images of the navigation drawer icon. Now all icons are density-specific. 2013-10-01 09:53:47 -04:00
lioncash
c3c1afcc09 [Android] Explicitly specify the allowBackup attribute in the manifest.
It's considered good practice to specify it, so why not?

Basically it allows the application to be backed up or restored via ADB.
2013-10-01 09:31:02 -04:00
lioncash
cb9ff3d9f8 [Android] Remove an unnecessary method override from GameListActivity.java. We don't actually do anything different from the default behavior of this method, so we don't need to explicitly define it.
This method is intended to be used for modifying the contents of a menu before displaying it. We don't really have a need for this, since it doesn't need to be modified.
2013-10-01 09:18:17 -04:00
Lioncash
1c4c00d171 [Android] Return true upon displaying the exit confirmations dialog in EmulationActivity.java. Now multiple games can be launched like normal. Previously it was returning false. 2013-09-27 18:17:29 -04:00
Lioncash
69d2ecff52 Simplify SwitchPage() within GameListActivity.java. We no longer need the first switch statement, since case 0 will be hit when SwitchPage(0) is called from the folder browser. This means we can also get rid of recreateFragment(), since the only time this needs to be called is within the onCreate() function. When SwitchPage(0) is called, SwitchPage will perform basically the same actions as recreateFragment() would; thus the reason it can be removed. 2013-09-27 17:16:59 -04:00
Lioncash
689aca2788 [Android] Remove commented out code within EmulationActivity.java. Since the back button handling has a specific purpose, this is no longer needed. 2013-09-26 23:40:39 -04:00
Lioncash
f6a8733660 [Android] Tiny inline documentation cleanup. 2013-09-26 23:32:41 -04:00
Lioncash
8aba748735 [Android] Fix a situation within the FolderBrowser where the application would crash. listFiles() returns null when either the File object it's called on isn't a directory or if an I/O error happens (in their infinite wisdom, they actually thought NOT throwing an exception was a cool way to handle this. How about that?). In the case of trying to access system directories as a normal user, an I/O error will occur due to permission access rights. This fixes that. 2013-09-26 23:06:10 -04:00
Lioncash
d903983564 [Android] Move EmulationActivity.java and NativeGLSurfaceView.java into a new sub-package called emulation. Now, all that's kept within the base package is the main class, the native calling class, etc. 2013-09-23 07:14:51 -04:00
Ryan Houdek
96a77f9feb [Android] Fix the ability to stop the game and start another. 2013-09-23 01:43:18 -05:00
Ryan Houdek
bab91494d5 Merge branch 'master' into android-core-control 2013-09-23 00:47:57 -05:00
Ryan Houdek
1da6469c62 [Android] Use new 4.0 icon. 2013-09-23 00:25:34 -05:00
Lioncash
af7ed820f5 [Android] Add a JP version of the string for FSAA. Also correct the English string too. 2013-09-22 19:16:32 -04:00
Ryan Houdek
bdae5d1027 [Android] Fix typo, FSAA stands for full scene antialiasing. 2013-09-22 11:59:10 -05:00
Ryan Houdek
6340ad68be Merge branch 'GLES3-FSAA' 2013-09-22 10:00:51 -05:00
Ryan Houdek
81effb8099 [Android] Add in FSAA option. 2013-09-22 09:25:38 -05:00
Pierre Bourdon
1f95a294cd Add the new 'Clean' themes from MaJoR and default to Clean by changing the name of the config key (yes, hack) 2013-09-22 16:00:56 +02:00
Lioncash
49fff7979b [Android] Make the FolderBrowser extend a ListFragment instead of a regular fragment. Lets us get rid of the need for an AdapterView.OnItemClickListener when handling list item clicks. Simplifies the implementation of the FolderBrowser a tiny bit. 2013-09-18 22:17:23 -04:00
Ryan Houdek
24a44ecfb8 [ANDROID] Add two new DriverDetails bugs for Adreno. V45 of the driver has broken shader compilation with UBOs in the shaders, this is most likely fixed with V53 found in the Nexus 5. Add a bug for issue surrounding on screentext and doing a glClear after swap causes screen swizzling and zero frames rendered respectively. On the Java side, pass in the dimensions of the screen swapped since there is an issue with Adreno where it rotates the output 90 degrees for some reason. Disable the GLSL shader cache on Android for now due to the inability to cleanly exit the emulator, this tends to cause the cache to get corrupted. All this together fixes rendering with Adreno 3xx GPUs with driver version v14 and above. In particular my Galaxy S4 still resets with this without the root commands, but my HTC Droid DNA and LG G2 is fine. This must be due to particular 'enhancements' that the Samsung kernel has over the other ones. The speed on Adreno has yet to be optimized, so it will most likely be slow still. Faster than the software rasterizer in any case. The ARMJIT is still broken in at this point, so not much fun can be had. 2013-09-18 02:37:10 -05:00
Lioncash
db7f8697ba [Android] Use a simpler "startActivity()" call in DolphinEmulator.java. Turns out the other one isn't 4.0 compatible, but actually only 4.1 and up. Also, in this case, we really don't actually care about the saved instance state bundle. 2013-09-18 01:57:01 -04:00
Lioncash
988544389a [Android] Slightly change the layout of the AboutFragment. Looks more like an actual list view now. 2013-09-16 22:04:59 -04:00
Lioncash
b4883e2ada [Android] Make the AboutFragment extend the ListFragment, since this is basically what this fragment acts as. Much more descriptive than simply extending Fragment.
Also made the list non-clickable, since it isn't supposed to be interacted with.
2013-09-16 21:04:58 -04:00
Lioncash
449cd3b267 [Android] No need to use startActivityForResult in DolphinEmulator.java any more. Just some leftover stuff from the big refactor. 2013-09-15 22:11:17 -04:00
Lioncash
5a0f0b908e [Android] Fix the name of the parameters in some unused interface methods.
There are some interface methods that are simply stubbed for the time being. It would be better to give the parameters better names despite not being used.
2013-09-15 14:34:30 -04:00
Pierre Bourdon
c3eec379df Move global User/Wii to Sys/Wii 2013-09-14 06:08:30 +02:00
Ryan Houdek
751fae4965 [Android] Make sure the default config file has fastmem disabled. 2013-09-13 21:17:40 -05:00
Lioncash
7a15159c34 [Android] Explicitly set the defaults for the CPU settings. 2013-09-13 00:29:59 -04:00
Lioncash
0490d7d59c [Android] JP strings for the Fastmem option. 2013-09-13 00:24:06 -04:00
Ryan Houdek
ba05db7828 [Android] Add a fastmem option to the cpu options, default disabled. 2013-09-12 23:08:00 -05:00
lioncash
84db868187 [Android] Android uppercases the name of the tabs in the settings by default. So we don't have to call ".toUpperCase" in the string returns in getPageTitle(). 2013-09-10 11:21:13 -04:00
lioncash
8ceb72612a [Android] Kick the targetSdkVersion in the AndroidManifest XML file to 18. Since this app basically works on 4.x.x, we don't need to make compatibility modes kick in for anything above 4.0.0.
Also very minor cleanup to the XML.
2013-09-10 09:29:05 -04:00
lioncash
ce5f80b151 [Android] Give the exceptions in compareTo implementations in GameListItem and FolderBrowserItem some messages. If the exceptions ever actually get thrown, at least you're given a reason as to why the exception was thrown now. Also changed the exception type to NullPointerException. IllegalArgumentException is intended to be used for validating the parameters in constructors/methods. 2013-09-10 08:32:11 -04:00
Lioncash
a3ef35a1bf [Android] Fix a bug where the video backend would not load correctly. 2013-09-09 22:38:09 -04:00
Lioncash
f382a53500 [Android] Organize the list of allowed file extensions for the folder browser and game list alphabetically.
Keeps things nice and sorted.
2013-09-08 17:52:26 -04:00
Lioncash
c306dafe44 [Android] Simplify some checks within the the folder browser in regards to checking if a file is hidden or not. Also potentially fixed the case where items in the game list would not remain saved to the config. 2013-09-08 16:45:37 -04:00
Lioncash
f753b9ae97 [Android] Show the full text for save and load states if there's room on the screen. If not, let it overflow into a context menu. 2013-09-07 19:19:28 -04:00
Lioncash
cc054b9da3 [Android] Make the MotionAlertDialog private. This isn't needed to be protected anymore. The only reason it was protected was for when the input settings were coupled as all hell to the GameListActivity (lol). Also documented the interface method within it. 2013-09-07 18:51:15 -04:00
Lioncash
86d10ec19e [Android] Fix the input binding string.
Forgot a period at the end. Thanks for pointing that out pauldachz
2013-09-07 06:19:24 -04:00
Lioncash
10eb9f09b4 [Android] Change a check for an empty path from !path.equals("") to !path.isEmpty() in GameListItem.
Also simplify the logging exception tag in the constructor.
2013-09-04 08:02:32 -04:00
Lioncash
b94a462fca [Android] Remove the compareTo implementation from SideMenuItem. We don't perform any operations that require it. 2013-09-04 07:43:56 -04:00
Lioncash
38304a7e42 [Android] Simplify the JP settings labels. 2013-09-04 07:36:28 -04:00
Lioncash
48cda9d26f [Android] Display the name of the control that is being bound in the input settings. Makes the binding description more informative. 2013-09-04 07:32:28 -04:00
Lioncash
a83d4e7226 [Android] Correct a typo for the load state menu root in the menu overlay XML. Should be "loadStateRoot", not "loadtateRoot" 2013-09-04 07:19:02 -04:00
Lioncash
a7c2b27a6a [Android] Remove unused strings from the resource XML files. 2013-09-04 07:09:29 -04:00
Lioncash
bdc04f9119 [Android] Change the exception logging in NativeLibrary to be an error instead of a warning.
Technically not having the required library should be regarded as an error, since the app won't even load without it.

Also changed the logging tag in FolderBrowser.
2013-09-04 06:46:11 -04:00
Lioncash
70cfe96492 [Android] Fix an accidental call to the wrong method in the superclass of EmulationActivity. Should have been returning "super.onMenuItemSelected(itemId, item)" instead of "super.onOptionsItemSelected(item)". 2013-09-03 17:25:45 -04:00