summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/TouchLatency/app/src/main/java/com/prefabulated/touchlatency/TouchLatencyActivity.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/tests/TouchLatency/app/src/main/java/com/prefabulated/touchlatency/TouchLatencyActivity.java b/tests/TouchLatency/app/src/main/java/com/prefabulated/touchlatency/TouchLatencyActivity.java
index 1664746f4636..a2842b6e214d 100644
--- a/tests/TouchLatency/app/src/main/java/com/prefabulated/touchlatency/TouchLatencyActivity.java
+++ b/tests/TouchLatency/app/src/main/java/com/prefabulated/touchlatency/TouchLatencyActivity.java
@@ -22,6 +22,7 @@ import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.os.Bundle;
+import android.os.Trace;
import android.util.AttributeSet;
import android.util.Log;
import android.view.Display;
@@ -30,9 +31,9 @@ import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
-import android.os.Trace;
import android.view.Window;
import android.view.WindowManager;
+
import java.math.RoundingMode;
import java.text.DecimalFormat;
@@ -280,6 +281,17 @@ public class TouchLatencyActivity extends Activity {
WindowManager.LayoutParams params = w.getAttributes();
int modeIndex = (mCurrentModeIndex + 1) % mDisplayModes.length;
+ while (modeIndex != mCurrentModeIndex) {
+ // skip modes with different resolutions
+ Mode currentMode = mDisplayModes[mCurrentModeIndex];
+ Mode nextMode = mDisplayModes[modeIndex];
+ if (currentMode.getPhysicalHeight() == nextMode.getPhysicalHeight()
+ && currentMode.getPhysicalWidth() == nextMode.getPhysicalWidth()) {
+ break;
+ }
+ modeIndex = (modeIndex + 1) % mDisplayModes.length;
+ }
+
params.preferredDisplayModeId = mDisplayModes[modeIndex].getModeId();
w.setAttributes(params);