Improve CreateClippedDrawTarget API
Categories
(Core :: Graphics, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox69 | --- | fixed |
People
(Reporter: jrmuizel, Assigned: jrmuizel)
References
(Blocks 1 open bug)
Details
(Whiteboard: [wr-q4])
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
Details |
I want to make more of the information internal to Moz2D so that it's easier to make things offset invariant for blob recoordination
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
There's bugs with my latest attempt: https://treeherder.mozilla.org/#/jobs?repo=try&revision=437700352696d31b818d3a932134aa474593a1fa&selectedJob=239449442
layout/reftests/svg/svg-integration/clipPath-transformed-html-01.xhtml
is probably a good one to tackle first.
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 2•5 years ago
|
||
Assignee | ||
Comment 3•5 years ago
|
||
This changes CreateClippedDrawTarget so that instead of taking
a max size and a transform it just takes a user space rect of
the desired bounds.
This change allows the caller to not worry about the computing
a max size based on the current clip. Instead this responsibility
is lowered into the specific backends.
The main motivation for this work is to allow blob recoordination
to create recordings that don't depend on the current clip.
Some additional benefits are that the API is easier to use and
as can be seen simplifies the SVG masking code because it doesn't
need to track surface offsets manually.
It's also an important step towards removing all the uses of
gfxContext::GetClipExtents which will let us get rid of the separate
clipping stack in gfxContext and help us move off of gfxContext
completely.
Most backend implementations of CreateClippedDrawTarget are relatively
simple. However things are more complicated for DrawTargetCapture
because of its lazy resolution. The solution to this is explained
in the comments at the definition of the ResolveTarget struct.
Comment 5•5 years ago
|
||
Backed out for multiple reftest failures
Backout link: https://hg.mozilla.org/integration/autoland/rev/7414bfc0414566bb9a9e883e5a54e53a95824eb1
Push link: https://treeherder.mozilla.org/#/jobs?repo=autoland&selectedJob=252773693&resultStatus=testfailed%2Cbusted%2Cexception%2Crunnable&revision=88e6c989e78320d6a37671e23b92cc4f68736295
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=252773693&repo=autoland&lineNumber=11527
Comment 7•5 years ago
|
||
bugherder |
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Comment 8•5 years ago
|
||
== Change summary for alert #21598 (as of Wed, 26 Jun 2019 05:51:50 GMT) ==
Improvements:
4% raptor-motionmark-htmlsuite-firefox linux64-shippable opt 29.86 -> 30.97
For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=21598
Updated•5 years ago
|
Description
•