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

Side by Side Diff: third_party/WebKit/Source/core/frame/FrameView.cpp

Issue 1896793002: Rename (updateLayout/updateStyle).*.() to updateStyleAndLayout.*.() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org>
3 * 1999 Lars Knoll <knoll@kde.org> 3 * 1999 Lars Knoll <knoll@kde.org>
4 * 1999 Antti Koivisto <koivisto@kde.org> 4 * 1999 Antti Koivisto <koivisto@kde.org>
5 * 2000 Dirk Mueller <mueller@kde.org> 5 * 2000 Dirk Mueller <mueller@kde.org>
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com)
8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com)
9 * Copyright (C) 2009 Google Inc. All rights reserved. 9 * Copyright (C) 2009 Google Inc. All rights reserved.
10 * 10 *
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after
795 795
796 // Viewport-dependent or device-dependent media queries may cause us to need completely different style information. 796 // Viewport-dependent or device-dependent media queries may cause us to need completely different style information.
797 if (!document->styleResolver() 797 if (!document->styleResolver()
798 || (wasResized && document->styleResolver()->mediaQueryAffectedByViewpor tChange()) 798 || (wasResized && document->styleResolver()->mediaQueryAffectedByViewpor tChange())
799 || (wasResized && m_frame->settings() && m_frame->settings()->resizeIsDe viceSizeChange() && document->styleResolver()->mediaQueryAffectedByDeviceChange( ))) { 799 || (wasResized && m_frame->settings() && m_frame->settings()->resizeIsDe viceSizeChange() && document->styleResolver()->mediaQueryAffectedByDeviceChange( ))) {
800 document->mediaQueryAffectingValueChanged(); 800 document->mediaQueryAffectingValueChanged();
801 } else if (wasResized) { 801 } else if (wasResized) {
802 document->evaluateMediaQueryList(); 802 document->evaluateMediaQueryList();
803 } 803 }
804 804
805 document->updateLayoutTree(); 805 document->updateStyleAndLayoutTree();
806 lifecycle().advanceTo(DocumentLifecycle::StyleClean); 806 lifecycle().advanceTo(DocumentLifecycle::StyleClean);
807 807
808 if (m_frame->isMainFrame() && !m_viewportScrollableArea) { 808 if (m_frame->isMainFrame() && !m_viewportScrollableArea) {
809 ScrollableArea& visualViewport = m_frame->host()->visualViewport(); 809 ScrollableArea& visualViewport = m_frame->host()->visualViewport();
810 ScrollableArea* layoutViewport = layoutViewportScrollableArea(); 810 ScrollableArea* layoutViewport = layoutViewportScrollableArea();
811 ASSERT(layoutViewport); 811 ASSERT(layoutViewport);
812 m_viewportScrollableArea = RootFrameViewport::create(visualViewport, *la youtViewport); 812 m_viewportScrollableArea = RootFrameViewport::create(visualViewport, *la youtViewport);
813 } 813 }
814 814
815 if (RuntimeEnabledFeatures::scrollAnchoringEnabled()) 815 if (RuntimeEnabledFeatures::scrollAnchoringEnabled())
(...skipping 694 matching lines...) Expand 10 before | Expand all | Expand 10 after
1510 return false; 1510 return false;
1511 1511
1512 if (behavior == UrlFragmentScroll) 1512 if (behavior == UrlFragmentScroll)
1513 setFragmentAnchor(anchorNode ? static_cast<Node*>(anchorNode) : m_frame- >document()); 1513 setFragmentAnchor(anchorNode ? static_cast<Node*>(anchorNode) : m_frame- >document());
1514 1514
1515 // If the anchor accepts keyboard focus and fragment scrolling is allowed, 1515 // If the anchor accepts keyboard focus and fragment scrolling is allowed,
1516 // move focus there to aid users relying on keyboard navigation. 1516 // move focus there to aid users relying on keyboard navigation.
1517 // If anchorNode is not focusable or fragment scrolling is not allowed, 1517 // If anchorNode is not focusable or fragment scrolling is not allowed,
1518 // clear focus, which matches the behavior of other browsers. 1518 // clear focus, which matches the behavior of other browsers.
1519 if (anchorNode) { 1519 if (anchorNode) {
1520 m_frame->document()->updateLayoutIgnorePendingStylesheets(); 1520 m_frame->document()->updateStyleAndLayoutIgnorePendingStylesheets();
1521 if (behavior == UrlFragmentScroll && anchorNode->isFocusable()) { 1521 if (behavior == UrlFragmentScroll && anchorNode->isFocusable()) {
1522 anchorNode->focus(); 1522 anchorNode->focus();
1523 } else { 1523 } else {
1524 if (behavior == UrlFragmentScroll) 1524 if (behavior == UrlFragmentScroll)
1525 m_frame->document()->setSequentialFocusNavigationStartingPoint(a nchorNode); 1525 m_frame->document()->setSequentialFocusNavigationStartingPoint(a nchorNode);
1526 m_frame->document()->clearFocusedElement(); 1526 m_frame->document()->clearFocusedElement();
1527 } 1527 }
1528 } 1528 }
1529 return true; 1529 return true;
1530 } 1530 }
1531 1531
1532 void FrameView::setFragmentAnchor(Node* anchorNode) 1532 void FrameView::setFragmentAnchor(Node* anchorNode)
1533 { 1533 {
1534 ASSERT(anchorNode); 1534 ASSERT(anchorNode);
1535 m_fragmentAnchor = anchorNode; 1535 m_fragmentAnchor = anchorNode;
1536 1536
1537 // We need to update the layout tree before scrolling. 1537 // We need to update the layout tree before scrolling.
1538 m_frame->document()->updateLayoutTree(); 1538 m_frame->document()->updateStyleAndLayoutTree();
1539 1539
1540 // If layout is needed, we will scroll in performPostLayoutTasks. Otherwise, scroll immediately. 1540 // If layout is needed, we will scroll in performPostLayoutTasks. Otherwise, scroll immediately.
1541 LayoutView* layoutView = this->layoutView(); 1541 LayoutView* layoutView = this->layoutView();
1542 if (layoutView && layoutView->needsLayout()) 1542 if (layoutView && layoutView->needsLayout())
1543 layout(); 1543 layout();
1544 else 1544 else
1545 scrollToFragmentAnchor(); 1545 scrollToFragmentAnchor();
1546 } 1546 }
1547 1547
1548 void FrameView::clearFragmentAnchor() 1548 void FrameView::clearFragmentAnchor()
(...skipping 1029 matching lines...) Expand 10 before | Expand all | Expand 10 after
2578 2578
2579 // We have to crawl our entire subtree looking for any FrameViews that need 2579 // We have to crawl our entire subtree looking for any FrameViews that need
2580 // layout and make sure they are up to date. 2580 // layout and make sure they are up to date.
2581 // Mac actually tests for intersection with the dirty region and tries not t o 2581 // Mac actually tests for intersection with the dirty region and tries not t o
2582 // update layout for frames that are outside the dirty region. Not only doe s this seem 2582 // update layout for frames that are outside the dirty region. Not only doe s this seem
2583 // pointless (since those frames will have set a zero timer to layout anyway ), but 2583 // pointless (since those frames will have set a zero timer to layout anyway ), but
2584 // it is also incorrect, since if two frames overlap, the first could be exc luded from the dirty 2584 // it is also incorrect, since if two frames overlap, the first could be exc luded from the dirty
2585 // region but then become included later by the second frame adding rects to the dirty region 2585 // region but then become included later by the second frame adding rects to the dirty region
2586 // when it lays out. 2586 // when it lays out.
2587 2587
2588 m_frame->document()->updateLayoutTree(); 2588 m_frame->document()->updateStyleAndLayoutTree();
2589 2589
2590 if (needsLayout()) 2590 if (needsLayout())
2591 layout(); 2591 layout();
2592 2592
2593 RELEASE_ASSERT(!needsLayout()); 2593 RELEASE_ASSERT(!needsLayout());
2594 2594
2595 // WebView plugins need to update regardless of whether the LayoutEmbeddedOb ject 2595 // WebView plugins need to update regardless of whether the LayoutEmbeddedOb ject
2596 // that owns them needed layout. 2596 // that owns them needed layout.
2597 // TODO(leviw): This currently runs the entire lifecycle on plugin WebViews. We 2597 // TODO(leviw): This currently runs the entire lifecycle on plugin WebViews. We
2598 // should have a way to only run these other Documents to the same lifecycle stage 2598 // should have a way to only run these other Documents to the same lifecycle stage
(...skipping 17 matching lines...) Expand all
2616 } 2616 }
2617 2617
2618 for (const auto& frameView : frameViews) 2618 for (const auto& frameView : frameViews)
2619 frameView->updateStyleAndLayoutIfNeededRecursiveInternal(); 2619 frameView->updateStyleAndLayoutIfNeededRecursiveInternal();
2620 2620
2621 RELEASE_ASSERT(!needsLayout()); 2621 RELEASE_ASSERT(!needsLayout());
2622 2622
2623 // When SVG filters are invalidated using Document::scheduleSVGFilterLayerUp dateHack() they may trigger an 2623 // When SVG filters are invalidated using Document::scheduleSVGFilterLayerUp dateHack() they may trigger an
2624 // extra style recalc. See PaintLayer::filterNeedsPaintInvalidation(). 2624 // extra style recalc. See PaintLayer::filterNeedsPaintInvalidation().
2625 if (m_frame->document()->hasSVGFilterElementsRequiringLayerUpdate()) { 2625 if (m_frame->document()->hasSVGFilterElementsRequiringLayerUpdate()) {
2626 m_frame->document()->updateLayoutTree(); 2626 m_frame->document()->updateStyleAndLayoutTree();
2627 2627
2628 if (needsLayout()) 2628 if (needsLayout())
2629 layout(); 2629 layout();
2630 } 2630 }
2631 2631
2632 // These asserts ensure that parent frames are clean, when child frames fini shed updating layout and style. 2632 // These asserts ensure that parent frames are clean, when child frames fini shed updating layout and style.
2633 RELEASE_ASSERT(!needsLayout()); 2633 RELEASE_ASSERT(!needsLayout());
2634 ASSERT(!m_frame->document()->hasSVGFilterElementsRequiringLayerUpdate()); 2634 ASSERT(!m_frame->document()->hasSVGFilterElementsRequiringLayerUpdate());
2635 #if ENABLE(ASSERT) 2635 #if ENABLE(ASSERT)
2636 m_frame->document()->layoutView()->assertLaidOut(); 2636 m_frame->document()->layoutView()->assertLaidOut();
(...skipping 1470 matching lines...) Expand 10 before | Expand all | Expand 10 after
4107 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling); 4107 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling);
4108 } 4108 }
4109 4109
4110 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const 4110 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const
4111 { 4111 {
4112 ASSERT(layoutView()); 4112 ASSERT(layoutView());
4113 return *layoutView(); 4113 return *layoutView();
4114 } 4114 }
4115 4115
4116 } // namespace blink 4116 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698