Lines Matching refs:frame

136 void DamageAccumulator::applyMatrix4Transform(DirtyStack* frame) {  in applyMatrix4Transform()  argument
137 mapRect(frame->matrix4, frame->pendingDirty, &mHead->pendingDirty); in applyMatrix4Transform()
166 static DirtyStack* findParentRenderNode(DirtyStack* frame) { in findParentRenderNode() argument
167 while (frame->prev != frame) { in findParentRenderNode()
168 frame = frame->prev; in findParentRenderNode()
169 if (frame->type == TransformRenderNode) { in findParentRenderNode()
170 return frame; in findParentRenderNode()
176 static DirtyStack* findProjectionReceiver(DirtyStack* frame) { in findProjectionReceiver() argument
177 if (frame) { in findProjectionReceiver()
178 while (frame->prev != frame) { in findProjectionReceiver()
179 frame = frame->prev; in findProjectionReceiver()
180 if (frame->type == TransformRenderNode && frame->renderNode->hasProjectionReceiver()) { in findProjectionReceiver()
181 return frame; in findProjectionReceiver()
188 static void applyTransforms(DirtyStack* frame, DirtyStack* end) { in applyTransforms() argument
189 SkRect* rect = &frame->pendingDirty; in applyTransforms()
190 while (frame != end) { in applyTransforms()
191 if (frame->type == TransformRenderNode) { in applyTransforms()
192 mapRect(frame->renderNode->properties(), *rect, rect); in applyTransforms()
194 mapRect(frame->matrix4, *rect, rect); in applyTransforms()
196 frame = frame->prev; in applyTransforms()
200 void DamageAccumulator::applyRenderNodeTransform(DirtyStack* frame) { in applyRenderNodeTransform() argument
201 if (frame->pendingDirty.isEmpty()) { in applyRenderNodeTransform()
205 const RenderProperties& props = frame->renderNode->properties(); in applyRenderNodeTransform()
211 if (props.getClipDamageToBounds() && !frame->pendingDirty.isEmpty()) { in applyRenderNodeTransform()
212 if (!frame->pendingDirty.intersect(SkRect::MakeIWH(props.getWidth(), props.getHeight()))) { in applyRenderNodeTransform()
213 frame->pendingDirty.setEmpty(); in applyRenderNodeTransform()
218 mapRect(props, frame->pendingDirty, &mHead->pendingDirty); in applyRenderNodeTransform()
221 if (props.getProjectBackwards() && !frame->pendingDirty.isEmpty()) { in applyRenderNodeTransform()
223 DirtyStack* parentNode = findParentRenderNode(frame); in applyRenderNodeTransform()
227 applyTransforms(frame, projectionReceiver); in applyRenderNodeTransform()
228 projectionReceiver->pendingDirty.join(frame->pendingDirty); in applyRenderNodeTransform()
231 frame->pendingDirty.setEmpty(); in applyRenderNodeTransform()