| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All |
| 7 * rights reserved. | 7 * rights reserved. |
| 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. | 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. |
| 9 * (http://www.torchmobile.com/) | 9 * (http://www.torchmobile.com/) |
| 10 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. | 10 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 76 #include "core/dom/Element.h" | 76 #include "core/dom/Element.h" |
| 77 #include "core/dom/ElementCreationOptions.h" | 77 #include "core/dom/ElementCreationOptions.h" |
| 78 #include "core/dom/ElementDataCache.h" | 78 #include "core/dom/ElementDataCache.h" |
| 79 #include "core/dom/ElementRegistrationOptions.h" | 79 #include "core/dom/ElementRegistrationOptions.h" |
| 80 #include "core/dom/ElementTraversal.h" | 80 #include "core/dom/ElementTraversal.h" |
| 81 #include "core/dom/ExceptionCode.h" | 81 #include "core/dom/ExceptionCode.h" |
| 82 #include "core/dom/FrameRequestCallback.h" | 82 #include "core/dom/FrameRequestCallback.h" |
| 83 #include "core/dom/IntersectionObserverController.h" | 83 #include "core/dom/IntersectionObserverController.h" |
| 84 #include "core/dom/LayoutTreeBuilderTraversal.h" | 84 #include "core/dom/LayoutTreeBuilderTraversal.h" |
| 85 #include "core/dom/LiveNodeList.h" | 85 #include "core/dom/LiveNodeList.h" |
| 86 #include "core/dom/MediaIPHManager.h" |
| 86 #include "core/dom/MutationObserver.h" | 87 #include "core/dom/MutationObserver.h" |
| 87 #include "core/dom/NodeChildRemovalTracker.h" | 88 #include "core/dom/NodeChildRemovalTracker.h" |
| 88 #include "core/dom/NodeComputedStyle.h" | 89 #include "core/dom/NodeComputedStyle.h" |
| 89 #include "core/dom/NodeFilter.h" | 90 #include "core/dom/NodeFilter.h" |
| 90 #include "core/dom/NodeIterator.h" | 91 #include "core/dom/NodeIterator.h" |
| 91 #include "core/dom/NodeRareData.h" | 92 #include "core/dom/NodeRareData.h" |
| 92 #include "core/dom/NodeTraversal.h" | 93 #include "core/dom/NodeTraversal.h" |
| 93 #include "core/dom/NodeWithIndex.h" | 94 #include "core/dom/NodeWithIndex.h" |
| 94 #include "core/dom/NthIndexCache.h" | 95 #include "core/dom/NthIndexCache.h" |
| 95 #include "core/dom/ProcessingInstruction.h" | 96 #include "core/dom/ProcessingInstruction.h" |
| (...skipping 2201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2297 // beginFrame? This will catch the first layout in a page that does lots | 2298 // beginFrame? This will catch the first layout in a page that does lots |
| 2298 // of layout thrashing even though that layout might not be followed by | 2299 // of layout thrashing even though that layout might not be followed by |
| 2299 // a paint for many seconds. | 2300 // a paint for many seconds. |
| 2300 if (IsRenderingReady() && body() && | 2301 if (IsRenderingReady() && body() && |
| 2301 !GetStyleEngine().HasPendingScriptBlockingSheets()) { | 2302 !GetStyleEngine().HasPendingScriptBlockingSheets()) { |
| 2302 if (!document_timing_.FirstLayout()) | 2303 if (!document_timing_.FirstLayout()) |
| 2303 document_timing_.MarkFirstLayout(); | 2304 document_timing_.MarkFirstLayout(); |
| 2304 } | 2305 } |
| 2305 | 2306 |
| 2306 root_scroller_controller_->DidUpdateLayout(); | 2307 root_scroller_controller_->DidUpdateLayout(); |
| 2308 if (media_iph_manager_) |
| 2309 media_iph_manager_->LayoutUpdated(); |
| 2307 } | 2310 } |
| 2308 | 2311 |
| 2309 void Document::ClearFocusedElementSoon() { | 2312 void Document::ClearFocusedElementSoon() { |
| 2310 if (!clear_focused_element_timer_.IsActive()) | 2313 if (!clear_focused_element_timer_.IsActive()) |
| 2311 clear_focused_element_timer_.StartOneShot(0, BLINK_FROM_HERE); | 2314 clear_focused_element_timer_.StartOneShot(0, BLINK_FROM_HERE); |
| 2312 } | 2315 } |
| 2313 | 2316 |
| 2314 void Document::ClearFocusedElementTimerFired(TimerBase*) { | 2317 void Document::ClearFocusedElementTimerFired(TimerBase*) { |
| 2315 UpdateStyleAndLayoutTree(); | 2318 UpdateStyleAndLayoutTree(); |
| 2316 | 2319 |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2670 // a contextDestroyed() notification. This can happen for a document | 2673 // a contextDestroyed() notification. This can happen for a document |
| 2671 // created by DOMImplementation::createDocument(). | 2674 // created by DOMImplementation::createDocument(). |
| 2672 ExecutionContext::NotifyContextDestroyed(); | 2675 ExecutionContext::NotifyContextDestroyed(); |
| 2673 | 2676 |
| 2674 // This is required, as our LocalFrame might delete itself as soon as it | 2677 // This is required, as our LocalFrame might delete itself as soon as it |
| 2675 // detaches us. However, this violates Node::detachLayoutTree() semantics, as | 2678 // detaches us. However, this violates Node::detachLayoutTree() semantics, as |
| 2676 // it's never possible to re-attach. Eventually Document::detachLayoutTree() | 2679 // it's never possible to re-attach. Eventually Document::detachLayoutTree() |
| 2677 // should be renamed, or this setting of the frame to 0 could be made | 2680 // should be renamed, or this setting of the frame to 0 could be made |
| 2678 // explicit in each of the callers of Document::detachLayoutTree(). | 2681 // explicit in each of the callers of Document::detachLayoutTree(). |
| 2679 frame_ = nullptr; | 2682 frame_ = nullptr; |
| 2683 |
| 2684 media_iph_manager_ = nullptr; |
| 2680 } | 2685 } |
| 2681 | 2686 |
| 2682 void Document::RemoveAllEventListeners() { | 2687 void Document::RemoveAllEventListeners() { |
| 2683 ContainerNode::RemoveAllEventListeners(); | 2688 ContainerNode::RemoveAllEventListeners(); |
| 2684 | 2689 |
| 2685 if (LocalDOMWindow* dom_window = this->domWindow()) | 2690 if (LocalDOMWindow* dom_window = this->domWindow()) |
| 2686 dom_window->RemoveAllEventListeners(); | 2691 dom_window->RemoveAllEventListeners(); |
| 2687 } | 2692 } |
| 2688 | 2693 |
| 2689 Document& Document::AxObjectCacheOwner() const { | 2694 Document& Document::AxObjectCacheOwner() const { |
| (...skipping 4097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6787 SendSensitiveInputVisibility(); | 6792 SendSensitiveInputVisibility(); |
| 6788 } | 6793 } |
| 6789 | 6794 |
| 6790 CoreProbeSink* Document::GetProbeSink() { | 6795 CoreProbeSink* Document::GetProbeSink() { |
| 6791 LocalFrame* frame = GetFrame(); | 6796 LocalFrame* frame = GetFrame(); |
| 6792 if (!frame && TemplateDocumentHost()) | 6797 if (!frame && TemplateDocumentHost()) |
| 6793 frame = TemplateDocumentHost()->GetFrame(); | 6798 frame = TemplateDocumentHost()->GetFrame(); |
| 6794 return probe::ToCoreProbeSink(frame); | 6799 return probe::ToCoreProbeSink(frame); |
| 6795 } | 6800 } |
| 6796 | 6801 |
| 6802 MediaIPHManager* Document::GetMediaIPHManager() { |
| 6803 if (!media_iph_manager_ && GetFrame()) { |
| 6804 std::unique_ptr<WebMediaIPH> media_iph( |
| 6805 GetFrame()->GetPage()->GetChromeClient().CreateWebMediaIPH(GetFrame())); |
| 6806 if (media_iph) |
| 6807 media_iph_manager_ = MediaIPHManager::Create(std::move(media_iph)); |
| 6808 } |
| 6809 |
| 6810 return media_iph_manager_; |
| 6811 } |
| 6812 |
| 6797 DEFINE_TRACE(Document) { | 6813 DEFINE_TRACE(Document) { |
| 6798 visitor->Trace(imports_controller_); | 6814 visitor->Trace(imports_controller_); |
| 6799 visitor->Trace(doc_type_); | 6815 visitor->Trace(doc_type_); |
| 6800 visitor->Trace(implementation_); | 6816 visitor->Trace(implementation_); |
| 6801 visitor->Trace(autofocus_element_); | 6817 visitor->Trace(autofocus_element_); |
| 6802 visitor->Trace(focused_element_); | 6818 visitor->Trace(focused_element_); |
| 6803 visitor->Trace(sequential_focus_navigation_starting_point_); | 6819 visitor->Trace(sequential_focus_navigation_starting_point_); |
| 6804 visitor->Trace(hover_element_); | 6820 visitor->Trace(hover_element_); |
| 6805 visitor->Trace(active_hover_element_); | 6821 visitor->Trace(active_hover_element_); |
| 6806 visitor->Trace(document_element_); | 6822 visitor->Trace(document_element_); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6843 visitor->Trace(svg_extensions_); | 6859 visitor->Trace(svg_extensions_); |
| 6844 visitor->Trace(timeline_); | 6860 visitor->Trace(timeline_); |
| 6845 visitor->Trace(compositor_pending_animations_); | 6861 visitor->Trace(compositor_pending_animations_); |
| 6846 visitor->Trace(context_document_); | 6862 visitor->Trace(context_document_); |
| 6847 visitor->Trace(canvas_font_cache_); | 6863 visitor->Trace(canvas_font_cache_); |
| 6848 visitor->Trace(intersection_observer_controller_); | 6864 visitor->Trace(intersection_observer_controller_); |
| 6849 visitor->Trace(snap_coordinator_); | 6865 visitor->Trace(snap_coordinator_); |
| 6850 visitor->Trace(resize_observer_controller_); | 6866 visitor->Trace(resize_observer_controller_); |
| 6851 visitor->Trace(property_registry_); | 6867 visitor->Trace(property_registry_); |
| 6852 visitor->Trace(network_state_observer_); | 6868 visitor->Trace(network_state_observer_); |
| 6869 visitor->Trace(media_iph_manager_); |
| 6853 Supplementable<Document>::Trace(visitor); | 6870 Supplementable<Document>::Trace(visitor); |
| 6854 TreeScope::Trace(visitor); | 6871 TreeScope::Trace(visitor); |
| 6855 ContainerNode::Trace(visitor); | 6872 ContainerNode::Trace(visitor); |
| 6856 ExecutionContext::Trace(visitor); | 6873 ExecutionContext::Trace(visitor); |
| 6857 SecurityContext::Trace(visitor); | 6874 SecurityContext::Trace(visitor); |
| 6858 SynchronousMutationNotifier::Trace(visitor); | 6875 SynchronousMutationNotifier::Trace(visitor); |
| 6859 } | 6876 } |
| 6860 | 6877 |
| 6861 void Document::RecordDeferredLoadReason(WouldLoadReason reason) { | 6878 void Document::RecordDeferredLoadReason(WouldLoadReason reason) { |
| 6862 DCHECK(would_load_reason_ == WouldLoadReason::kInvalid || | 6879 DCHECK(would_load_reason_ == WouldLoadReason::kInvalid || |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6900 } | 6917 } |
| 6901 | 6918 |
| 6902 void showLiveDocumentInstances() { | 6919 void showLiveDocumentInstances() { |
| 6903 WeakDocumentSet& set = liveDocumentSet(); | 6920 WeakDocumentSet& set = liveDocumentSet(); |
| 6904 fprintf(stderr, "There are %u documents currently alive:\n", set.size()); | 6921 fprintf(stderr, "There are %u documents currently alive:\n", set.size()); |
| 6905 for (blink::Document* document : set) | 6922 for (blink::Document* document : set) |
| 6906 fprintf(stderr, "- Document %p URL: %s\n", document, | 6923 fprintf(stderr, "- Document %p URL: %s\n", document, |
| 6907 document->Url().GetString().Utf8().data()); | 6924 document->Url().GetString().Utf8().data()); |
| 6908 } | 6925 } |
| 6909 #endif | 6926 #endif |
| OLD | NEW |