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

Issue 1942863002: cc: fix pixel-moving filter effects on a rotated layer. (Closed)

Created:
4 years, 7 months ago by Stephen White
Modified:
4 years, 7 months ago
Reviewers:
enne (OOO)
CC:
cc-bugs_chromium.org, chromium-reviews, dcheng
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

cc: fix pixel-moving filter effects on a rotated layer. When a pixel-moving filter (e.g. blur, drop-shadow) is applied to a transformed layer, we were leaving the edge equations used for edge-AA at the original primitive's position, causing them to truncate the effect (e.g., blur margins). This fix detects that AA is required on a filter that changes the bounds, disables edge-AA and bloats the boundaries by an extra pixel instead. This revealed that we were drawing the filtered result with NEAREST filtering (!), causing some nasty jaggies when rotated. This was fixed by manually setting the min and mag filters to LINEAR. It also revealed that the software renderer was not applying filter outsets. The GL renderer was previously fixed here: https://codereview.chromium.org/1517693002. This CL makes similar changes to the software renderer. BUG=607831 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/c2061a305a361ebda94b0e46e80a69846b875cc5 Cr-Commit-Position: refs/heads/master@{#391332}

Patch Set 1 #

Patch Set 2 : add missing test results #

Patch Set 3 : Implement filter bounds for cc software renderer #

Patch Set 4 : Add a fuzzy pixeltest comparator for Windows #

Patch Set 5 : Tweak fuzzy comparator #

Patch Set 6 : further tweakage #

Patch Set 7 : yet more test tweakage #

Total comments: 2

Patch Set 8 : Fix comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+129 lines, -14 lines) Patch
M cc/output/gl_renderer.cc View 1 2 3 4 5 6 7 2 chunks +10 lines, -0 lines 0 comments Download
M cc/output/software_renderer.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M cc/output/software_renderer.cc View 1 2 3 chunks +27 lines, -14 lines 0 comments Download
A cc/test/data/rotated_drop_shadow_filter_gl.png View Binary file 0 comments Download
A cc/test/data/rotated_drop_shadow_filter_sw.png View 1 2 Binary file 0 comments Download
A cc/test/data/rotated_filter_gl.png View Binary file 0 comments Download
A cc/test/data/rotated_filter_sw.png View 1 Binary file 0 comments Download
M cc/trees/layer_tree_host_pixeltest_filters.cc View 1 2 3 4 5 6 1 chunk +91 lines, -0 lines 0 comments Download

Messages

Total messages: 35 (20 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1942863002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1942863002/20001
4 years, 7 months ago (2016-05-02 16:10:37 UTC) #3
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/214819)
4 years, 7 months ago (2016-05-02 17:45:21 UTC) #5
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1942863002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1942863002/80001
4 years, 7 months ago (2016-05-02 21:00:08 UTC) #7
Stephen White
enne@: PTAL Note that the changes to the software renderer could be broken out into ...
4 years, 7 months ago (2016-05-02 21:02:56 UTC) #11
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/215066)
4 years, 7 months ago (2016-05-02 23:04:39 UTC) #17
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1942863002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1942863002/100001
4 years, 7 months ago (2016-05-03 13:52:05 UTC) #19
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/215475)
4 years, 7 months ago (2016-05-03 15:12:13 UTC) #21
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1942863002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1942863002/120001
4 years, 7 months ago (2016-05-03 16:26:01 UTC) #23
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 7 months ago (2016-05-03 17:21:41 UTC) #25
Stephen White
enne: friendly ping :)
4 years, 7 months ago (2016-05-03 18:02:53 UTC) #26
enne (OOO)
lgtm, thanks for all these fixes! https://codereview.chromium.org/1942863002/diff/120001/cc/output/gl_renderer.cc File cc/output/gl_renderer.cc (right): https://codereview.chromium.org/1942863002/diff/120001/cc/output/gl_renderer.cc#newcode1014 cc/output/gl_renderer.cc:1014: // computed for ...
4 years, 7 months ago (2016-05-03 18:25:39 UTC) #27
Stephen White
https://codereview.chromium.org/1942863002/diff/120001/cc/output/gl_renderer.cc File cc/output/gl_renderer.cc (right): https://codereview.chromium.org/1942863002/diff/120001/cc/output/gl_renderer.cc#newcode1014 cc/output/gl_renderer.cc:1014: // computed for AA will be wrong. So disable ...
4 years, 7 months ago (2016-05-03 18:44:16 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1942863002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1942863002/140001
4 years, 7 months ago (2016-05-03 18:45:01 UTC) #31
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 7 months ago (2016-05-03 19:52:24 UTC) #33
commit-bot: I haz the power
4 years, 7 months ago (2016-05-03 19:53:51 UTC) #35
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/c2061a305a361ebda94b0e46e80a69846b875cc5
Cr-Commit-Position: refs/heads/master@{#391332}

Powered by Google App Engine
This is Rietveld 408576698