[Scummvm-cvs-logs] SF.net SVN: scummvm:[50494] scummvm/trunk/backends/platform/android/org/ inodes/gus/scummvm
anguslees at users.sourceforge.net
anguslees at users.sourceforge.net
Tue Jun 29 14:56:23 CEST 2010
Revision: 50494
http://scummvm.svn.sourceforge.net/scummvm/?rev=50494&view=rev
Author: anguslees
Date: 2010-06-29 12:56:22 +0000 (Tue, 29 Jun 2010)
Log Message:
-----------
Replace some code with constructs that work on Android pre-1.6.
Add a boolean for disabling the "no plugins found" warning.
Modified Paths:
--------------
scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java
scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/Unpacker.java
Modified: scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java
===================================================================
--- scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java 2010-06-29 11:51:05 UTC (rev 50493)
+++ scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java 2010-06-29 12:56:22 UTC (rev 50494)
@@ -32,14 +32,27 @@
private class MyScummVM extends ScummVM {
private boolean scummvmRunning = false;
+ private boolean usingSmallScreen() {
+ // Multiple screen sizes came in with Android 1.6. Have
+ // to use reflection in order to continue supporting 1.5
+ // devices :(
+ DisplayMetrics metrics = new DisplayMetrics();
+ getWindowManager().getDefaultDisplay().getMetrics(metrics);
+ try {
+ // This 'density' term is very confusing.
+ int DENSITY_LOW = metrics.getClass().getField("DENSITY_LOW").getInt(null);
+ int densityDpi = metrics.getClass().getField("densityDpi").getInt(metrics);
+ return densityDpi <= DENSITY_LOW;
+ } catch (Exception e) {
+ return false;
+ }
+ }
+
public MyScummVM() {
super(ScummVMActivity.this);
// Enable ScummVM zoning on 'small' screens.
- // This 'density' term is very confusing.
- DisplayMetrics metrics = new DisplayMetrics();
- getWindowManager().getDefaultDisplay().getMetrics(metrics);
- enableZoning(metrics.densityDpi <= DisplayMetrics.DENSITY_LOW);
+ enableZoning(usingSmallScreen());
}
@Override
Modified: scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/Unpacker.java
===================================================================
--- scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/Unpacker.java 2010-06-29 11:51:05 UTC (rev 50493)
+++ scummvm/trunk/backends/platform/android/org/inodes/gus/scummvm/Unpacker.java 2010-06-29 12:56:22 UTC (rev 50494)
@@ -34,6 +34,7 @@
import java.util.zip.ZipEntry;
public class Unpacker extends Activity {
+ private final static boolean PLUGINS_ENABLED = true;
private final static String META_NEXT_ACTIVITY =
"org.inodes.gus.unpacker.nextActivity";
private ProgressBar mProgress;
@@ -79,7 +80,6 @@
if (cn != null) {
final Intent origIntent = getIntent();
Intent intent = new Intent();
- intent.setPackage(origIntent.getPackage());
intent.setComponent(cn);
if (origIntent.getExtras() != null)
intent.putExtras(origIntent.getExtras());
@@ -294,7 +294,7 @@
Intent intent = new Intent(ScummVMApplication.ACTION_PLUGIN_QUERY);
List<ResolveInfo> plugins = getPackageManager()
.queryBroadcastReceivers(intent, 0);
- if (plugins.isEmpty()) {
+ if (PLUGINS_ENABLED && plugins.isEmpty()) {
// No plugins installed
AlertDialog.Builder alert = new AlertDialog.Builder(this)
.setTitle(R.string.no_plugins_title)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list