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

Issue 665673004: Move selection invalidation to the invalidation phase (Closed)

Created:
6 years, 2 months ago by Julien - ping for review
Modified:
6 years, 1 month ago
Reviewers:
dsinclair, pdr., Xianzhu, bemjb
CC:
blink-reviews, blink-reviews-rendering, eae+blinkwatch, jchaffraix+rendering, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Project:
blink
Visibility:
Public.

Description

Move selection invalidation to the invalidation phase https://codereview.chromium.org/620553009 moved some of the selection-related invalidations to the invalidation phase. This change fixes the original logic that wasn't totally right. The core issue is that we have to store the old selection rectangle as we can't compute it as part of the next frame (all the selection information have been updated by then). This change also includes some simplification of the selection code now that we don't need much of the logic. BUG=407416 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=184794

Patch Set 1 #

Patch Set 2 : Tentative fix, up for slammin' reviews #

Total comments: 13

Patch Set 3 : Updated after review comments. #

Total comments: 4

Patch Set 4 : Updated after Xianzhu's comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+81 lines, -93 lines) Patch
M LayoutTests/TestExpectations View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download
M LayoutTests/platform/linux/fast/repaint/caret-invalidation-in-overflow-scroll-expected.txt View 1 chunk +0 lines, -1 line 0 comments Download
M LayoutTests/platform/linux/fast/repaint/selection-clear-expected.txt View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/platform/linux/fast/repaint/selection-partial-invalidation-between-blocks-expected.txt View 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/rendering/RenderObject.h View 1 2 3 chunks +5 lines, -2 lines 0 comments Download
M Source/core/rendering/RenderObject.cpp View 1 2 5 chunks +39 lines, -7 lines 0 comments Download
M Source/core/rendering/RenderSelectionInfo.h View 2 chunks +0 lines, -52 lines 0 comments Download
M Source/core/rendering/RenderView.cpp View 1 2 4 chunks +24 lines, -28 lines 0 comments Download
M Source/core/rendering/shapes/Shape.cpp View 1 2 2 chunks +6 lines, -1 line 0 comments Download
M Source/core/svg/graphics/SVGImage.h View 1 2 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 13 (3 generated)
Julien - ping for review
Full move to RACUN. Not super happy about the shape-outside part (+Bem in case he ...
6 years, 1 month ago (2014-10-30 23:09:12 UTC) #2
Xianzhu
https://codereview.chromium.org/665673004/diff/20001/Source/core/rendering/RenderObject.h File Source/core/rendering/RenderObject.h (right): https://codereview.chromium.org/665673004/diff/20001/Source/core/rendering/RenderObject.h#newcode1002 Source/core/rendering/RenderObject.h:1002: void setpreviousSelectionRectForPaintInvalidation(const LayoutRect& rect) { m_previousSelectionRectForPaintInvalidation = rect; setShouldInvalidateSelection(); ...
6 years, 1 month ago (2014-10-30 23:35:42 UTC) #3
dsinclair
https://codereview.chromium.org/665673004/diff/20001/Source/core/rendering/RenderObject.cpp File Source/core/rendering/RenderObject.cpp (right): https://codereview.chromium.org/665673004/diff/20001/Source/core/rendering/RenderObject.cpp#newcode133 Source/core/rendering/RenderObject.cpp:133: LayoutRect rect2; // Stores the previous selection paint invalidation ...
6 years, 1 month ago (2014-10-31 14:03:16 UTC) #4
Xianzhu
https://codereview.chromium.org/665673004/diff/20001/Source/core/rendering/RenderObject.h File Source/core/rendering/RenderObject.h (right): https://codereview.chromium.org/665673004/diff/20001/Source/core/rendering/RenderObject.h#newcode1401 Source/core/rendering/RenderObject.h:1401: LayoutRect m_previousSelectionRectForPaintInvalidation; On 2014/10/31 14:03:16, dsinclair wrote: > On ...
6 years, 1 month ago (2014-10-31 15:52:35 UTC) #5
Julien - ping for review
New patch up for review. +pdr (CC'ed) who helped me get the disabler going as ...
6 years, 1 month ago (2014-10-31 22:31:03 UTC) #7
pdr.
The disabler + comment and bug look great to me. I'll have to defer to ...
6 years, 1 month ago (2014-11-01 05:16:02 UTC) #8
Xianzhu
lgtm (with a nit and a question). https://codereview.chromium.org/665673004/diff/40001/LayoutTests/TestExpectations File LayoutTests/TestExpectations (right): https://codereview.chromium.org/665673004/diff/40001/LayoutTests/TestExpectations#newcode384 LayoutTests/TestExpectations:384: Bug(jchaffraix) fast/repaint/caret-invalidation-in-overflow-scroll.html ...
6 years, 1 month ago (2014-11-03 17:03:36 UTC) #9
Julien - ping for review
Thanks for the review! https://codereview.chromium.org/665673004/diff/40001/LayoutTests/TestExpectations File LayoutTests/TestExpectations (right): https://codereview.chromium.org/665673004/diff/40001/LayoutTests/TestExpectations#newcode384 LayoutTests/TestExpectations:384: Bug(jchaffraix) fast/repaint/caret-invalidation-in-overflow-scroll.html [ NeedsRebaseline ] ...
6 years, 1 month ago (2014-11-03 17:29:21 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/665673004/60001
6 years, 1 month ago (2014-11-03 17:31:17 UTC) #12
commit-bot: I haz the power
6 years, 1 month ago (2014-11-03 18:51:49 UTC) #13
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as 184794

Powered by Google App Engine
This is Rietveld 408576698