Blend using calc() with 0 values
Created attachment 426218 [details] Patch
Comment on attachment 426218 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=426218&action=review > Source/WebCore/animation/CSSPropertyAnimation.cpp:851 > + if (!canInterpolate(from, to)) > + (destination->*m_setter)(progress ? LengthBox(value(to)) : LengthBox(value(from))); > + else { You could early return instead of having an else branch. > Source/WebCore/platform/LengthBox.h:61 > + LengthBox(const LengthBox& box) > + : RectEdges { Length(box.top()), Length(box.right()), Length(box.bottom()), Length(box.left()) } > + { > + } > + I guess you also just give both RectEdges and LengthBox defaulted copy constructors.
Committed r276138 (236632@main): <https://commits.webkit.org/236632@main>
(In reply to Antti Koivisto from comment #2) > Comment on attachment 426218 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=426218&action=review > > > Source/WebCore/animation/CSSPropertyAnimation.cpp:851 > > + if (!canInterpolate(from, to)) > > + (destination->*m_setter)(progress ? LengthBox(value(to)) : LengthBox(value(from))); > > + else { > > You could early return instead of having an else branch. Good point, made the change in the landed patch. > > Source/WebCore/platform/LengthBox.h:61 > > + LengthBox(const LengthBox& box) > > + : RectEdges { Length(box.top()), Length(box.right()), Length(box.bottom()), Length(box.left()) } > > + { > > + } > > + > > I guess you also just give both RectEdges and LengthBox defaulted copy > constructors. Yes, that's the approach I took in the landed patch.
<rdar://problem/77110128>