• Home
  • History
  • Annotate
  • only in /frameworks/base/libs/hwui/renderthread/
History log of /frameworks/base/libs/hwui/renderthread/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0e40462e11d27eb859b829b112cecb8c6f0d7afb 13-May-2015 John Reck <jreck@google.com> Revert "DO NOT MERGE Backport of limited jank-tracking metrics"

This reverts commit 2614bd225f84f7a23e6b30fc6b47bede153e5f4c.

Change-Id: I344b4cbaa0bb0caf50bceb806d1446ee27ea52d8
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
imeLord.cpp
imeLord.h
d5a4a1aac980c304d6f46f07f15bfc5c94d8f9d0 19-Feb-2015 John Reck <jreck@google.com> DO NOT MERGE Backport of limited jank-tracking metrics

Bug: 19821830

Cherry-pick of ba6adf66d3c44c0aa2fd8a224862ff1901d64300
Cherry-pick of e70c5754d01f2ab0ff47ea3eabaa88aca5ed2a36

Change-Id: Id342fa0ab345f204bec58acf45ce72f6de950cfb
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
imeLord.cpp
imeLord.h
a22c9b2cd171a656fa684d57a915dbe636da5f6a 14-Jan-2015 John Reck <jreck@google.com> Vsyncs are hard

Bug: 18866485
Change-Id: I7d304df0f20a3296956cb6887a72adba9243f117
enderThread.cpp
a733f89c05567c97359169832f41389b939baaad 19-Dec-2014 John Reck <jreck@google.com> Tweak RT-animator scheduling

Bug: 18226391

The issue occurs as a result of a dispatchFrame itself
taking longer than 12ms, the alloted budget. The result
is that a vsync request (which occured at the end) would
miss the vsync that occured 1ms prior to the end of the frame.
As a result it would end up waiting for the following vsync,
essentially dropping to 30fps even though 60 could have been
sustained.

Fix this with a few tweaks.
First, adjust the UI thread's delay bias from (now + 4ms) to
(vsync + 4ms), this prevents RT animators from slowly drifting
if the vsync occurs mid-task.
Second, request a vsync preemptively prior to running callbacks.
This way if any callbacks needs the next vsync and it takes
"too long", we will catch that vsync.
Finally, fix an issue where the display event queue was always
drained & rejected at the end of a task loop. Instead, drain
and reject all stale vsyncs. This still prevents the issue of
both UI thread & RT thread trying to drive 2 frames in a single
pulse, but also allows RT to notice that it missed a vsync
pulse it needed and that it should speed-up a bit in response

Change-Id: I9d6be037737e9283297898cac2e3563453e797cd
enderThread.cpp
enderThread.h
imeLord.cpp
imeLord.h
ebd52610cfeff6e557fde284a7e1efc5e6438285 11-Dec-2014 John Reck <jreck@google.com> Don't preload textures for AssetAtlas

Bug: 18317479

RenderNode::prepareSubTree calls prefetchAndMarkInUse
on every bitmapResoruce in the DisplayList. However,
this resulted in textures being uploaded for bitmaps
that would be drawn from the AssetAtlas instead.

To fix this we teach TextureCache about the AssetAtlas
so that calls to TextureCache return the Texture from
AssetAtlas if it exists. Thus usage of AssetAtlas
is now purely to allow for further optimizations via
draw merging instead of a requirement to get
any benefit at all.

Change-Id: I65282fa05bac46f4e93822b3467ffa0261ccf200
glManager.cpp
01a5ea35fbba4c5bb1d7790ae1677a2fa752e042 03-Dec-2014 John Reck <jreck@google.com> Resume RT-animations after a pauseSurface

Bug: 18203577

The issue occurs as a result of performTraversals() both doing
a window relayout call *and* early-returning because it's not dirty.

To fix this pauseSurface() returns whether or not the RT-side is
"dirty" to force ViewRootImpl to do a draw even if mDirty is
otherwise empty.

Change-Id: I534f367e75d18d273ebf14df3927f5c464ef6bef
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
a12b2405df5c12363e24cebc684f5f3a5c9a5b7b 21-Nov-2014 Sangkyu Lee <sk82.lee@lge.com> Prevent calling GL functions with an invalid surface

Bug: 18518580

When destroying CanvasContext, the surface can be invalid
state. So the surface should be updated to null prior to
destroying GL resources to ensure that GL functions
are not called with an invalid surface.
Some GL implementation makes an error if GL functions
are called with an invalid surface. (Adreno 3xx)

Cherry picked from AOSP: f76d36f96bf221672e98e440c9df7cbf0e02e84e

Change-Id: Ie6f6ea081ec931fc9df30b2c3ed066ec1ae9d294
anvasContext.cpp
9f81485a76dd02a07fd460a29db6adddd2ca2efe 26-Nov-2014 Chris Craik <ccraik@google.com> Revert "Force-use the pbuffer surface for destroy"

bug:18528859

This reverts commit b945f2313aee6e49a082ba5caaf95334d2570d52.

Change-Id: I6915624d356cb8570471eb3a5b8921f59b58db6d
anvasContext.cpp
b945f2313aee6e49a082ba5caaf95334d2570d52 25-Nov-2014 John Reck <jreck@google.com> Force-use the pbuffer surface for destroy

Bug: 18518580

If CanvasContext is being destroyed() the Surface
is probably no longer valid as well, so make sure to
makeCurrent() to the pbuffer surface so that the
subsequent GL operations are not using an invalid
EGLSurface

Change-Id: Ica5d6a065841772c47e00ad65aa7894c7e27e043
anvasContext.cpp
fbc8df03e498baf47ff1a5e05e182f1bcd60c770 15-Nov-2014 John Reck <jreck@google.com> Trace some interesting events

Bug: 18337099
Change-Id: Ie2e60da2b9f06e0368061c944d8123ab6903355c
anvasContext.cpp
glManager.cpp
aa95a88327d9a3ac8a4a00b065b78ac0f28b3a19 07-Nov-2014 John Reck <jreck@google.com> Have an actual fallback if the surface is lost

Bug: 17516789

This will force a relayout/reinitialize pass if the Surface
is lost mid-render instead of crashing on the next frame

Change-Id: If08bfa16f740728fa7c05904fa11e26f07b81e2e
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
0e89e2b7bcb2c035e8cee77f93120e7c5617f8d2 31-Oct-2014 John Reck <jreck@google.com> Layer changes

Bug: 17208461

* Switch Layer to be VirtualLightRefBase instead of
Caches' side-channel ref-counting
* Include active layers in gfxinfo dump
* Run gfxinfo dump on the correct thread
* Dump gfxinfo on Layer creation failure

Change-Id: I28d195699e2334518e215ab28c7a17355aee9678
anvasContext.cpp
glManager.cpp
glManager.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
950ff1b88cc1330f8e80d62ed3aa15bee6be0556 27-Oct-2014 John Reck <jreck@google.com> Be more conservative about current buffer

Bug: 18065565
Change-Id: I0b9c85ecf384ebe525e3a38803ab77d7ee37f33a
glManager.cpp
1125d1fa92ab9f3b8315bbfb72e038b62dfd454b 23-Oct-2014 John Reck <jreck@google.com> Add some free zoom to lockHardwareCanvas

Bug: 18099195

Don't use EGL_SWAP_BUFFER_PRESERVED on surfaces that will
never benefit. Also clean up some confusing naming

Change-Id: I674ca64e0464a3282cff79e5ecd350d08f47c014
anvasContext.cpp
anvasContext.h
glManager.cpp
glManager.h
enderProxy.cpp
enderProxy.h
bb2d0cc7e1d487f7021b1f9ec0c6740e41b535f2 21-Oct-2014 John Reck <jreck@google.com> Surface:lockHardwareCanvas

Bug: 17440886

Change-Id: I1f2d98c63ec1a2814c2258cf7e0096139263770a
imeLord.cpp
786afcb3eec18315ec54987a08814ff28f13d09f 25-Sep-2014 Jorim Jaggi <jjaggi@google.com> Trim graphics memory when closing the shade

Graphics memory usually gets trimmed in applications when the
activity goes into the background. We use quite a lot of graphics
memory when the shade/lockscreen is open, and some of them never gets
freed unless the recents activity is closed, because we don't have
these activity-trimming-heuristics for the shade. This change
proactively trims the graphics memory when the shade gets closed or
when the lockscreen is hidden, to emulate the same heuristics as for
activities.

This change also adds trimMemory on RenderThread to systrace to
verify that no jank is introduced with this change.

This change immediately saves around 10-30 MB on an xxhdpi device
after the shade is closed.

Bug: 17581375
Change-Id: I4fb622efb51815fe08187be97ba15d012d4de5d4
anvasContext.cpp
749906b468912dab7bf69a86e852deac3e80b0cc 04-Oct-2014 John Reck <jreck@google.com> Cleanup DeferredLayerUpdater

Bug: 17765082

DeferredLayerUpdater had fallen behind RT updates. Re-snap to
latest expectations, ensuring to call requireGlContext() prior
to detachSurfaceTexture to avoid leaking SurfaceTextures

Change-Id: Ic65fb9831e5284f658866da8da9ad5af1d227699
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
651486d0186755f30f08d17126a61bf7127cba96 19-Sep-2014 Chris Craik <ccraik@google.com> Merge "Fix garbage showing up beneath dialogs" into lmp-dev
284b24358410cb0200e525a5ba36994090c83f20 19-Sep-2014 Chris Craik <ccraik@google.com> Fix garbage showing up beneath dialogs

bug:17463894

Fixes the setViewport method to immediately affect the return values
of getViewportWidth/Height methods.

Also works around tiling extension issues observed on first frame
after window resize by disabling tiling for that frame.

Change-Id: Ie172d572d20d74a1be9cc58ad389af2cffa0e4b6
anvasContext.cpp
2cdbc7d2283aae3d77b12c8fdbba8ca4bd3db5ea 18-Sep-2014 John Reck <jreck@google.com> Special case EGL_BAD_SURFACE

Bug: 17516789

Change-Id: I3dcb10360c2aef6326f7dbbff6815866d4c143b6
anvasContext.cpp
glManager.cpp
glManager.h
ec845a215e343cdb3b2e4c7b6aff7b24beb0236b 06-Sep-2014 John Reck <jreck@google.com> Fix race condition

Bug: 17372309

AnimationContext::startFrame() happens both with and without
the UI thread lock. Pass the TraversalMode into it so
that ThreadedRenderer's subclass can correctly decide
when it is safe to push over mPendingAnimatingRenderNodes, as doing
so outside of the lock is Very Bad.

Change-Id: Ife5dd3a2b46b0a207cd9234c159a674afdbf5efd
anvasContext.cpp
443a714fa7c0dd07fee3527cc5bc3d3ca1fb7d44 05-Sep-2014 John Reck <jreck@google.com> Yet more layer tracking logging

Bug: 17208461

Change-Id: I55e7d0921eb565867e966d68b798b7b92c391b55
anvasContext.cpp
anvasContext.h
enderThread.h
e2478d45ccbe5b6abb360ac9d44771b5f4a50bde 04-Sep-2014 John Reck <jreck@google.com> Fix some wrong-thread issues around animator management

Bug: 17372309

Fixes a case where UI thread and RT thread both used the same method
which wasn't safe for either of them.

Adds additional assertions & logging in unusual circumstances to
try and track down where the issue is occuring from.

Change-Id: I93d31a6fd0c5927259b67bdf96a475944226eee6
anvasContext.cpp
17035b0211a3c9d45ea46a99217a6acbe76e8fbe 03-Sep-2014 John Reck <jreck@google.com> Have destroy call freePrefetchedLayers

Bug: 17208461

There's a potential race condition between HardwareRenderer.destroy()
being called (which calls destroyCanvasAndSurface()) and the renderer
being finalized (which is what calls freePrefetchedLayers), during which
time it's possible we get a TRIM_MEMORY_COMPLETE and destroy the EGL
context.

Fix this race condition by moving stopDrawing() and freePrefetchedLayers()
into destroyCanvasAndSurface() where they should have been in the first
place.

Also, if we hit the assertion failure, dump the current state of
Caches to try and provide more context for the failure.

Change-Id: Ife0ba3562041e8b08e87e3e13640472b3004eed6
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
1661715d4066a557ab0877271d62762579a38fa9 03-Sep-2014 John Reck <jreck@google.com> Implement TODO

Change-Id: I551ad0dab6356baa4c7787718b54d5b7337a3f26
anvasContext.cpp
dff9957cc22a1174a4cf91de6609c50934d29434 29-Aug-2014 John Reck <jreck@google.com> Free prefetched layers on TRIM_MEMORY

Bug: 17208461

Change-Id: I831c10d29d5920274b90e11a67d6cd106972a058
anvasContext.cpp
998a6d81896df8b662cc10ddeb35087b78b38d72 29-Aug-2014 John Reck <jreck@google.com> Track buildLayer calls, destroy if unused

Bug: 17208461

Change-Id: Ibdb104a493285d77a6891c5e74e38a52c7014da9
anvasContext.cpp
anvasContext.h
glManager.cpp
4c5a27b5f667ebc7cb2b188655820ad3fddedb52 28-Aug-2014 John Reck <jreck@google.com> Merge "Animator stuff" into lmp-dev
119907cd2575c56b1ebf66348b52e67aaf6a88d8 14-Aug-2014 John Reck <jreck@google.com> Animator stuff

Bug: 17228458

Change-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
imeLord.cpp
imeLord.h
1d4774233304c484673e2af2c1de2ab41021c979 27-Aug-2014 Chris Craik <ccraik@google.com> Crash instead of leaking layers/textures between GL contexts

bug:17208461
Change-Id: I4d58f301cf0f5e8145e808a5d6ade4de7801970b
glManager.cpp
9eb9f6f8cbbbd87d45da8071aa54cb066a797723 21-Aug-2014 John Reck <jreck@google.com> Don't run animators in buildLayer

Bug: 17172689

Change-Id: Ib47d589c002543327fa336718440f9f8c95524e0
anvasContext.cpp
3e8249568cc428296ac76c7ddce3f0382d40fe5b 20-Aug-2014 John Reck <jreck@google.com> Implement full View.buildLayer

Bug: 17152292

Change-Id: Ia3cc2aadf72fe14517f50762fc634794df51ad5a
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
69e5adffb19135d51bde8e458f4907d7265f3e23 14-Aug-2014 Chris Craik <ccraik@google.com> Define shadow casting behavior within layers

bug:15860114

Savelayers and HW layers both now support shadow casting.

For save layers, the light source should always be correct, for HW
layers, the light source position is set when the layer is created,
and updated when it is resized.

Change-Id: Ie85567dd43c2bb0a0b08fd0bd4db41efa793ac2b
anvasContext.cpp
enderProxy.cpp
enderThread.cpp
21be43e142a6fcb3283d7b2da14eb39b690cf643 14-Aug-2014 John Reck <jreck@google.com> Fix hwuitask & RT priorities

Bug: 15993695

Change-Id: Ib6f07237cb834e8d10f3074f8fb206d27f91859a
enderThread.cpp
cd3a22cfec09c065d0667dd044c0788912e82465 06-Aug-2014 John Reck <jreck@google.com> Don't start RenderThread to do trimMemory

Bug: 16825138

Change-Id: I35f57898b14bc8526c3d93a3003bca6f5a3d7fbe
enderProxy.cpp
738ec3aace180018560998d1c2cdeb9ddde5fbfa 25-Jul-2014 Chris Craik <ccraik@google.com> Revert "Dump RenderThread stack on unresponsive"

bug:16563871
bug:16565900
bug:16555847
bug:16551643

This reverts commit ca66e06b9db6e6c921662886e4b7ddd02ac92280.

Change-Id: I23e8d4eaf828b1b298126ba5f36e4e8e7451706a
rawFrameTask.cpp
enderProxy.cpp
enderThread.cpp
enderThread.h
058fc640017c90120c599d378a4cbc55668b05b7 24-Jul-2014 Chris Craik <ccraik@google.com> Connect shadow style attributes to renderer

bug:15859361

Moves lighting info out of StatefulBaseRenderer, since it's not useful
at record time, and only used by OGLR.

Change-Id: I7ab065d02d9304afad1dc4c48597a7a621366f8e
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
73b7a4db4116774156fda3a510cc3afa14be9ffd 23-Jul-2014 John Reck <jreck@google.com> Dump RenderThread stack on unresponsive

Bug: 16408405

Change-Id: I4ba4836fd1451fb8ba77c34cdb843d3cb4217bb8
rawFrameTask.cpp
enderProxy.cpp
enderThread.cpp
enderThread.h
5cdb8f998c58a2226112b36e4c391866346e5e17 17-Jul-2014 John Reck <jreck@google.com> Fix logging

Bug: 16357287

Change-Id: Ic14e32c941e42ab1f1ed51ff8ed7185979e57a55
anvasContext.cpp
0a97330b98dd633b58dcfff405d94476c89e867d 16-Jul-2014 John Reck <jreck@google.com> Fix root RenderNode damage calculation

Bug: 15888445

Change-Id: I281ec9271c9889673dcdfcb6d31e341a7b47b7de
anvasContext.cpp
dcba6725e8b9d3eba9ad7a01258d6aa974feafba 08-Jul-2014 John Reck <jreck@google.com> Fix layers lifecycle issues

Bug: 16118540

Fix an issue where we could have a reference to a Layer after
the GL context was destroyed

Change-Id: I7bfd909d735ca6b942ebe188fc10099422eb6d95
anvasContext.cpp
3c2b7fa8c584c5ed56f1bd6ad53f2e87f0a6eb44 07-Jul-2014 John Reck <jreck@google.com> Add missing requireGlContext

Change-Id: I7100e5e9986f502f66a23ecea07a6057522c43ac
anvasContext.cpp
f47a594f5250b1914c36423ee6b371f0b8db09d0 01-Jul-2014 John Reck <jreck@google.com> Fix onTrimMemory for HardwareRenderer

Also fixes detachFunctor possibly drawing after return

Bug: 15189843
Bug: 15990672

Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
918ad523b2780e0c893f3d2a32d4ec13f2a7e921 27-Jun-2014 John Reck <jreck@google.com> More cleanups

Change-Id: Id5967944b949a2aec57e4fe9fdcdc04c11b8c35a
enderProxy.cpp
enderProxy.h
68bfe0a37a0dcef52abd81688d8520c5d16e1a85 25-Jun-2014 John Reck <jreck@google.com> Animator refactoring & fixes

Tweaks animators to have less unnecessary refcounting

Pull animator management out into seperate class

More control to tweak animator lifecycle, such as doing
Java-side handling of start delay by attaching but not
starting the animator

Change-Id: I4ff8207580ca11fb38f45ef0007b406e0097281c
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
cd028f336e36b22dbe8cf623eb5bd2361314495c 24-Jun-2014 John Reck <jreck@google.com> Fix contants; RT-enable WebView pt2

Bug: 15838537

* Fix kSync_UIRedrawRequired constant value (woops)
* Tell CanvasContext that WebView is now rt-safe

Change-Id: Idf15cf21115c2ca24b8ccd00025e8502864cd87c
anvasContext.cpp
rawFrameTask.h
6b39324d7756f1a36faf275941aabb19ee6bbb53 24-Jun-2014 John Reck <jreck@google.com> Merge "No-fail invokeFunctor"
3b20251a355c88193c439f928a84ae69483fb488 23-Jun-2014 John Reck <jreck@google.com> No-fail invokeFunctor

Bug: 15513308
Bug: 15449247

Change-Id: I13a29f9c8d4975cdda6dcb33b6332c2555ff0f7c
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
glManager.cpp
glManager.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
61606cec5ceb705910dec94222b22e66a0365094 23-Jun-2014 Bo Liu <boliu@google.com> Merge "Enable asynchronous RenderThread for WebView"
826b56448691221e4cfe2f19a09c3d8790f78d2c 14-May-2014 Bo Liu <boliu@google.com> Enable asynchronous RenderThread for WebView

BUG: 12179257

Change-Id: Ib7358dc84a0a58020d178d10b324b9631848c06d
rawFrameTask.cpp
a7090e0cfd7c719a6d4c03aae34f5db98754cbdd 21-Jun-2014 Chris Craik <ccraik@google.com> Update 'DisplayList' vs 'RenderNode' naming in several places

Change-Id: I635c6627d098b661fb9b0ba1bd42fa6d7277d287
anvasContext.cpp
734df4b4271e90e320f3ff37b4b0d49e92cb1e3c 16-Jun-2014 Chris Craik <ccraik@google.com> Interrupt canvas before invoke

Change-Id: I5b818958f6255c594339bd10d9efa99e9e2c00d4
anvasContext.cpp
816f71b7e0dc263362e9fc8d251c8d1944bff17c 13-Jun-2014 John Reck <jreck@google.com> Merge "Move LayerType to RenderNode"
25fbb3fa1138675379102a44405852555cefccbd 12-Jun-2014 John Reck <jreck@google.com> Move LayerType to RenderNode

Change-Id: Icb79a5015cb0362b1f3a66d09007450730135a97
anvasContext.cpp
rawFrameTask.cpp
546f353e7f562fdbcf59980bcb7dc11567658aa3 10-Jun-2014 Mark Salyzyn <salyzyn@google.com> hwui: 64-bit compile issue

Change-Id: Ic3e3dbc6cde4bc58b23a8ab267b0868f370ad149
enderProxy.cpp
e4267ea4f20740c37c01bfb6aefcf61fddc4566a 04-Jun-2014 John Reck <jreck@google.com> Even FASTER damage calculations!

* Now with more native!
* Less matrix math thanks to bulk-property-update support!
* Zero JNI on the View.damageInParent() path!
* Fully aware of RT-driven animators!
* Likely full of new and exciting bugs!
* But it also fixes at least 1 existing invalidate bug!

Change-Id: Ie0773f85a60850ff2668370c58defef2e8aa079f
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
d72e0a339b54af0c4e731513bbad120dff694723 30-May-2014 John Reck <jreck@google.com> Re-jigger layers

Bug: 15185239
Bug: 15238382

Make DeferredLayerUpdater ref counted so that
HardwareLayer:finalizer() works non-crashily on
leaked layers
Give DeferredLayerUpdater the ability to have a layer destroyer
set so that leaked layers can still be recycled on the
RenderThread
Order layer updates based off of pushLayerUpdate() calls to fix
issue with nested layers

Change-Id: I4449cee607f7e5126e02fed7464cf48038e3dfdf
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
aee470c0232afdac4256d13020fa0cf04f30395c 30-May-2014 John Reck <jreck@google.com> Merge "Enable debug stuffs" into lmp-preview-dev
fe5e7b7346a54537b980796ceeca66bfdbd05561 24-May-2014 John Reck <jreck@google.com> Enable debug stuffs

Bug: 14596762
* dumpsys gfxinfo implemented
* profile GPU visual_bars implemented

Change-Id: Icb948a9d5af5989b5615504d0d76ade64b93ef5b
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
c8affe0e1b1f3f63b12477f832a1a66019ac0df8 29-May-2014 John Reck <jreck@google.com> Re-enable atlas

Bug: 14590563

Change-Id: I04ed5bf1b2654dab4a65c1e43faaeba32459870f
anvasContext.cpp
e1628b7c6fc3822fa83cf02028ce8ad67abb0afe 24-May-2014 John Reck <jreck@google.com> Implement FlushCaches TODO

Change-Id: Id05429e98ffe0858275b32c41fb215c1d8d930b2
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
a5dda645da738da7b4ae15e28fa7d93d3b04b94f 23-May-2014 John Reck <jreck@google.com> Bag of scheduling tweaks

Bug: 15118640

* Prevent over-stuffing the queue by dropping frames
* Prevent double-drawing in one pulse by RT by deferring
vsync registration until post-draw so that it catches
the next vsync pulse instead of the current one
* Bias vsync race condition towards the UI thread
* Fix queueDelay to actually work

Change-Id: Ibf584258bd93ebcbba058bd976dc8b307f1c6155
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
797b95b26bbb7557678af78b9a2a61830158920f 21-May-2014 Chris Craik <ccraik@google.com> Define light position (using new lighting spec) in Java

Also updates the relative shadow strengths.

Change-Id: I6cac7275d38df98aea9f0dda463cd7207102986a
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
cdfeef6624613ca06fe8a7edfb92608afb0499ee 15-May-2014 John Reck <jreck@google.com> Disable texture atlas

Bug: 14952384

Change-Id: If38b3e4c08c2c3dd9c00ae9e6e8c10e208e737d1
anvasContext.cpp
66f0be65a1046f54ddce0498b242c1fa0776b1ea 13-May-2014 John Reck <jreck@google.com> Wire up texture atlas

Bug: 14590563

Change-Id: I2dffbc089dc801f5fb2d1c8fd38e1c71d160e110
anvasContext.cpp
anvasContext.h
ef27453cf71e331e4076df5e5c665b06d5c3e050 07-May-2014 John Reck <jreck@google.com> Merge "Cleanup attachFunctor"
832b151465ed81c43e59891d5eebe62128b21fbb 07-May-2014 John Reck <jreck@google.com> Cleanup attachFunctor

Bug: 13961296

Change-Id: Id48d11bfcc234afd1fd7e4fdd409a50e7208c81d
anvasContext.cpp
b6d9211d31d29221501a8f2a33e6ba0fe18d6ef5 07-May-2014 John Reck <jreck@google.com> Merge "Implement TODO(romainguy)"
63a06673253914510bbeebd500655008682dade1 07-May-2014 John Reck <jreck@google.com> Implement TODO(romainguy)

Bug: 14277445

Change-Id: Id52d6f7fcc023000adcc440bd4da67d9a673536b
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
368cdd85268999997fb495cf90c4417221797de0 07-May-2014 John Reck <jreck@google.com> Don't try to draw if there's no canvas or surface

Bug: 14616376

doFrame() can happen after the canvas or surface is destroyed,
handle it gracefully

Change-Id: Ibbbbdbfa77fa2134bd2abc215ca1a0886d706969
anvasContext.cpp
e4280baaa709c74d86cf6a389a4674ca665f5af6 06-May-2014 John Reck <jreck@google.com> Implement loadSystemProperties

Bug: 14087580

Change-Id: I7153f38c70b554a78c56a0e794da929fc401ee7a
enderProxy.cpp
enderProxy.h
f9be77940e365036fecd8cc0e491e8545c34e79b 03-May-2014 John Reck <jreck@google.com> Make RenderNodeAnimator and WebView play nice

Change-Id: Ifaefcf510b2d377663fc86f60608d6ec9be8329a
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
18f16e6fba74eda173e1e7c869e6e2e2acc073ff 03-May-2014 John Reck <jreck@google.com> TIME LORD!

Bug: 14444180

Change-Id: I68bec3807c4d1c88d5af1aec2fe6907d60b5f2f3
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
imeLord.cpp
imeLord.h
52244fff29042926e21fa897ef5ab11148e35299 02-May-2014 John Reck <jreck@google.com> Add CanvasProperty for drawCircle

Change-Id: Icbcc030f5033d2094e567d7c519b9d672f2aac1c
rawFrameTask.cpp
e45b1fd03b524d2b57cc6c222d89076a31a08bea 15-Apr-2014 John Reck <jreck@google.com> RenderThread animator support

Change-Id: Icf29098edfdaf7ed550bbe9d49e9eaefb4167084
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
enderThread.cpp
enderThread.h
dbc9a86d05e5e835051de22f6cb30ec1921e9705 18-Apr-2014 John Reck <jreck@google.com> Force a full redraw on surface change

Bug: 13913604

Change-Id: Ie90c7ee74cf83358e19d8b4f0bae078540a93a8d
anvasContext.cpp
6f07a0dc875a9eac67312085a8e0133b9e2f4771 17-Apr-2014 John Reck <jreck@google.com> Add missing resume() call

Bug: 14087850

Change-Id: Ic555ca6027e617c7ed6e7e66b5cf713c36ed1c6c
anvasContext.cpp
e8a866d4a41daa43e394505e12503b32c2d929e4 14-Apr-2014 John Reck <jreck@google.com> Merge "Fix issue with bitmap uploading"
860d155f866cc15a725e7ce03763280987f24901 12-Apr-2014 John Reck <jreck@google.com> Fix issue with bitmap uploading

Bug: 13912749

Change-Id: Ic23fa1d280118dc93dc2716a4a24cc0bbbdca595
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
fae904d63947fe1687d1d44be29234cc3d538f24 14-Apr-2014 John Reck <jreck@google.com> Fence on destruction

Bug: 14052927
destroyCanvasAndSurface() needs a fence as when it returns the
underlying BufferQueue is going to be released from under
the render thread.

Change-Id: I0147a1d5ec5adf0239c761ef22f65cd8c8a137df
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
822bbb382fa6b6c8d1b45770e27c2c2732a7afb7 11-Apr-2014 John Reck <jreck@google.com> Merge "Make attachFunctor blocking"
d3d8dafc2f61fb118c060720b52684c59303f3db 11-Apr-2014 John Reck <jreck@google.com> Make attachFunctor blocking

Bug: 13930200

Change-Id: I9b0cf92fd16bb30baa09b6f8d7ae22a8b2a7fd80
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
8ca3eecc2b7fe507d3482745efc4cd2567ad15a1 10-Apr-2014 John Reck <jreck@google.com> Remove sync flush

Bug: 13952590
It was attempting to flush state changes after the canvas was
destroyed, which caused layer updates to crash.

Due to the removal of SetDisplayListData, the sync mode isn't able
to do anything ever, so remove it.

Change-Id: I1e18ce288d81fd47cc6e612afda9476f75ecef2e
anvasContext.cpp
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
f4198b713e43c0c0f9adac74203cf24c2a49b802 10-Apr-2014 John Reck <jreck@google.com> Merge hasFunctors & pushStaging into prepareTree

Bug: 13902607
Fixes synchronous mode for WebView in HardwareLayers

Change-Id: I90de1e26dcfd9b75cc2f03bac72705fc23237b68
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
8e1f918738abf70a4dc86dbb12b386a9deea37f8 10-Apr-2014 John Reck <jreck@google.com> Merge "Switch DisplayListData to a staging model"
8de65a8e05285df52a1e6f0c1d5616dd233298a7 10-Apr-2014 John Reck <jreck@google.com> Switch DisplayListData to a staging model

Bug: 13912977

Change-Id: I5b2f664e797be22a58300964f57ceb4fab60528c
anvasContext.cpp
anvasContext.h
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
f7d9c1dc84671d4e99657ef071d275700d85bb11 09-Apr-2014 John Reck <jreck@google.com> Fix ThreadedRenderer.setEnabled()

Bug: 13914116
Fixes lifecycle issues around setEnabled where ThreadedRenderer
was reporting as being enabled before it had a Surface. This is
incorrect.

Also fix some EGL lifecycle issues

Change-Id: I12ebb279707f9b533a570b61d68735d858b560bf
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
1949e7928eeec22cd3f74b5f763a4eb433238453 09-Apr-2014 John Reck <jreck@google.com> Ensure there's a GL context before creating a Layer

Bug: 13745587

Change-Id: Ib0ec059d9a5974a48734daeec9d83580cada94a3
anvasContext.cpp
anvasContext.h
enderProxy.cpp
e2c455264351964bf1ae78da2256c17258f0d3ea 08-Apr-2014 John Reck <jreck@google.com> Veto pool TODO

Change-Id: I50067dba630b75aa539e4406cfc15f66949684b3
enderProxy.cpp
enderProxy.h
85189c5dafb08f051c7024f42ceedcbcf5dbbc7c 08-Apr-2014 John Reck <jreck@google.com> Merge "Fence on draws that are reported"
28ad7b52e038ef0cdd89f753d9839444a434b299 08-Apr-2014 John Reck <jreck@google.com> Fence on draws that are reported

Change-Id: Ib2ec16cbda40f40df1710bdc868869ea8301f17e
enderProxy.cpp
enderProxy.h
087bc0c14bdccf7c258dce0cdef46a69a839b427 05-Apr-2014 John Reck <jreck@google.com> Refcount RenderNode

Change-Id: I7a86db8acc2b78ef33d987a43a119f5933d7d752
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
0d1f634f4b5e1bb37aa51777efb6a68619488d01 29-Mar-2014 John Reck <jreck@google.com> Add invokeFunctor

Change-Id: I09e675d3e02e3e528642175ada00b2b17fab7652
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
750ca6dbdb259aea0ca5b77380a9303e586ef3ea 29-Mar-2014 John Reck <jreck@google.com> Remove kStatusInvoke & kStatusDraw

They are unused

Change-Id: I44ecf1164dc6bc1b09438e733976d5a97a25f00e
anvasContext.cpp
anvasContext.h
668f0e38ef0277d55d3118af37e17b8c435df85c 26-Mar-2014 John Reck <jreck@google.com> Async drawing!

Change-Id: I7e728356f58af88174328a8c0b90d27b128bfe01
anvasContext.cpp
rawFrameTask.cpp
rawFrameTask.h
enderProxy.cpp
enderProxy.h
bfb07a03777af424e99bca1dac4c903aaf44e99d 25-Mar-2014 John Reck <jreck@google.com> Move where updateProperties is called

Change-Id: I27da448996019094c44487ce28c5689d098d6535
anvasContext.cpp
16efa9a330fcf10a09cc9564e9d319c6f4be2ae1 18-Mar-2014 John Reck <jreck@google.com> Fix functor removal

Bug: 12179257

Change-Id: Ib63a351b1b289b08452f17086cb6c8b688e2ba4d
anvasContext.cpp
e18264b079481a244b30e3f71012c53bbd861f92 12-Mar-2014 John Reck <jreck@google.com> Rename DisplayList->RenderNode

Change-Id: Id42e23c9a1a6eb6eaeafef707ced7fa6887b03d0
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
be34f2f3b340196426bdf558b28951359a4d84fa 10-Mar-2014 John Reck <jreck@google.com> DisplayList lifecycle changes

Bug: 13360343
Change DisplayList to be more forgiving with weaker lifecycle
requirements. Is more self-managed with a strong reference
to the renderer it needs

Also fix naming mismatch

Change-Id: I5c89453a72a52954f6f959f0846199705dbb6476
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
44fd8d24f761f82d21e9b00932648a1b6bf91449 26-Feb-2014 John Reck <jreck@google.com> DisplayList overhaul

Change-Id: I53418d580c98f706e971545cff81b9921c12cc5f
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
19b6bcfd83eb7fb92ebd06d2fec89e308311f1d0 15-Feb-2014 John Reck <jreck@google.com> Support HardwareLayers in RenderThread

Also has a few HardwareLayer lifecycle fixes

Change-Id: I6308cb05f8f199eed72189ace768013a46815941
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
fc53ef27793a39e9effd829e9cae02a9ca14147e 11-Feb-2014 John Reck <jreck@google.com> Implement missing safelyRun() on ThreadedRenderer

Change-Id: I14b75f37a13fabaa759a51369190dbdc84087c4b
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
a6260b83da52b80438074a9fd207327d9e6e6d03 30-Jan-2014 John Reck <jreck@google.com> Fix nano vs. millis

Change-Id: I54f752bb7faab5fa66c36252c9f7cf8f5c9939c9
enderTask.h
enderThread.cpp
4f02bf4eef6af47f35c70c4dda5b7b9523d89ca0 04-Jan-2014 John Reck <jreck@google.com> Native-side proxy

Remove RemoteGLRenderer
Remove reflection-based control

Change-Id: If17c2bbb61c7141986d88c4763def77ed1074985
anvasContext.cpp
anvasContext.h
enderProxy.cpp
enderProxy.h
enderTask.cpp
enderTask.h
enderThread.cpp
enderThread.h
23b797ab5151eb2474f3bdd679f2f07bfd723042 04-Jan-2014 John Reck <jreck@google.com> EGL migration to native

Move EGL state management to native side for RemoteGLRenderer

Change-Id: I12b0fed70246564d4caebf87374e8bbca655c572
anvasContext.cpp
anvasContext.h
69d251383f3656a580c3878045de235d70a12000 19-Dec-2013 Brian Carlstrom <bdc@google.com> Track Looper decoupling from ALooper

Change-Id: I83d1f5f6600019268c53706b7bf6d94b84931e18
enderThread.cpp
cec24ae16e9a0a7c3075f1a8d9149bb7fb3813fc 05-Nov-2013 John Reck <jreck@google.com> RenderThread work

Hacky prototype needs a private API to enable

Change-Id: I21e0ddf3cdbd38a4036354b5d6012449e1a34849
enderTask.cpp
enderTask.h
enderThread.cpp
enderThread.h