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 2011 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2022 void FrameView::performPostLayoutTasks() | 2022 void FrameView::performPostLayoutTasks() |
2023 { | 2023 { |
2024 TRACE_EVENT0("webkit", "FrameView::performPostLayoutTasks"); | 2024 TRACE_EVENT0("webkit", "FrameView::performPostLayoutTasks"); |
2025 RefPtr<FrameView> protect(this); | 2025 RefPtr<FrameView> protect(this); |
2026 | 2026 |
2027 m_postLayoutTasksTimer.stop(); | 2027 m_postLayoutTasksTimer.stop(); |
2028 | 2028 |
2029 m_frame->selection().setCaretRectNeedsUpdate(); | 2029 m_frame->selection().setCaretRectNeedsUpdate(); |
2030 m_frame->selection().updateAppearance(); | 2030 m_frame->selection().updateAppearance(); |
2031 | 2031 |
| 2032 ASSERT(m_frame->document()); |
2032 if (m_nestedLayoutCount <= 1) { | 2033 if (m_nestedLayoutCount <= 1) { |
2033 if (m_firstLayoutCallbackPending) { | 2034 if (m_firstLayoutCallbackPending) { |
2034 m_firstLayoutCallbackPending = false; | 2035 m_firstLayoutCallbackPending = false; |
2035 m_frame->loader().didFirstLayout(); | 2036 m_frame->loader().didFirstLayout(); |
2036 } | 2037 } |
2037 | 2038 |
2038 // Ensure that we always send this eventually. | 2039 // Ensure that we always send this eventually. |
2039 if (!m_frame->document()->parsing() && m_frame->loader().stateMachine()-
>committedFirstRealDocumentLoad()) | 2040 if (!m_frame->document()->parsing() && m_frame->loader().stateMachine()-
>committedFirstRealDocumentLoad()) |
2040 m_isVisuallyNonEmpty = true; | 2041 m_isVisuallyNonEmpty = true; |
2041 | 2042 |
2042 // If the layout was done with pending sheets, we are not in fact visual
ly non-empty yet. | 2043 // If the layout was done with pending sheets, we are not in fact visual
ly non-empty yet. |
2043 if (m_isVisuallyNonEmpty && !m_frame->document()->didLayoutWithPendingSt
ylesheets() && m_firstVisuallyNonEmptyLayoutCallbackPending) { | 2044 if (m_isVisuallyNonEmpty && !m_frame->document()->didLayoutWithPendingSt
ylesheets() && m_firstVisuallyNonEmptyLayoutCallbackPending) { |
2044 m_firstVisuallyNonEmptyLayoutCallbackPending = false; | 2045 m_firstVisuallyNonEmptyLayoutCallbackPending = false; |
2045 // FIXME: This callback is probably not needed, but is currently use
d | 2046 // FIXME: This callback is probably not needed, but is currently use
d |
2046 // by android for setting the background color. | 2047 // by android for setting the background color. |
2047 m_frame->loader().client()->dispatchDidFirstVisuallyNonEmptyLayout()
; | 2048 m_frame->loader().client()->dispatchDidFirstVisuallyNonEmptyLayout()
; |
2048 } | 2049 } |
2049 } | 2050 } |
2050 | 2051 |
2051 FontFaceSet::didLayout(m_frame->document()); | 2052 FontFaceSet::didLayout(*m_frame->document()); |
2052 | 2053 |
2053 updateWidgetPositions(); | 2054 updateWidgetPositions(); |
2054 | 2055 |
2055 // Plugins could have torn down the page inside updateWidgetPositions(). | 2056 // Plugins could have torn down the page inside updateWidgetPositions(). |
2056 if (!renderView()) | 2057 if (!renderView()) |
2057 return; | 2058 return; |
2058 | 2059 |
2059 if (!m_updateWidgetsTimer.isActive()) | 2060 if (!m_updateWidgetsTimer.isActive()) |
2060 m_updateWidgetsTimer.startOneShot(0); | 2061 m_updateWidgetsTimer.startOneShot(0); |
2061 | 2062 |
(...skipping 1144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3206 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) | 3207 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) |
3207 { | 3208 { |
3208 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); | 3209 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); |
3209 if (AXObjectCache* cache = axObjectCache()) { | 3210 if (AXObjectCache* cache = axObjectCache()) { |
3210 cache->remove(scrollbar); | 3211 cache->remove(scrollbar); |
3211 cache->handleScrollbarUpdate(this); | 3212 cache->handleScrollbarUpdate(this); |
3212 } | 3213 } |
3213 } | 3214 } |
3214 | 3215 |
3215 } // namespace WebCore | 3216 } // namespace WebCore |
OLD | NEW |