Commit graph

120 commits

Author SHA1 Message Date
TwistedUmbrella
4a79b868fc Save GameID entries for faster loading 2015-07-31 04:04:54 -04:00
TwistedUmbrella
a49f6d7741 Support launching game from external intent 2015-07-31 04:04:54 -04:00
jpd002
b04a167c8a Merge pull request #266 from Thunder07/ui_android
Android:Moved UI operation until after creating.
2015-07-31 04:03:20 -04:00
Mahmood(Thunder07)
574e4f399b Android:Updated DB with the initial set of TheGamesDB IDs 2015-07-30 17:13:20 +01:00
Mahmood(Thunder07)
253e612b35 Android:Moved UI operation until after creating. 2015-07-30 16:24:16 +01:00
TwistedUmbrella
ba40d3499f Update imports, remove excess whitespace 2015-07-30 00:50:51 -04:00
TwistedUmbrella
c323768257 Don't block UI when building database 2015-07-29 20:30:06 -04:00
TwistedUmbrella
44f5b3bd53 Copy packaged database through SQLite 2015-07-29 19:46:41 -04:00
TwistedUmbrella
6e263dcaf1 Prevent a crash when recreating tables
This can occur if the table was copied from assets, but has not been
labeled as generated by the application. The table will attempt to
recreate itself and yield an error that it exists.
2015-07-28 05:45:14 -04:00
TwistedUmbrella
ddb6fb7a2d Check for TheGamesDB url or use full url 2015-07-28 05:45:14 -04:00
TwistedUmbrella
c461ee0286 Catch a null pointer caused by offline loading 2015-07-28 05:45:14 -04:00
TwistedUmbrella
fa475e8b9f Support a custom image for disks without serial
This will be assigned via the filename, which will be linked to the
Disk field of the image database.
2015-07-28 05:45:14 -04:00
Jean-Philip Desjardins
7837f99a40 Don't return any game info if serial is null. 2015-07-27 01:32:19 -04:00
TwistedUmbrella
79bad2b2af Expand database, Improve regional serial search 2015-07-26 22:51:09 -04:00
TwistedUmbrella
141aa4d856 Fix database call for multiple parameters 2015-07-26 22:51:08 -04:00
TwistedUmbrella
8a43a07e7f Support using elastic search via GetGamesList 2015-07-26 22:51:08 -04:00
TwistedUmbrella
eb828ce455 Support DB upgrade, Image table, Fuzzy serial
DB upgrade can now be performed through the standard upgrade method
automatically.
An image table has been added to support future customization of covers
through a cross-matched table by serial, or filename. Game ID was not
used, as this is a matched value not obtained from the physical image.
Serial numbers are now matched by the literal value, then by the
possible regional versions.
2015-07-26 22:51:08 -04:00
TwistedUmbrella
82a484fd7d Verify the cursor before attempting read 2015-07-26 22:51:08 -04:00
TwistedUmbrella
af4274d3d3 Reference the derived string, not the element 2015-07-26 22:51:07 -04:00
TwistedUmbrella
fa7a86ffa8 Support a cover null check that prevents resync
This will avoid checking for a cover that doesn’t exist every single
time the game info for that disk is loaded.
2015-07-26 22:51:07 -04:00
TwistedUmbrella
416417fcbd Avoid unnecessary loops, Check for empty string
It is possible that the database value will return an empty string
rather than a null value. This is simply precaution.

Conflicts:
	build_android/AndroidManifest.xml
2015-07-26 22:51:07 -04:00
TwistedUmbrella
5ba55fb89b Organize classes, Database support, Remove dupes
Conflicts:
Source/ui_android/java/com/virtualapplications/play/MainActivity.java
Source/ui_android/java/com/virtualapplications/play/SetupDB.java
Source/ui_android/java/com/virtualapplications/play/TheGameDB.java
Source/ui_android/java/com/virtualapplications/play/getGameDetails.java

Load internal database, Fill from internet APIs

If a cover image and description are not in the database, attempt to
retrieve them from the API by ID. If an ID is not present, generate
temporary values based on search. These values are saved according to
the API ID, but not associated with the file name in storage. This
allows these entries to be applied to a game retrieved by ID at a later
time.

Combine long click calls into generic function

Fix long click function to return a value

Now that this is only the listener, it is no longer self-contained

Add a settings option to clear the cover cache

Log serial in relation to filename for reference

This may prove useful to obtain missing serial numbers.

Verify the existence of an image before loading

An image entry has been added to avoid the StackOverflow generated by
simply looping through the possible suffix values. The database has
been configured to pick up these image entries during the course of
regular checks.
Most images are -1, but a few have been found with alternate endings,
depending on revisions.

External database versioning for assets file

Using database version would cause the database to be rebuilt
internally, which would not copy the assets file.
The last modified time only applies to the written file and could not
be compared to the assets file, which would result in unnecessary
writes for every app update.
This method allow the value to be hard-coded in the app to reflect only
when the assets database is updated and avoid the restrictions of
runtime options.

Conflicts:
Source/ui_android/java/com/virtualapplications/play/getGameDetails.java

Conflicts:
Source/ui_android/java/com/virtualapplications/play/TheGamesDB.java
build_android/assets/games.db

Conflicts:
	Source/ui_android/java/com/virtualapplications/play/TheGamesDB.java
	build_android/assets/games.db

Reconnect getSerial call after rebase
2015-07-26 22:51:07 -04:00
Jean-Philip Desjardins
e267726785 Fixed Android build. 2015-07-24 02:31:53 -04:00
jpd002
8ead906d2e Merge pull request #254 from Thunder07/WIP
List filtering, Cover Saving, Serial ID identification, On Demand Description
2015-07-24 02:30:22 -04:00
Jean-Philip Desjardins
cf03947322 Added JNI wrapper for GetDiskId function. 2015-07-23 23:34:37 -04:00
TwistedUmbrella
ca7f48dfe3 Cross-check possible ROMs for serial numbers
This will shorten the list of available games to just those that both
fit the extension requirements and have a serial number. While it may
not cover every game, there is an extremely high probability at least
one game in a folder has a serial. This assumes all games are obtained
legally.

Conflicts:
	Source/ui_android/java/com/virtualapplications/play/GameInfo.java
2015-07-24 01:25:22 +01:00
Mahmood(Thunder07)
8a5ed042d3 List filtering, Cover Saving, Serial ID identification, On Demand Description 2015-07-23 23:31:23 +01:00
TwistedUmbrella
c4613a7385 Fix titles and alignment to match current state 2015-07-19 01:48:12 -04:00
TwistedUmbrella
8656dcb4af Lock orientation during file selection, Menu cleanup 2015-07-19 01:05:16 -04:00
TwistedUmbrella
76441607ab Check for null game and catch all exceptions
The application should not crash when anything goes wrong with
retrieving remote entries. It should just return file info.
2015-07-19 01:05:12 -04:00
TwistedUmbrella
147d785bf4 Fix context and reduce function calls 2015-07-19 01:05:12 -04:00
TwistedUmbrella
db3e7c7ad8 Add a check for TV, Update menu graphics / layout 2015-07-19 01:05:12 -04:00
TwistedUmbrella
30726149f1 Convert to tables for flexibility, Add drawer shell
Fix display proportions with unified file searches

Adjust table alignment and clean up navigation

Set columns to minimum supported screen size
2015-07-19 01:05:12 -04:00
TwistedUmbrella
cbd1978777 Generate grid by landscape items displayed
Due to the limitation of grid dimensions being defined before the grid
is populated, the grid is designed for maximum visibility using
landscape. Adjusting the grid would reload the data, which would result
in unnecessary GamesDB API calls.

Refresh views appropriately, Improve grid layout

Support displaying a file name if no details exist
2015-07-19 01:05:12 -04:00
TwistedUmbrella
5de10406e4 Retrieve front cover, optimize ImageView layout 2015-07-19 01:05:12 -04:00
TwistedUmbrella
396d7aebbb Android: basic support for boxart and game info
Requires a stable internet connection and may not display full-size
images. This is only meant to demonstrate the concept.

Conflicts:
	build_android/AndroidManifest.xml
2015-07-19 01:05:12 -04:00
TwistedUmbrella
0b0b198501 Android: backend support for a file locator
Automatically lists all files that fit the extension and sets the root
game folder when one of the items is selected.

Clicking the Reset Folder preference will remove the stored base folder
and return to the complete list.

TODO: Add a method to refresh the list when clearing the preference or
returning from the emulator.

Conflicts:
	Source/ui_android/java/com/virtualapplications/play/MainActivity.java
2015-07-19 01:05:11 -04:00
Jean-Philip Desjardins
2a5ddd4a9d Changed exit message capitalization. 2015-07-18 18:08:51 -04:00
jpd002
6d0a0db50c Merge pull request #100 from Thunder07/android_ui
Android:Game Exit Confirmation Dialog
2015-07-15 23:46:29 -04:00
Mahmood(Thunder07)
ac15072d80 Android: Fixed Exit Crash 2015-07-14 00:15:08 +01:00
Thunder07
18ccea7e53 Update EmulatorActivity.java 2015-07-14 00:12:09 +01:00
Mahmood(Thunder07)
c6bc6bef96 Android:Game Exit Confirmation Dialog 2015-07-13 22:05:11 +01:00
jpd002
56c7158c20 Merge pull request #94 from Flav900/master
Android case detection for .elf files
2015-07-12 01:16:40 -04:00
TwistedUmbrella
1f2f0b489f Android: add options for exiting the application 2015-07-12 00:33:51 -04:00
Flav900
ec68908480 Fixed case detection for .elf files 2015-07-11 20:04:16 +02:00
Flavio Mattiello
d7a6e60d9b Updated android ui to detect case sensitive file extensions 2015-07-09 12:52:37 +02:00
Jean-Philip Desjardins
a506425e7d Added option to show/hide virtual pad on Android. 2015-07-09 00:08:42 -04:00
Jean-Philip Desjardins
4141a5b2de Use PreferenceActivity on Android for preference edition. 2015-07-08 23:15:06 -04:00
Jean-Philip Desjardins
a13a0fb986 Added basic gamepad support on Android. 2015-07-06 01:58:19 -04:00
Jean-Philip Desjardins
b70b9f2048 Renamed VirtualPadConstants to InputManagerConstants on Android. 2015-07-06 00:53:45 -04:00