summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2012-03-26 16:45:05 -0700
committerRomain Guy <romainguy@google.com>2012-03-26 16:45:05 -0700
commit00a10e8eb39526df06779e0cdb6e6871752934d7 (patch)
tree0436b46c52a7118707958a170ff601abdadaa998
parentef36d496477d1e2ae99c3cd43eee5cf7e82b0883 (diff)
downloadframeworks_av-00a10e8eb39526df06779e0cdb6e6871752934d7.zip
frameworks_av-00a10e8eb39526df06779e0cdb6e6871752934d7.tar.gz
frameworks_av-00a10e8eb39526df06779e0cdb6e6871752934d7.tar.bz2
Use a status_t return type for GL functors
WebView needs more fine-grained control over the behavior of the framework upon execution of the display lists. The new status_t allows WebView to requests its functor to be re-executed directly without causing a redraw of the entire hierarchy. Change-Id: I97a8141dc5c6eeb6805b6024cc1e76fce07d24cc
-rw-r--r--include/private/hwui/DrawGlInfo.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/private/hwui/DrawGlInfo.h b/include/private/hwui/DrawGlInfo.h
index 1e9912b..abcf41d 100644
--- a/include/private/hwui/DrawGlInfo.h
+++ b/include/private/hwui/DrawGlInfo.h
@@ -42,6 +42,23 @@ struct DrawGlInfo {
float dirtyTop;
float dirtyRight;
float dirtyBottom;
+
+ /**
+ * Values used by OpenGL functors to tell the framework
+ * what to do next.
+ */
+ enum Status {
+ // The functor is done
+ kStatusDone,
+ // The functor is requesting a redraw (the clip rect
+ // used by the redraw is specified by DrawGlInfo.)
+ // The rest of the UI might redraw too.
+ kStatusDraw,
+ // The functor needs to be invoked again but will
+ // not redraw. Only the functor is invoked again
+ // (unless another functor requests a redraw.)
+ kStatusInvoke
+ };
}; // struct DrawGlInfo
}; // namespace uirenderer