Add a LoadComplete message so that script informs the constellation, which can then inform the compositor (and anyone else, later) about the completion of loading a page. This is important for ref tests, which should not emit a PNG until load has completed, even if we perform a composite before then.
Note that we must *also* wait for the `ready_state` to indicate that additionally layout has completed any associated reflow with the page, otherwise we could get the `LoadComplete` while the final reflow is still in progress and thus would write out the `n-1`'th reflow result.
r? @pcwalton
which can then inform the compositor (and anyone else, later) about
the completion of loading a page. This is important for ref tests,
which should not emit a PNG until load has completed, even if we
perform a composite before then.
If html has empty line, it is not handled currently.
Because pending line is empty in such case, flushing current line doesn't care empty line.
For example, below html has two empty line(line 2 and line 4)
<div>
test1
test2
</div>
To handle empty line, added empty box to pending line.
If html has empty line, it is not handled currently.
Because pending line is empty in such case, flushing current line doesn't care empty line.
For example, below html has two empty line(line 2 and line 4)
<div>
test1
test2
</div>
To handle empty line, added empty box to pending line.
Previously, small errors were very hard to see because they would only have a value that was off by a few points from solid white. Now, they will show up vibrantly!
I considered reconstructing the pixels and using either black/white or a scaling "red" but in practice this gives good results on a wide variety of errors and has the bonus that if you've got chroma-power you can tell if there's an R, G, or B error :-)
r? @metajack
Ref tests should now be stable enough to put them back in the list of checked tests that we run at checkin. This will at least ensure ACID1 no longer breaks.
I had to disable three tests that have regressed since ref tests first became unstable. I will open separate issues for each of them if we agree to land this PR.
This builds on top of #1560 (… which I realize now may confuse Critic)
This refactors Namespace to reduce the overall amount of copying and conversion. In particular, it makes parsed selectors contain Namespace enums rather than strings.
Lower-case attribute names when parsing selectors rather than when matching. This avoid one allocation in matching code.
Also do not lowercase names for *AttributeNS APIs. (Move lower-casing to callers.)