summaryrefslogtreecommitdiffstats
path: root/core/java
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2011-08-12 15:25:28 -0700
committerRomain Guy <romainguy@google.com>2011-08-12 15:25:28 -0700
commit50d133e290468fd149b5c03e46549afca2ee05f8 (patch)
tree32246d9ec539009b51d11c01fcc025ee27b068a6 /core/java
parente5df231434357424cea8d2b8d0cdf31253a98110 (diff)
downloadframeworks_base-50d133e290468fd149b5c03e46549afca2ee05f8.zip
frameworks_base-50d133e290468fd149b5c03e46549afca2ee05f8.tar.gz
frameworks_base-50d133e290468fd149b5c03e46549afca2ee05f8.tar.bz2
<blink/> is not an acceptable default behavior.
Bug #5156334 Change-Id: I9f803b090e81f4e490d0cccd6347a0f9f64bd20f
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/view/HardwareRenderer.java10
-rw-r--r--core/java/android/view/ViewRootImpl.java4
2 files changed, 11 insertions, 3 deletions
diff --git a/core/java/android/view/HardwareRenderer.java b/core/java/android/view/HardwareRenderer.java
index f2b6b1f..f2c3131 100644
--- a/core/java/android/view/HardwareRenderer.java
+++ b/core/java/android/view/HardwareRenderer.java
@@ -199,8 +199,10 @@ public abstract class HardwareRenderer {
* @param attachInfo AttachInfo tied to the specified view.
* @param callbacks Callbacks invoked when drawing happens.
* @param dirty The dirty rectangle to update, can be null.
+ *
+ * @return true if the dirty rect was ignored, false otherwise
*/
- abstract void draw(View view, View.AttachInfo attachInfo, HardwareDrawCallbacks callbacks,
+ abstract boolean draw(View view, View.AttachInfo attachInfo, HardwareDrawCallbacks callbacks,
Rect dirty);
/**
@@ -757,7 +759,7 @@ public abstract class HardwareRenderer {
}
@Override
- void draw(View view, View.AttachInfo attachInfo, HardwareDrawCallbacks callbacks,
+ boolean draw(View view, View.AttachInfo attachInfo, HardwareDrawCallbacks callbacks,
Rect dirty) {
if (canDraw()) {
if (!hasDirtyRegions()) {
@@ -825,8 +827,12 @@ public abstract class HardwareRenderer {
sEgl.eglSwapBuffers(sEglDisplay, mEglSurface);
checkEglErrors();
+
+ return dirty == null;
}
}
+
+ return false;
}
/**
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 380fc15..f23c366 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -1798,7 +1798,9 @@ public final class ViewRootImpl extends Handler implements ViewParent,
currentDirty = null;
}
- mAttachInfo.mHardwareRenderer.draw(mView, mAttachInfo, this, currentDirty);
+ if (mAttachInfo.mHardwareRenderer.draw(mView, mAttachInfo, this, currentDirty)) {
+ mPreviousDirty.set(0, 0, mWidth, mHeight);
+ }
}
if (animating) {