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

Issue 2416693002: Don't expand empty rect during rect mapping (Closed)

Created:
4 years, 2 months ago by Xianzhu
Modified:
4 years, 2 months ago
Reviewers:
chrishtr
CC:
blink-reviews, blink-reviews-layout_chromium.org, chromium-reviews, eae+blinkwatch, jchaffraix+rendering, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, szager+layoutwatch_chromium.org, zoltan1
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Don't expand empty rect during rect mapping For example, enclosingIntRect(LayoutRect(0.5, 0.5, 0, 0)) results IntRect(0, 0, 1, 1). This causes unnecessary non-empty visual rects mapped from empty LayoutRects. This CL is mainly to reduce the difference between the old path and slimmingPaintInvalidation with pixel snapping feature. Committed: https://crrev.com/67c516aaed2486295a98d7f0ff2235b921cd7933 Cr-Commit-Position: refs/heads/master@{#424970}

Patch Set 1 #

Patch Set 2 : - #

Patch Set 3 : - #

Patch Set 4 : Rebaseline #

Unified diffs Side-by-side diffs Delta from patch set Stats (+12 lines, -25 lines) Patch
M third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/transform-inline-layered-child-expected.txt View 1 2 1 chunk +0 lines, -5 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/editing/selection/transformed-selection-rects-expected.png View 1 2 3 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/transform-inline-layered-child-expected.txt View 1 2 1 chunk +0 lines, -5 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/editing/selection/transformed-selection-rects-expected.png View 1 2 3 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/paint/invalidation/transform-inline-layered-child-expected.txt View 1 2 1 chunk +0 lines, -5 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBox.cpp View 1 1 chunk +3 lines, -1 line 0 comments Download

Messages

Total messages: 22 (14 generated)
Xianzhu
4 years, 2 months ago (2016-10-12 23:31:04 UTC) #7
chrishtr
lgtm
4 years, 2 months ago (2016-10-13 00:21:46 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2416693002/40001
4 years, 2 months ago (2016-10-13 00:22:00 UTC) #12
commit-bot: I haz the power
Exceeded global retry quota
4 years, 2 months ago (2016-10-13 00:38:37 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2416693002/60001
4 years, 2 months ago (2016-10-13 03:16:41 UTC) #17
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 2 months ago (2016-10-13 06:47:08 UTC) #19
commit-bot: I haz the power
Patchset 4 (id:??) landed as https://crrev.com/67c516aaed2486295a98d7f0ff2235b921cd7933 Cr-Commit-Position: refs/heads/master@{#424970}
4 years, 2 months ago (2016-10-13 06:48:22 UTC) #21
Xianzhu
4 years ago (2016-11-30 20:10:02 UTC) #22
Message was sent while issue was closed.
A revert of this CL (patchset #4 id:60001) has been created in
https://codereview.chromium.org/2545573002/ by wangxianzhu@chromium.org.

The reason for reverting is: It changed
  transform->mapRect(enclosingIntRect(rect))
to
  transform->mapRect(FloatRect(enclosingIntRect(rect)))
causing missing enclosingIntRect() after the transform.

We may also need enclosingIntRect for empty rects because even empty
object can have visible filter depending on pixel snapping here.

BUG=669774.

Powered by Google App Engine
This is Rietveld 408576698