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

Side by Side Diff: third_party/WebKit/Source/core/dom/Document.h

Issue 2740823005: Track lastTextNode during rebuildLayoutTree. (Closed)
Patch Set: Missing reset of lastTextNode for elements. Created 3 years, 9 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) 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, 2010, 2012 Apple Inc. All 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 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) 2010 Nokia Corporation and/or its subsidiary(-ies) 10 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
(...skipping 23 matching lines...) Expand all
34 #include "bindings/core/v8/ScriptValue.h" 34 #include "bindings/core/v8/ScriptValue.h"
35 #include "bindings/core/v8/TraceWrapperMember.h" 35 #include "bindings/core/v8/TraceWrapperMember.h"
36 #include "core/CoreExport.h" 36 #include "core/CoreExport.h"
37 #include "core/dom/ContainerNode.h" 37 #include "core/dom/ContainerNode.h"
38 #include "core/dom/DocumentEncodingData.h" 38 #include "core/dom/DocumentEncodingData.h"
39 #include "core/dom/DocumentInit.h" 39 #include "core/dom/DocumentInit.h"
40 #include "core/dom/DocumentLifecycle.h" 40 #include "core/dom/DocumentLifecycle.h"
41 #include "core/dom/DocumentTiming.h" 41 #include "core/dom/DocumentTiming.h"
42 #include "core/dom/ExecutionContext.h" 42 #include "core/dom/ExecutionContext.h"
43 #include "core/dom/MutationObserver.h" 43 #include "core/dom/MutationObserver.h"
44 #include "core/dom/StyleReattachData.h"
45 #include "core/dom/SynchronousMutationNotifier.h" 44 #include "core/dom/SynchronousMutationNotifier.h"
46 #include "core/dom/SynchronousMutationObserver.h" 45 #include "core/dom/SynchronousMutationObserver.h"
47 #include "core/dom/Text.h" 46 #include "core/dom/Text.h"
48 #include "core/dom/TextLinkColors.h" 47 #include "core/dom/TextLinkColors.h"
49 #include "core/dom/TreeScope.h" 48 #include "core/dom/TreeScope.h"
50 #include "core/dom/UserActionElementSet.h" 49 #include "core/dom/UserActionElementSet.h"
51 #include "core/dom/ViewportDescription.h" 50 #include "core/dom/ViewportDescription.h"
52 #include "core/dom/custom/V0CustomElement.h" 51 #include "core/dom/custom/V0CustomElement.h"
53 #include "core/frame/DOMTimerCoordinator.h" 52 #include "core/frame/DOMTimerCoordinator.h"
54 #include "core/frame/HostsUsingFeatures.h" 53 #include "core/frame/HostsUsingFeatures.h"
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after
336 Element* createElement(const QualifiedName&, CreateElementFlags); 335 Element* createElement(const QualifiedName&, CreateElementFlags);
337 336
338 Element* elementFromPoint(int x, int y) const; 337 Element* elementFromPoint(int x, int y) const;
339 HeapVector<Member<Element>> elementsFromPoint(int x, int y) const; 338 HeapVector<Member<Element>> elementsFromPoint(int x, int y) const;
340 Range* caretRangeFromPoint(int x, int y); 339 Range* caretRangeFromPoint(int x, int y);
341 Element* scrollingElement(); 340 Element* scrollingElement();
342 // When calling from C++ code, use this method. scrollingElement() is 341 // When calling from C++ code, use this method. scrollingElement() is
343 // just for the web IDL implementation. 342 // just for the web IDL implementation.
344 Element* scrollingElementNoLayout(); 343 Element* scrollingElementNoLayout();
345 344
346 void addStyleReattachData(const Node&, StyleReattachData&); 345 void addNonAttachedStyle(const Node&, RefPtr<ComputedStyle>);
347 StyleReattachData getStyleReattachData(const Node&) const; 346 ComputedStyle* getNonAttachedStyle(const Node&) const;
348 347
349 String readyState() const; 348 String readyState() const;
350 349
351 AtomicString characterSet() const { return Document::encodingName(); } 350 AtomicString characterSet() const { return Document::encodingName(); }
352 351
353 AtomicString encodingName() const; 352 AtomicString encodingName() const;
354 353
355 void setContent(const String&); 354 void setContent(const String&);
356 355
357 String suggestedMIMEType() const; 356 String suggestedMIMEType() const;
(...skipping 1077 matching lines...) Expand 10 before | Expand all | Expand 10 after
1435 PendingSheetLayout m_pendingSheetLayout; 1434 PendingSheetLayout m_pendingSheetLayout;
1436 1435
1437 Member<LocalFrame> m_frame; 1436 Member<LocalFrame> m_frame;
1438 Member<LocalDOMWindow> m_domWindow; 1437 Member<LocalDOMWindow> m_domWindow;
1439 TraceWrapperMember<HTMLImportsController> m_importsController; 1438 TraceWrapperMember<HTMLImportsController> m_importsController;
1440 1439
1441 Member<ResourceFetcher> m_fetcher; 1440 Member<ResourceFetcher> m_fetcher;
1442 Member<DocumentParser> m_parser; 1441 Member<DocumentParser> m_parser;
1443 Member<ContextFeatures> m_contextFeatures; 1442 Member<ContextFeatures> m_contextFeatures;
1444 1443
1445 // This HashMap is used to stash information (ComputedStyle, nextTextSibling) 1444 // This HashMap is used to temporaily store the ComputedStyle generated in the
1446 // generated in the Style Resolution phase that is required in the 1445 // Style Resolution phase which is used in the Layout Tree construction phase.
1447 // Layout Tree construction phase. 1446 HeapHashMap<Member<const Node>, RefPtr<ComputedStyle>> m_nonAttachedStyle;
1448 HeapHashMap<Member<const Node>, StyleReattachData> m_styleReattachDataMap;
1449 1447
1450 bool m_wellFormed; 1448 bool m_wellFormed;
1451 1449
1452 // Document URLs. 1450 // Document URLs.
1453 KURL m_url; // Document.URL: The URL from which this document was retrieved. 1451 KURL m_url; // Document.URL: The URL from which this document was retrieved.
1454 KURL m_baseURL; // Node.baseURI: The URL to use when resolving relative URLs. 1452 KURL m_baseURL; // Node.baseURI: The URL to use when resolving relative URLs.
1455 KURL m_baseURLOverride; // An alternative base URL that takes precedence over 1453 KURL m_baseURLOverride; // An alternative base URL that takes precedence over
1456 // m_baseURL (but not m_baseElementURL). 1454 // m_baseURL (but not m_baseElementURL).
1457 KURL m_baseElementURL; // The URL set by the <base> element. 1455 KURL m_baseElementURL; // The URL set by the <base> element.
1458 KURL m_cookieURL; // The URL to use for cookie access. 1456 KURL m_cookieURL; // The URL to use for cookie access.
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
1717 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); 1715 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true);
1718 1716
1719 } // namespace blink 1717 } // namespace blink
1720 1718
1721 #ifndef NDEBUG 1719 #ifndef NDEBUG
1722 // Outside the WebCore namespace for ease of invocation from gdb. 1720 // Outside the WebCore namespace for ease of invocation from gdb.
1723 CORE_EXPORT void showLiveDocumentInstances(); 1721 CORE_EXPORT void showLiveDocumentInstances();
1724 #endif 1722 #endif
1725 1723
1726 #endif // Document_h 1724 #endif // Document_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/dom/ContainerNode.cpp ('k') | third_party/WebKit/Source/core/dom/Document.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698