From 580c9032f02123ba1f46a49c098dbf34f0b2f3c1 Mon Sep 17 00:00:00 2001 From: Angus Lees Date: Fri, 11 Jun 2010 10:54:49 +0000 Subject: Add support for setFocusRectangle - enabled on 'small' Android screens. svn-id: r49594 --- .../android/org/inodes/gus/scummvm/ScummVMActivity.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java') diff --git a/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java b/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java index fb3cd6348f..ba3c058ae4 100644 --- a/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java +++ b/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java @@ -1,7 +1,7 @@ package org.inodes.gus.scummvm; -import android.app.AlertDialog; import android.app.Activity; +import android.app.AlertDialog; import android.content.DialogInterface; import android.content.res.Configuration; import android.media.AudioManager; @@ -9,13 +9,14 @@ import android.os.Bundle; import android.os.Environment; import android.os.Handler; import android.os.Message; +import android.util.DisplayMetrics; import android.util.Log; -import android.view.inputmethod.InputMethodManager; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.SurfaceView; import android.view.View; import android.view.ViewConfiguration; +import android.view.inputmethod.InputMethodManager; import android.widget.Toast; import java.io.IOException; @@ -33,6 +34,12 @@ public class ScummVMActivity extends Activity { 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); } @Override -- cgit v1.2.3 From a3a1499444654ed30aa13c0ab753b0916245f865 Mon Sep 17 00:00:00 2001 From: Angus Lees Date: Tue, 29 Jun 2010 12:56:22 +0000 Subject: Replace some code with constructs that work on Android pre-1.6. Add a boolean for disabling the "no plugins found" warning. svn-id: r50494 --- .../org/inodes/gus/scummvm/ScummVMActivity.java | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java') diff --git a/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java b/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java index ba3c058ae4..b37b2b8a52 100644 --- a/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java +++ b/backends/platform/android/org/inodes/gus/scummvm/ScummVMActivity.java @@ -32,14 +32,27 @@ public class ScummVMActivity extends Activity { 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 -- cgit v1.2.3