summaryrefslogtreecommitdiffstats
path: root/libs/hwui/OpenGLDebugRenderer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add support for partial invalidates in WebViewRomain Guy2011-03-071-156/+0
| | | | | | | | | | | | Bug #3461349 This change also fixes two bugs that prevented partial invalidates from working with other views. Both bugs were in our EGL implementation: they were preventing the caller from comparing the current context/surface with another context/surface. This was causing HardwareRenderer to always redraw the entire screen. Change-Id: I33e096b304d4a0b7e6c8f92930f71d2ece9bebf5
* Add more debug info for profiling.Romain Guy2011-01-271-2/+30
| | | | Change-Id: I0c74e2aa108142cc6ddac4577ae2d0fe6c0ddb25
* Use optimized display lists for all hwaccelerated renderingChet Haase2011-01-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, display lists were used only if hardware acceleration was enabled for an application (hardwareAccelerated=true) *and* if setDrawingCacheEnabled(true) was called. This change makes the framework use display lists for all views in an application if hardware acceleration is enabled. In addition, display list renderering has been optimized so that any view's recreation of its own display list (which is necessary whenever the visuals of that view change) will not cause any other display list in its parent hierarchy to change. Instead, when there are any visual changes in the hierarchy, only those views which need to have new display list content will recreate their display lists. This optimization works by caching display list references in each parent display list (so the container of some child will refer to its child's display list by a reference to the child's display list). Then when a view needs to recreate its display list, it will do so inside the same display list object. This will cause the content to get refreshed, but not the reference to that content. Then when the view hierarchy is redrawn, it will automatically pick up the new content from the old reference. This optimization will not necessarily improve performance when applications need to update the entire view hierarchy or redraw the entire screen, but it does show significant improvements when redrawing only a portion of the screen, especially when the regions that are not refreshed are complex and time- consuming to redraw. Change-Id: I68d21cac6a224a05703070ec85253220cb001eb4
* Add debug logs for display lists.Romain Guy2011-01-131-1/+1
| | | | Change-Id: I7bae8fd96e9eccb51f29f73e4069b4d3e6bdbdd7
* Cleanup implementation of hardware layers.Romain Guy2011-01-131-0/+6
| | | | | | | | | | The new implementation relies on OpenGLRenderer's existing layer code instead of duplicating it. The new code is much cleaner, with simpler and better APIs and allows tracking of drawn regions inside layers. Region tracking is not yet enabled but this will be done in a future CL. Change-Id: Ie826121a2227de8252c77b992a61218defea5143
* Support nested display lists.Romain Guy2010-11-081-0/+6
| | | | Change-Id: I3815a2832fc0f722c668ba8f51c5f177edb77c94
* Optimizing display lists by referencing pointers to resources instead of ↵Chet Haase2010-10-211-8/+8
| | | | | | copying them Change-Id: I81ad3551d74aa1e5bb64d69e33d2eb29a6c1eb6a
* Optimize 9patch rendering.Romain Guy2010-10-121-3/+3
| | | | | | | This change detects empty quads in 9patches and removes them from the mesh to avoid unnecessary blending. Change-Id: I4500566fb4cb6845d64dcb59b522c0be7a0ec704
* Don't clear the framebuffer when not needed.Romain Guy2010-10-061-2/+2
|
* Adding display lists to the GL renderer (checkpoint.)Romain Guy2010-09-261-3/+5
| | | | Change-Id: Iaa49757600a53b39369dbb23f8c3feab282518e6
* Add debug mode to measure performance.Romain Guy2010-09-241-0/+114
Change-Id: I9d4c84034dc200b99c8266165942a7cdbcb5c0c5