15 FML_LOG(ERROR) <<
"TransformLayer is constructed with an invalid matrix.";
23 if (!
context->IsSubtreeDirty()) {
25 if (transform_ != prev->transform_) {
26 context->MarkSubtreeDirty(
context->GetOldLayerPaintRegion(old_layer));
29 context->PushTransform(transform_);
31 context->SetLayerPaintRegion(
this,
context->CurrentSubtreeRegion());
35 auto mutator =
context->state_stack.save();
36 mutator.transform(transform_);
48 auto mutator =
context.state_stack.save();
49 mutator.transform(transform_);
const DlRect & child_paint_bounds() const
void PrerollChildren(PrerollContext *context, DlRect *child_paint_bounds)
void PaintChildren(PaintContext &context) const override
virtual void DiffChildren(DiffContext *context, const ContainerLayer *old_layer)
void set_paint_bounds(const DlRect &paint_bounds)
bool needs_painting(PaintContext &context) const
#define FML_LOG(severity)
#define FML_DCHECK(condition)
std::shared_ptr< ContextGLES > context
A 4x4 matrix using column-major storage.
constexpr TRect TransformAndClipBounds(const Matrix &transform) const
Creates a new bounding box that contains this transformed rectangle, clipped against the near clippin...