Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1061)

Issue 222473005: Don't repaint when setting border or outline 0 with style none (Closed)

Created:
6 years, 8 months ago by esprehn
Modified:
6 years, 8 months ago
Reviewers:
dsinclair, ojan
CC:
blink-reviews, bemjb+rendering_chromium.org, dsinclair, zoltan1, eae+blinkwatch, leviw+renderwatch, jchaffraix+rendering, pdr., rune+blink, jakearchibald
Visibility:
Public.

Description

Don't repaint when setting border or outline 0 with style none We were causing repaints when setting the width of border or outline to 0 on an element that has outline or border style of none because the internal default width is 3px, even though we compute the width to 0 at layout and paint time. This patch adds a new method visuallyEqual and uses that when doing the visualInvalidationDiff to avoid causing repaints when the visual output would be identical. It also apparently also reduces the amount of repainting in fast/repaint/table-collapsed-border.html the table tests, but the visual output is identical so it appears correct. BUG=357629 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=170743

Patch Set 1 #

Patch Set 2 : Add a test #

Patch Set 3 : NeedsRebaseline #

Total comments: 1

Patch Set 4 : Add more tests #

Patch Set 5 : make cross platform #

Unified diffs Side-by-side diffs Delta from patch set Stats (+100 lines, -2 lines) Patch
M LayoutTests/TestExpectations View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
A LayoutTests/fast/repaint/border-outline-0.html View 1 2 3 4 1 chunk +59 lines, -0 lines 0 comments Download
A LayoutTests/fast/repaint/border-outline-0-expected.txt View 1 2 3 4 1 chunk +7 lines, -0 lines 0 comments Download
M Source/core/rendering/style/BorderData.h View 1 chunk +13 lines, -0 lines 0 comments Download
M Source/core/rendering/style/BorderValue.h View 1 chunk +10 lines, -0 lines 0 comments Download
M Source/core/rendering/style/RenderStyle.cpp View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/rendering/style/StyleBackgroundData.h View 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/rendering/style/StyleBackgroundData.cpp View 1 chunk +5 lines, -0 lines 0 comments Download

Messages

Total messages: 18 (0 generated)
esprehn
I need to figure out how to write a repaint test for this.
6 years, 8 months ago (2014-04-02 23:51:14 UTC) #1
esprehn
Ready for review!
6 years, 8 months ago (2014-04-03 00:48:04 UTC) #2
ojan
lgtm https://codereview.chromium.org/222473005/diff/40001/LayoutTests/fast/repaint/border-outline-0.html File LayoutTests/fast/repaint/border-outline-0.html (right): https://codereview.chromium.org/222473005/diff/40001/LayoutTests/fast/repaint/border-outline-0.html#newcode16 LayoutTests/fast/repaint/border-outline-0.html:16: function repaintTest() { Should this also test the ...
6 years, 8 months ago (2014-04-03 00:51:05 UTC) #3
esprehn
The CQ bit was checked by esprehn@chromium.org
6 years, 8 months ago (2014-04-03 01:14:58 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/esprehn@chromium.org/222473005/60001
6 years, 8 months ago (2014-04-03 01:15:05 UTC) #5
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-03 01:50:55 UTC) #6
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.blink on linux_blink_rel
6 years, 8 months ago (2014-04-03 01:50:55 UTC) #7
esprehn
The CQ bit was checked by esprehn@chromium.org
6 years, 8 months ago (2014-04-03 02:18:27 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/esprehn@chromium.org/222473005/160001
6 years, 8 months ago (2014-04-03 02:18:34 UTC) #9
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-03 02:44:58 UTC) #10
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.blink on win_blink_compile_dbg
6 years, 8 months ago (2014-04-03 02:44:59 UTC) #11
esprehn
The CQ bit was checked by esprehn@chromium.org
6 years, 8 months ago (2014-04-03 05:57:14 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/esprehn@chromium.org/222473005/160001
6 years, 8 months ago (2014-04-03 05:57:19 UTC) #13
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-03 06:21:34 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.blink on win_blink_compile_dbg
6 years, 8 months ago (2014-04-03 06:21:35 UTC) #15
esprehn
The CQ bit was checked by esprehn@chromium.org
6 years, 8 months ago (2014-04-03 06:36:39 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/esprehn@chromium.org/222473005/160001
6 years, 8 months ago (2014-04-03 06:36:44 UTC) #17
commit-bot: I haz the power
6 years, 8 months ago (2014-04-03 07:01:15 UTC) #18
Message was sent while issue was closed.
Change committed as 170743

Powered by Google App Engine
This is Rietveld 408576698