Chromium Code Reviews| 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 |