summaryrefslogtreecommitdiffstats
path: root/libs/hwui/RenderNode.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Yank ResourceCache out of CachesJohn Reck2014-11-061-3/+7
| | | | | | | | | | | 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
* Layer changesJohn Reck2014-10-311-1/+6
| | | | | | | | | | | | 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
* Fix damage bugJohn Reck2014-10-221-0/+3
| | | | | Bug: 18087374 Change-Id: Ie183392122c73f93010fb3f4be071c924b352966
* Avoid creating Caches instance with gfxinfo dumpChris Craik2014-10-011-4/+7
| | | | | bug:17509891 Change-Id: I182851068ba04926d60226b3ace95efea59eac45
* Fix save count offsetting within DisplayList chunksChris Craik2014-09-051-2/+2
| | | | | bug:17388541 Change-Id: I7cb1139b8cd30f72ae7c6de2074c3c5865b8f309
* Merge "Yet more layer tracking logging" into lmp-devJohn Reck2014-09-051-0/+13
|\
| * Yet more layer tracking loggingJohn Reck2014-09-041-0/+13
| | | | | | | | | | | | Bug: 17208461 Change-Id: I55e7d0921eb565867e966d68b798b7b92c391b55
* | Merge "Prioritize reveal clipping over Outline clipping" into lmp-devChris Craik2014-09-041-2/+1
|\ \ | |/ |/|
| * Prioritize reveal clipping over Outline clippingChris Craik2014-09-041-2/+1
| | | | | | | | | | | | | | | | | | | | bug:15780987 bug:17350602 Also update docs around clipping nesting behavior, and some Z ordering behavior. Change-Id: Iaa204350a0adfdcbd8c4b821fb4a9c0ae22f2613
* | Merge "Track buildLayer calls, destroy if unused" into lmp-devJohn Reck2014-08-281-0/+8
|\ \ | |/ |/|
| * Track buildLayer calls, destroy if unusedJohn Reck2014-08-281-0/+8
| | | | | | | | | | | | Bug: 17208461 Change-Id: Ibdb104a493285d77a6891c5e74e38a52c7014da9
* | Merge "Update transform isolation to handle command chunks" into lmp-devChris Craik2014-08-281-37/+16
|\ \ | |/ |/|
| * Update transform isolation to handle command chunksChris Craik2014-08-271-37/+16
| | | | | | | | | | | | | | | | | | | | 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
* | Animator stuffJohn Reck2014-08-271-1/+1
|/ | | | | | Bug: 17228458 Change-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d
* Create z reordering boundaries around dispatchDrawChris Craik2014-08-251-25/+30
| | | | | | | | | | 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
* Merge "Don't run animators in buildLayer" into lmp-devJohn Reck2014-08-211-2/+7
|\
| * Don't run animators in buildLayerJohn Reck2014-08-211-2/+7
| | | | | | | | | | | | Bug: 17172689 Change-Id: Ib47d589c002543327fa336718440f9f8c95524e0
* | Fix layer shadow transform crashChris Craik2014-08-211-7/+6
|/ | | | | | bug:17180252 Change-Id: Ia648b8c98a217a3a4973917bf255d1397802cbbe
* Define shadow casting behavior within layersChris Craik2014-08-151-1/+12
| | | | | | | | | | | | 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
* Fix ripples projecting to scrolled viewChris Craik2014-08-121-3/+12
| | | | | | | | | | | | | 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
* Fix damage for layers for projection receiversJohn Reck2014-08-081-11/+12
| | | | | | Bug: 16880228 Change-Id: I59ab760a21f49cc2cac0d8936b173cff292e6114
* Fix leak of SkPathRefsChris Craik2014-08-081-3/+15
| | | | | | | | | bug:15939479 SkPath objects owned by DisplayListOps weren't being torn down, and thus weren't releasing their SkPathRef innards. Change-Id: I2581e124600a93a399ef3251f456c02ab52839a8
* Add missing null checkJohn Reck2014-08-061-2/+4
| | | | | | Bug: 16352267 Change-Id: Ib60baa6d22ec02ba623a297660e2e3ecc7557d0f
* roundOut layer damageJohn Reck2014-08-051-1/+3
| | | | | | Bug: 16734708 Change-Id: I8815b7cf5f74be6deda98aaaf7cde85509def373
* Add outline alphaChris Craik2014-07-311-2/+8
| | | | | | | | | | 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
* Use RoundRect clipping for circle reveal animationChris Craik2014-07-301-22/+10
| | | | | | | | bug:16630975 Also, remove inverse clipping feature from reveal animator. Change-Id: I770a4eb48cd123b0ca0f39d16a0f3eefd1be3653
* Merge "Add kModeSync" into lmp-devBo Liu2014-07-241-2/+7
|\
| * Add kModeSyncJohn Reck2014-07-241-2/+7
| | | | | | | | | | | | Bug: 16526750 Change-Id: I4c087160e80432739321172fd57880846c8de6e0
* | Move ClipBounds to nativeChris Craik2014-07-251-9/+13
| | | | | | | | | | | | | | | | bug:15698973 Also simplifies RenderNode LTRB properties Change-Id: I09263a697b71d325a46b57cd5250a2b165f251c8
* | Fix ALL compile warningsJohn Reck2014-07-241-1/+2
|/ | | | | | All warnings/errors fixed for GCC & Clang Change-Id: I2ece3a136a5ae97a9acc3069537ed986238b5fd3
* Make setter methods on Outline call setEmpty() based on paramsChris Craik2014-07-221-6/+13
| | | | | | | | | | | | 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
* Fix layers lifecycle issuesJohn Reck2014-07-081-26/+54
| | | | | | | | | Bug: 16118540 Fix an issue where we could have a reference to a Layer after the GL context was destroyed Change-Id: I7bfd909d735ca6b942ebe188fc10099422eb6d95
* Revert "Fix destroyHardwareResources"John Reck2014-07-081-7/+2
| | | | | | This reverts commit bac48c4d0c6f71f67074a430cd365ea2e15924b8. Change-Id: Iba8b729d5e91ca31976fc2bdf9c1dd5fdb19de9a
* Fix destroyHardwareResourcesJohn Reck2014-07-071-2/+7
| | | | | | | | 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
* Fix onTrimMemory for HardwareRendererJohn Reck2014-06-301-4/+15
| | | | | | | | | Also fixes detachFunctor possibly drawing after return Bug: 15189843 Bug: 15990672 Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
* Animator refactoring & fixesJohn Reck2014-06-261-61/+9
| | | | | | | | | | | | 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
* No-fail invokeFunctorJohn Reck2014-06-231-2/+2
| | | | | | | Bug: 15513308 Bug: 15449247 Change-Id: I13a29f9c8d4975cdda6dcb33b6332c2555ff0f7c
* Update 'DisplayList' vs 'RenderNode' naming in several placesChris Craik2014-06-231-22/+22
| | | | Change-Id: I635c6627d098b661fb9b0ba1bd42fa6d7277d287
* Merge "Wrap ViewGroup content in save/restore to protect composited children"Chris Craik2014-06-201-26/+38
|\
| * Wrap ViewGroup content in save/restore to protect composited childrenChris Craik2014-06-201-26/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Throw ISE on too-big-views-with-layersJohn Reck2014-06-181-1/+14
| | | | | | | | | | | | Bug: 12971954 Change-Id: I3ef995e91f236014b0a72a90846ef19ce6dc42b1
* | Fix dirty calculation for layer updatesJohn Reck2014-06-181-1/+1
| | | | | | | | | | | | | | | | | | | | 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
* | Handle Z in DAJohn Reck2014-06-171-1/+1
|/ | | | | | Bug: 15671775 Change-Id: I33c7a70e78ef523ffd03165fb6c39d8e04d04f1f
* Move LayerType to RenderNodeJohn Reck2014-06-121-31/+117
| | | | Change-Id: Icb79a5015cb0362b1f3a66d09007450730135a97
* Fix DA bugsJohn Reck2014-06-121-21/+19
| | | | | | | | | | * Now aware of transform of DrawDisplayListOp * Supports projection Bug: 15539677 Bug: 15506680 Change-Id: Ic16f482cd48c3add12e49eca529281be12b93491
* Even FASTER damage calculations!John Reck2014-06-041-5/+47
| | | | | | | | | | | * 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
* Merge "Update HWUI matrix API"Derek Sollenberger2014-05-301-2/+2
|\
| * Update HWUI matrix APIDerek Sollenberger2014-05-291-2/+2
| | | | | | | | | | | | | | 1. more closely mirror Skia API by using const ref instead of ptrs 2. store SkMatrix in the drawOp instead of the linear allocation heap Change-Id: I4b9f6f76b9f7d19325e29303d27b793679fd4823
* | Enable debug stuffsJohn Reck2014-05-291-0/+11
|/ | | | | | | | Bug: 14596762 * dumpsys gfxinfo implemented * profile GPU visual_bars implemented Change-Id: Icb948a9d5af5989b5615504d0d76ade64b93ef5b
* Disable shadow drawing for empty/null outlinesChris Craik2014-05-211-2/+3
| | | | Change-Id: I60d0f326cfab97d88c49d17cf32e619b5e60b94a