Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: ui/android/java/src/org/chromium/ui/base/WindowAndroid.java

Issue 611313003: Use estimated vsync period on Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.ui.base; 5 package org.chromium.ui.base;
6 6
7 import android.annotation.SuppressLint; 7 import android.annotation.SuppressLint;
8 import android.app.Activity; 8 import android.app.Activity;
9 import android.app.PendingIntent; 9 import android.app.PendingIntent;
10 import android.content.ContentResolver; 10 import android.content.ContentResolver;
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 44
45 // Ideally, this would be a SparseArray<String>, but there's no easy way to store a 45 // Ideally, this would be a SparseArray<String>, but there's no easy way to store a
46 // SparseArray<String> in a bundle during saveInstanceState(). So we use a H ashMap and suppress 46 // SparseArray<String> in a bundle during saveInstanceState(). So we use a H ashMap and suppress
47 // the Android lint warning "UseSparseArrays". 47 // the Android lint warning "UseSparseArrays".
48 protected HashMap<Integer, String> mIntentErrors; 48 protected HashMap<Integer, String> mIntentErrors;
49 49
50 private final VSyncMonitor.Listener mVSyncListener = new VSyncMonitor.Listen er() { 50 private final VSyncMonitor.Listener mVSyncListener = new VSyncMonitor.Listen er() {
51 @Override 51 @Override
52 public void onVSync(VSyncMonitor monitor, long vsyncTimeMicros) { 52 public void onVSync(VSyncMonitor monitor, long vsyncTimeMicros) {
53 if (mNativeWindowAndroid != 0) { 53 if (mNativeWindowAndroid != 0) {
54 if (monitor.isVSyncSignalAvailable()) {
55 nativeUpdateVSyncPeriod(mNativeWindowAndroid,
Sami 2014/09/30 16:04:14 Instead of adding a new JNI call, please merge thi
jmanko 2014/10/01 09:36:51 Acknowledged.
56 mVSyncMonitor.getVSyncPeriodInMicros econds());
57 }
54 nativeOnVSync(mNativeWindowAndroid, vsyncTimeMicros); 58 nativeOnVSync(mNativeWindowAndroid, vsyncTimeMicros);
55 } 59 }
56 } 60 }
57 }; 61 };
58 62
59 /** 63 /**
60 * @return true if onVSync handler is executing. 64 * @return true if onVSync handler is executing.
61 * @see org.chromium.ui.VSyncMonitor#isInsideVSync(). 65 * @see org.chromium.ui.VSyncMonitor#isInsideVSync().
62 */ 66 */
63 public boolean isInsideVSync() { 67 public boolean isInsideVSync() {
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 */ 286 */
283 public long getNativePointer() { 287 public long getNativePointer() {
284 if (mNativeWindowAndroid == 0) { 288 if (mNativeWindowAndroid == 0) {
285 mNativeWindowAndroid = nativeInit(mVSyncMonitor.getVSyncPeriodInMicr oseconds()); 289 mNativeWindowAndroid = nativeInit(mVSyncMonitor.getVSyncPeriodInMicr oseconds());
286 } 290 }
287 return mNativeWindowAndroid; 291 return mNativeWindowAndroid;
288 } 292 }
289 293
290 private native long nativeInit(long vsyncPeriod); 294 private native long nativeInit(long vsyncPeriod);
291 private native void nativeOnVSync(long nativeWindowAndroid, long vsyncTimeMi cros); 295 private native void nativeOnVSync(long nativeWindowAndroid, long vsyncTimeMi cros);
296 private native void nativeUpdateVSyncPeriod(long nativeWindowAndroid, long v syncPeriod);
292 private native void nativeDestroy(long nativeWindowAndroid); 297 private native void nativeDestroy(long nativeWindowAndroid);
293 298
294 } 299 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698