Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upsimple_scroll_to_fragment.html is now a perma-failure #19268
Comments
|
This regression was caused by #19127. cc @tigercosmos |
|
See |
|
I will check for it tomorrow. |
|
This is what I saw on Firefox
Looks like it is the test problem? |
|
It does seem like the test was incorrect, but the change #19127 made no green appear at all. |
|
The test want to test if two show as the same, but we can see they are not equal. |
|
You are correct that the test does not pass in Firefox. However in Servo we have a layout bug that makes the test pass (which we should fix in another issue). #19127 made the test not pass in Servo, in a way that is very different from the way that it does not pass in Firefox. Does that make sense? |
|
I see. very weird. |
|
From servo/components/script/dom/element.rs Lines 366 to 376 in b2b51d3 Change to this will pass the test. fn has_scrolling_box(&self) -> bool {
// TODO: scrolling mechanism, such as scrollbar (We don't have scrollbar yet)
// self.has_scrolling_mechanism()
self.overflow_x_is_hidden() ||
self.overflow_y_is_hidden() ||
self.overflow_x_is_scroll() ||
self.overflow_y_is_scroll()
}
fn has_overflow(&self) -> bool {
self.ScrollHeight() >= self.ClientHeight() ||
self.ScrollWidth() >= self.ClientWidth()
}Although I have find a workaround for this issue, I think the most important reason is from #19280 |
|
@highfive assign me |
|
Hey @tigercosmos! Thanks for your interest in working on this issue. It's now assigned to you! |
|
test for this web-platform-tests/wpt#8409 |
|
this one should be continue after #19280 done and web-platform-tests/wpt#8409 done. |
|
Here's a related cssom-view issue: w3c/csswg-drafts#1526 |
|
@highfive: unassigned me. |
|
I wonder if it makes sense to back out the original PR for the moment, since it breaks scrolling from script? |
|
The origin PR did fix many tests. This is the only case that failed. Beside, this issue is caused by #19280 more precisely. |
|
@tigercosmos In that case, perhaps the best thing to do here is to remove the code for "Step 10" for SetScrollTop and SetScrollLeft in order to allow scrolling from script to work, but also continuing to have the tests pass. What do you think? |
Do you mean code in In my opinion, "step 10" is followed by the SPEC to implement, and I thought this part is correct. In other word, if we remove code, we just avoid the problem, not fix the problem. |
|
@tigercosmos Another alternative is to remove all the new steps from SetScrollTop. In addition to the issue you mention, w3c/csswg-drafts#1526 also causes scrolling from script to fail for nodes with overflow:scroll. |
|
@mrobinson I agree with you, that Rather than removing the code, I would prefer do the following. Some work we need to do:
servo/components/script/dom/element.rs Lines 1963 to 1969 in 7a87337 |
|
@tigercosmos Since you say it is going to take a while to fix the issue, I think it makes sense to remove the code now in order to ensure that Servo can scroll from script. I can open a PR for this. |
|
Sure. Once the test pass, this issue will close. |
This allow the WPT test, simple_scroll_to_fragment_regression.html, to start passing again. Step 10 cannot be supported until a few underlying issues with our CSSOM implementation are cleared up. Fixes servo#19268.


This regressed sometime on November 13, because there were no failures reported prior to that date, and since then there are >60 failures every day. This wasn't noticed because it's marked as intermittent at #14606.