summaryrefslogtreecommitdiff
path: root/libs/hwui/RenderNode.cpp
AgeCommit message (Collapse)Author
2014-11-06resolved conflicts for merge of be70c771 to masterJohn Reck
Change-Id: I469905bef7361c18aab725778694567d1987c06d
2014-11-06Yank ResourceCache out of CachesJohn Reck
Bug: 17947547 Pull the ResourceCache (aka, ref-counting side channel) out of Caches so that DisplayListRenderer doesn't use Caches, avoiding the risk of instantiating Caches on the wrong thread or without a GL context Change-Id: I7d63b70b3b0a0163308c5dedd6ef255eadebe8fd
2014-10-31am e05575e9: am a8d83d63: Merge "Layer changes" into lmp-mr1-dev automerge: ↵John Reck
a51fba0 * commit 'e05575e9c36850d8cfe49396ac9a1372511b12bf': Layer changes
2014-10-31Layer changesJohn Reck
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
2014-10-23am 41707d01: am ebcfd24b: am 68335df6: Merge "Fix damage bug" into lmp-mr1-devJohn Reck
* commit '41707d01e9e950ebd00642ef3564edcff8c539e7': Fix damage bug
2014-10-22Fix damage bugJohn Reck
Bug: 18087374 Change-Id: Ie183392122c73f93010fb3f4be071c924b352966
2014-10-15Clean up physical couplingTom Hudson
Narrow the use of #include directives in hwui, replacing with forward declarations where straightforward. Speeds compiles; doesn't do any restructuring of code. Change-Id: Icac2baffb5896f55d8c6718e9bd9d4bfa02d3ca0
2014-10-01Avoid creating Caches instance with gfxinfo dumpChris Craik
bug:17509891 Change-Id: I182851068ba04926d60226b3ace95efea59eac45
2014-09-05Fix save count offsetting within DisplayList chunksChris Craik
bug:17388541 Change-Id: I7cb1139b8cd30f72ae7c6de2074c3c5865b8f309
2014-09-05Merge "Yet more layer tracking logging" into lmp-devJohn Reck
2014-09-04Yet more layer tracking loggingJohn Reck
Bug: 17208461 Change-Id: I55e7d0921eb565867e966d68b798b7b92c391b55
2014-09-04Merge "Prioritize reveal clipping over Outline clipping" into lmp-devChris Craik
2014-09-04Prioritize reveal clipping over Outline clippingChris Craik
bug:15780987 bug:17350602 Also update docs around clipping nesting behavior, and some Z ordering behavior. Change-Id: Iaa204350a0adfdcbd8c4b821fb4a9c0ae22f2613
2014-08-28Merge "Track buildLayer calls, destroy if unused" into lmp-devJohn Reck
2014-08-28Track buildLayer calls, destroy if unusedJohn Reck
Bug: 17208461 Change-Id: Ibdb104a493285d77a6891c5e74e38a52c7014da9
2014-08-28Merge "Update transform isolation to handle command chunks" into lmp-devChris Craik
2014-08-27Animator stuffJohn Reck
Bug: 17228458 Change-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d
2014-08-27Update transform isolation to handle command chunksChris Craik
bug:15570351 Prevent drawing transformations on a ViewGroup's canvas from directly affecting the transformation of the children through the renderer, since it's already baked into mTransformFromParent at record time. Change-Id: I6310a2260dfe4def0bde1fd2c5b93791a645d586
2014-08-25Create z reordering boundaries around dispatchDrawChris Craik
bug:16012254 This means rendernodes with a Z will no longer be drawn at the end of their parent's DisplayList, but at the end of the associated reorder region (DisplayListData::Chunk). Change-Id: Ia033fee9d9a4db567b2a8d5e90fc57a4d0a64544
2014-08-21Merge "Don't run animators in buildLayer" into lmp-devJohn Reck
2014-08-21Don't run animators in buildLayerJohn Reck
Bug: 17172689 Change-Id: Ib47d589c002543327fa336718440f9f8c95524e0
2014-08-21Fix layer shadow transform crashChris Craik
bug:17180252 Change-Id: Ia648b8c98a217a3a4973917bf255d1397802cbbe
2014-08-15Define shadow casting behavior within layersChris Craik
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
2014-08-12Fix ripples projecting to scrolled viewChris Craik
bug:16873774 1) Fix projectionReceiveIndex, which could in some cases point at translate/restore ops. 2) Use background translateX / translateY for projected RenderNodes. This makes them match background position, and thus properly account for scroll. Change-Id: Idbd5700858fd67c5abea0270a1012952fe09ac22
2014-08-08Fix damage for layers for projection receiversJohn Reck
Bug: 16880228 Change-Id: I59ab760a21f49cc2cac0d8936b173cff292e6114
2014-08-08Fix leak of SkPathRefsChris Craik
bug:15939479 SkPath objects owned by DisplayListOps weren't being torn down, and thus weren't releasing their SkPathRef innards. Change-Id: I2581e124600a93a399ef3251f456c02ab52839a8
2014-08-06Add missing null checkJohn Reck
Bug: 16352267 Change-Id: Ib60baa6d22ec02ba623a297660e2e3ecc7557d0f
2014-08-05roundOut layer damageJohn Reck
Bug: 16734708 Change-Id: I8815b7cf5f74be6deda98aaaf7cde85509def373
2014-07-31Add outline alphaChris Craik
bug:16140822 bug:16566746 This allows background drawables to alter the opacity of a shadow being cast with their own alpha values. Change-Id: I49698cc7c1bf4b2b55ffe2f82899543ca62bc61c
2014-07-30Use RoundRect clipping for circle reveal animationChris Craik
bug:16630975 Also, remove inverse clipping feature from reveal animator. Change-Id: I770a4eb48cd123b0ca0f39d16a0f3eefd1be3653
2014-07-24Merge "Add kModeSync" into lmp-devBo Liu
2014-07-24Add kModeSyncJohn Reck
Bug: 16526750 Change-Id: I4c087160e80432739321172fd57880846c8de6e0
2014-07-25Move ClipBounds to nativeChris Craik
bug:15698973 Also simplifies RenderNode LTRB properties Change-Id: I09263a697b71d325a46b57cd5250a2b165f251c8
2014-07-24Fix ALL compile warningsJohn Reck
All warnings/errors fixed for GCC & Clang Change-Id: I2ece3a136a5ae97a9acc3069537ed986238b5fd3
2014-07-22Make setter methods on Outline call setEmpty() based on paramsChris Craik
bug:16142564 Additionally, better define behavior around null outline providers: A view with an empty outline, and setClipToOutline=true will not be rendered, though one with a null outline provider (and thus no outline) will be. Change-Id: Ic9549841b107b2eb51b417c66058a0cd69dd89eb
2014-07-08Fix layers lifecycle issuesJohn Reck
Bug: 16118540 Fix an issue where we could have a reference to a Layer after the GL context was destroyed Change-Id: I7bfd909d735ca6b942ebe188fc10099422eb6d95
2014-07-08Revert "Fix destroyHardwareResources"John Reck
This reverts commit bac48c4d0c6f71f67074a430cd365ea2e15924b8. Change-Id: Iba8b729d5e91ca31976fc2bdf9c1dd5fdb19de9a
2014-07-07Fix destroyHardwareResourcesJohn Reck
The UI thread needs to know whether or not the display list is valid, so bring back View.destroyHardwareResources and instead have the native side assert that View did the right thing Change-Id: I4f8dee6e9c13ec7ab520becdc5cfe20e92a76f8f
2014-06-30Fix onTrimMemory for HardwareRendererJohn Reck
Also fixes detachFunctor possibly drawing after return Bug: 15189843 Bug: 15990672 Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
2014-06-26Animator refactoring & fixesJohn Reck
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
2014-06-23No-fail invokeFunctorJohn Reck
Bug: 15513308 Bug: 15449247 Change-Id: I13a29f9c8d4975cdda6dcb33b6332c2555ff0f7c
2014-06-23Update 'DisplayList' vs 'RenderNode' naming in several placesChris Craik
Change-Id: I635c6627d098b661fb9b0ba1bd42fa6d7277d287
2014-06-20Merge "Wrap ViewGroup content in save/restore to protect composited children"Chris Craik
2014-06-20Wrap ViewGroup content in save/restore to protect composited childrenChris Craik
bug:15570351 Pos Z composited children are drawn before the primary restore for a RenderNode. This means that without an additional save/restore (which wraps the content) they aren't protected from transformations/clips that happen within the ViewGroup's DisplayList. Also changes RenderNode to use OpenGLRenderer tag for displaylist dumping consistency, and simplifies the entry points into RenderNode drawing, since the distinction between tree root vs tree internal is no longer important. Change-Id: I2621eba0592c74d71f85a91a4ab3d0da2d7468d3
2014-06-18Throw ISE on too-big-views-with-layersJohn Reck
Bug: 12971954 Change-Id: I3ef995e91f236014b0a72a90846ef19ce6dc42b1
2014-06-18Fix dirty calculation for layer updatesJohn Reck
Bug: 15682142 Defer early return of alpha <= 0 for damage accumulation until popTransform() so that layer updates will be performed regardless of alpha Change-Id: Ifb94dd3ed2d96d610e6f2f3071933903016273a5
2014-06-17Handle Z in DAJohn Reck
Bug: 15671775 Change-Id: I33c7a70e78ef523ffd03165fb6c39d8e04d04f1f
2014-06-12Move LayerType to RenderNodeJohn Reck
Change-Id: Icb79a5015cb0362b1f3a66d09007450730135a97
2014-06-12Fix DA bugsJohn Reck
* Now aware of transform of DrawDisplayListOp * Supports projection Bug: 15539677 Bug: 15506680 Change-Id: Ic16f482cd48c3add12e49eca529281be12b93491
2014-06-04Even FASTER damage calculations!John Reck
* 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