OLD | NEW |
---|---|
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 2747 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2758 // layout and make sure they are up to date. | 2758 // layout and make sure they are up to date. |
2759 // Mac actually tests for intersection with the dirty region and tries not t o | 2759 // Mac actually tests for intersection with the dirty region and tries not t o |
2760 // update layout for frames that are outside the dirty region. Not only doe s this seem | 2760 // update layout for frames that are outside the dirty region. Not only doe s this seem |
2761 // pointless (since those frames will have set a zero timer to layout anyway ), but | 2761 // pointless (since those frames will have set a zero timer to layout anyway ), but |
2762 // it is also incorrect, since if two frames overlap, the first could be exc luded from the dirty | 2762 // it is also incorrect, since if two frames overlap, the first could be exc luded from the dirty |
2763 // region but then become included later by the second frame adding rects to the dirty region | 2763 // region but then become included later by the second frame adding rects to the dirty region |
2764 // when it lays out. | 2764 // when it lays out. |
2765 | 2765 |
2766 m_frame->document()->updateStyleAndLayoutTree(); | 2766 m_frame->document()->updateStyleAndLayoutTree(); |
2767 | 2767 |
2768 updateScrollbarsIfNeeded(); | |
skobes
2016/09/06 17:39:19
FrameView::layout calls updateScrollbarsIfNeeded.
MuVen
2016/09/07 14:50:17
as this is a recursively calls for all the framevi
skobes
2016/09/07 19:04:38
But layout is also recursive. Scrollbars changing
| |
2769 | |
2768 CHECK(!shouldThrottleRendering()); | 2770 CHECK(!shouldThrottleRendering()); |
2769 CHECK(m_frame->document()->isActive()); | 2771 CHECK(m_frame->document()->isActive()); |
2770 CHECK(!m_nestedLayoutCount); | 2772 CHECK(!m_nestedLayoutCount); |
2771 | 2773 |
2772 if (needsLayout()) | 2774 if (needsLayout()) |
2773 layout(); | 2775 layout(); |
2774 | 2776 |
2775 checkDoesNotNeedLayout(); | 2777 checkDoesNotNeedLayout(); |
2776 | 2778 |
2777 // WebView plugins need to update regardless of whether the LayoutEmbeddedOb ject | 2779 // WebView plugins need to update regardless of whether the LayoutEmbeddedOb ject |
(...skipping 1544 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4322 } | 4324 } |
4323 | 4325 |
4324 bool FrameView::canThrottleRendering() const | 4326 bool FrameView::canThrottleRendering() const |
4325 { | 4327 { |
4326 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled()) | 4328 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled()) |
4327 return false; | 4329 return false; |
4328 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling); | 4330 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling); |
4329 } | 4331 } |
4330 | 4332 |
4331 } // namespace blink | 4333 } // namespace blink |
OLD | NEW |