diff --git a/shell/android/src/com/reicast/emulator/FileBrowser.java b/shell/android/src/com/reicast/emulator/FileBrowser.java index 5b761b8dd..434bccb77 100644 --- a/shell/android/src/com/reicast/emulator/FileBrowser.java +++ b/shell/android/src/com/reicast/emulator/FileBrowser.java @@ -408,7 +408,7 @@ public class FileBrowser extends Fragment { builder.setCancelable(true); builder.setTitle(getString(R.string.game_details, xmlParser.getGameTitle())); - builder.setMessage(xmlParser.game_details.get(index)); + builder.setMessage(xmlParser.getGameDetails()); builder.setIcon(xmlParser.getGameIcon()); builder.setPositiveButton("Close", new DialogInterface.OnClickListener() { diff --git a/shell/android/src/com/reicast/emulator/XMLParser.java b/shell/android/src/com/reicast/emulator/XMLParser.java index 54071a8a1..65258ab77 100755 --- a/shell/android/src/com/reicast/emulator/XMLParser.java +++ b/shell/android/src/com/reicast/emulator/XMLParser.java @@ -56,8 +56,8 @@ public class XMLParser extends AsyncTask { private Drawable game_icon; private static final String game_index = "http://thegamesdb.net/api/GetGame.php?platform=sega+dreamcast&name="; - public SparseArray game_details = new SparseArray(); - public SparseArray game_preview = new SparseArray(); + private SparseArray game_details = new SparseArray(); + private SparseArray game_preview = new SparseArray(); public XMLParser(File game, int index, SharedPreferences mPrefs) { this.mPrefs = mPrefs; @@ -217,6 +217,14 @@ public class XMLParser extends AsyncTask { public String getGameTitle() { return game_name; } + + public String getGameDetails() { + return game_details.get(index); + } + + public Bitmap getGamePreview() { + return game_preview.get(index); + } public Document getDomElement(String xml) { Document doc = null; diff --git a/shell/android/src/com/reicast/emulator/periph/Gamepad.java b/shell/android/src/com/reicast/emulator/periph/Gamepad.java index 116c43f5e..02b6bc556 100644 --- a/shell/android/src/com/reicast/emulator/periph/Gamepad.java +++ b/shell/android/src/com/reicast/emulator/periph/Gamepad.java @@ -4,9 +4,11 @@ import java.util.HashMap; import tv.ouya.console.api.OuyaController; import tv.ouya.console.api.OuyaFacade; +import android.app.UiModeManager; import android.content.Context; import android.content.SharedPreferences; import android.content.pm.PackageManager; +import android.content.res.Configuration; import android.os.Build; import android.util.SparseArray; import android.view.KeyEvent; @@ -180,6 +182,13 @@ public class Gamepad { } public boolean IsOuyaOrTV(Context context) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { + UiModeManager uiModeManager = (UiModeManager) + context.getSystemService(Context.UI_MODE_SERVICE); + if (uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION) { + return true; + } + } PackageManager pMan = context.getPackageManager(); if (pMan.hasSystemFeature(PackageManager.FEATURE_TELEVISION)) { return true;