Closed Bug 1464928 Opened Last year Closed Last year

border-collapse and cell borders on hover cause rendering artifacts

Categories

(Core :: Layout: Tables, defect, P3)

58 Branch
Unspecified
All
defect

Tracking

()

RESOLVED FIXED
mozilla62
Tracking Status
firefox-esr52 --- unaffected
firefox-esr60 --- fixed
firefox60 --- wontfix
firefox61 --- fixed
firefox62 --- fixed

People

(Reporter: stijnseghers, Assigned: mattwoodrow)

References

Details

(Keywords: regression)

Attachments

(2 files)

Attached file border-collapse.html
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1 Safari/605.1.15

Steps to reproduce:

1. Open up this Codepen example https://codepen.io/anon/pen/JZPYdJ in Firefox 59 or 60.
2. Hover over the cells in the table.
3. Remove your cursor again.

You can also find the example attached.


Actual results:

Parts of the border remain black (as defined by the CSS on td:hover), other parts turn back transparent (as defined by the CSS on tr).


Expected results:

When the cursor is not on a cell, the whole border on the cell should be transparent again.
I can also reproduce the glitch on Win10 Nightly62.0a1 x64.

Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=3e95c596ad5bc0c0b99608ed26380994973e7665&tochange=28b9f2407366bc39b17db39ed76bd2ebdc250c6f

Regressed by: 28b9f2407366	Ethan Lin — Bug 1362412 - Do not invalidate table cell's parent frame if it's not border collapse or there is no border. r=mattwoodrow

@:ethlin
Your patch causes the rendering glitch. Could you please look into this?
Blocks: 1362412
Status: UNCONFIRMED → NEW
Component: Untriaged → Layout
Ever confirmed: true
Flags: needinfo?(demo99)
Keywords: regression
OS: Unspecified → All
Product: Firefox → Core
Version: 60 Branch → 58 Branch
Ethan isn't active anymore. Matt, can you please help find an owner?
Flags: needinfo?(demo99) → needinfo?(matt.woodrow)
Component: Layout → Layout: Tables
Priority: -- → P3
Assignee: nobody → matt.woodrow
Flags: needinfo?(matt.woodrow)
Comment on attachment 8984048 [details]
Bug 1464928 - Invalidate border-collapse tables when we remove the border from a cell.

https://reviewboard.mozilla.org/r/249906/#review257316
Attachment #8984048 - Flags: review?(mstange) → review+
Pushed by mwoodrow@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/60e4f650a3eb
Invalidate border-collapse tables when we remove the border from a cell. r=mstange
https://hg.mozilla.org/mozilla-central/rev/60e4f650a3eb
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
What are your thoughts on backport here, Matt? On one hand, it's been around since 58 and we're late in the 61 cycle, on the other hand, there's a new test included and it seems that the fix is pretty straightforward and low-risk (just making us invalidate more often?).
Flags: needinfo?(matt.woodrow)
Flags: in-testsuite+
Summary: border-collapse and cell borders on hover cause rendering artefacts → border-collapse and cell borders on hover cause rendering artifacts
(In reply to Ryan VanderMeulen [:RyanVM] from comment #7)
> What are your thoughts on backport here, Matt? On one hand, it's been around
> since 58 and we're late in the 61 cycle, on the other hand, there's a new
> test included and it seems that the fix is pretty straightforward and
> low-risk (just making us invalidate more often?).

Pretty much exactly that. It's not new, so clearly not super high priority, but it's basically a partial backout of the regressing patch, plus test, so low risk.

Happy to do an uplift request if you want it.
Flags: needinfo?(matt.woodrow)
Comment on attachment 8984048 [details]
Bug 1464928 - Invalidate border-collapse tables when we remove the border from a cell.

Approval Request Comment
[Feature/Bug causing the regression]: Bug 1362412
[User impact if declined]: Incorrect invalidation/repainting when removing borders from a border-collapse table.
[Is this code covered by automated tests?]: Yes, new test added.
[Has the fix been verified in Nightly?]: By automated tests.
[Needs manual test from QE? If yes, steps to reproduce]: No.
[List of other uplifts needed for the feature/fix]: None.
[Is the change risky?]: No.
[Why is the change risky/not risky?]: Just a partial backout of the regressing bug.
[String changes made/needed]:
Attachment #8984048 - Flags: approval-mozilla-beta?
Comment on attachment 8984048 [details]
Bug 1464928 - Invalidate border-collapse tables when we remove the border from a cell.

Reverts us back to previously known-good behavior and includes a test to ensure that we don't break it again in the future. Approved for 61.0rc1 and ESR 60.1.
Attachment #8984048 - Flags: approval-mozilla-esr60+
Attachment #8984048 - Flags: approval-mozilla-beta?
Attachment #8984048 - Flags: approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.