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

Issue 1126883002: Change all one-off lifecycle callers to FrameView::updateLayoutAndStyleForPainting (Closed)

Created:
5 years, 7 months ago by chrishtr
Modified:
5 years, 7 months ago
CC:
blink-reviews, blink-reviews-paint_chromium.org, blink-reviews-rendering, dshwang, eae+blinkwatch, jchaffraix+rendering, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, slimming-paint-reviews_chromium.org, zoltan1
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Change all one-off lifecycle callers to FrameView::updateLayoutAndStyleForPainting This makes sure that the compositing and paint invalidation steps are not missed. Compositing in particular is needed for hit testing. Second, fix FrameView::updateLayoutAndStyleForPainting to always start from the root document frame. Otherwise parent frames of the current frame may not get advanced, and we may end up with inconsistent lifecycle states across these frames, which can lead to all kinds of havoc. Finally, make several related methods private in FrameView to help enforce correct behavior. BUG=476590 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=195138

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 1

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+51 lines, -44 lines) Patch
M Source/core/css/AffectedByFocusTest.cpp View 1 2 5 chunks +9 lines, -9 lines 0 comments Download
M Source/core/css/DragUpdateTest.cpp View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/dom/DocumentTest.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/editing/FrameSelectionTest.cpp View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M Source/core/editing/iterators/TextIteratorTest.cpp View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M Source/core/frame/FrameView.h View 1 2 3 4 3 chunks +5 lines, -4 lines 0 comments Download
M Source/core/frame/FrameView.cpp View 1 2 3 4 5 2 chunks +9 lines, -1 line 0 comments Download
M Source/core/html/HTMLFormControlElementTest.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/html/HTMLSelectElementTest.cpp View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M Source/core/html/HTMLTextFormControlElementTest.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/html/canvas/CanvasRenderingContext2DAPITest.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/html/canvas/CanvasRenderingContext2DTest.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/layout/LayoutTestHelper.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/layout/LayoutThemeTest.cpp View 1 2 3 chunks +3 lines, -3 lines 0 comments Download
M Source/core/layout/LayoutView.cpp View 3 1 chunk +1 line, -1 line 0 comments Download
M Source/core/page/ContextMenuControllerTest.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M Source/core/page/EventHandler.cpp View 1 2 3 4 5 2 chunks +2 lines, -2 lines 0 comments Download
M Source/core/paint/DeprecatedPaintLayer.cpp View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M Source/core/paint/TextPainterTest.cpp View 1 2 3 4 5 chunks +5 lines, -5 lines 0 comments Download
M Source/web/WebAXObject.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M Source/web/WebLocalFrameImpl.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 10 (3 generated)
chrishtr
I encountered this while investigating the attached bug. Without advancing to compositing clean, virtual/slimmingpaint/fast/multicol/hit-test-translate-z.html would ...
5 years, 7 months ago (2015-05-05 22:47:43 UTC) #2
leviw_travelin_and_unemployed
On 2015/05/05 at 22:47:43, chrishtr wrote: > I encountered this while investigating the attached bug. ...
5 years, 7 months ago (2015-05-05 23:12:57 UTC) #3
chrishtr
https://codereview.chromium.org/1126883002/diff/40001/Source/core/page/EventHandler.cpp File Source/core/page/EventHandler.cpp (left): https://codereview.chromium.org/1126883002/diff/40001/Source/core/page/EventHandler.cpp#oldcode2426 Source/core/page/EventHandler.cpp:2426: LocalFrame* mainFrame = m_frame->localFrameRoot(); These are not needed because ...
5 years, 7 months ago (2015-05-08 00:33:37 UTC) #5
esprehn
Seems reasonable, eventually I think we want to walk up the ancestor chain instead to ...
5 years, 7 months ago (2015-05-08 20:44:17 UTC) #6
chrishtr
Uploaded a new patch. Turns out we did need the code in EventHandler, so that ...
5 years, 7 months ago (2015-05-08 20:45:08 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1126883002/100001
5 years, 7 months ago (2015-05-08 20:57:05 UTC) #9
commit-bot: I haz the power
5 years, 7 months ago (2015-05-09 05:21:01 UTC) #10
Message was sent while issue was closed.
Committed patchset #6 (id:100001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=195138

Powered by Google App Engine
This is Rietveld 408576698