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

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

Issue 2490163002: Reland of "Tracking reference filter mutation via SVGElementProxy" (Closed)
Patch Set: Fix double observer unregistration; simplify scope selection; add tests Created 4 years, 1 month 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 453 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 bool gotoAnchorNeededAfterStylesheetsLoad() { 464 bool gotoAnchorNeededAfterStylesheetsLoad() {
465 return m_gotoAnchorNeededAfterStylesheetsLoad; 465 return m_gotoAnchorNeededAfterStylesheetsLoad;
466 } 466 }
467 void setGotoAnchorNeededAfterStylesheetsLoad(bool b) { 467 void setGotoAnchorNeededAfterStylesheetsLoad(bool b) {
468 m_gotoAnchorNeededAfterStylesheetsLoad = b; 468 m_gotoAnchorNeededAfterStylesheetsLoad = b;
469 } 469 }
470 470
471 void scheduleUseShadowTreeUpdate(SVGUseElement&); 471 void scheduleUseShadowTreeUpdate(SVGUseElement&);
472 void unscheduleUseShadowTreeUpdate(SVGUseElement&); 472 void unscheduleUseShadowTreeUpdate(SVGUseElement&);
473 473
474 // FIXME: SVG filters should change to store the filter on the ComputedStyle
475 // instead of the LayoutObject so we can get rid of this hack.
476 void scheduleSVGFilterLayerUpdateHack(Element&);
477 void unscheduleSVGFilterLayerUpdateHack(Element&);
478
479 void evaluateMediaQueryList(); 474 void evaluateMediaQueryList();
480 475
481 FormController& formController(); 476 FormController& formController();
482 DocumentState* formElementsState() const; 477 DocumentState* formElementsState() const;
483 void setStateForNewFormElements(const Vector<String>&); 478 void setStateForNewFormElements(const Vector<String>&);
484 479
485 FrameView* view() const; // can be null 480 FrameView* view() const; // can be null
486 LocalFrame* frame() const { return m_frame; } // can be null 481 LocalFrame* frame() const { return m_frame; } // can be null
487 FrameHost* frameHost() const; // can be null 482 FrameHost* frameHost() const; // can be null
488 Page* page() const; // can be null 483 Page* page() const; // can be null
(...skipping 737 matching lines...) Expand 10 before | Expand all | Expand 10 after
1226 void setHasViewportUnits() { m_hasViewportUnits = true; } 1221 void setHasViewportUnits() { m_hasViewportUnits = true; }
1227 bool hasViewportUnits() const { return m_hasViewportUnits; } 1222 bool hasViewportUnits() const { return m_hasViewportUnits; }
1228 void notifyResizeForViewportUnits(); 1223 void notifyResizeForViewportUnits();
1229 1224
1230 void updateStyleInvalidationIfNeeded(); 1225 void updateStyleInvalidationIfNeeded();
1231 1226
1232 DECLARE_VIRTUAL_TRACE(); 1227 DECLARE_VIRTUAL_TRACE();
1233 1228
1234 DECLARE_VIRTUAL_TRACE_WRAPPERS(); 1229 DECLARE_VIRTUAL_TRACE_WRAPPERS();
1235 1230
1236 bool hasSVGFilterElementsRequiringLayerUpdate() const {
1237 return m_layerUpdateSVGFilterElements.size();
1238 }
1239
1240 AtomicString convertLocalName(const AtomicString&); 1231 AtomicString convertLocalName(const AtomicString&);
1241 1232
1242 void platformColorsChanged(); 1233 void platformColorsChanged();
1243 1234
1244 DOMTimerCoordinator* timers() final; 1235 DOMTimerCoordinator* timers() final;
1245 1236
1246 v8::Local<v8::Object> wrap(v8::Isolate*, 1237 v8::Local<v8::Object> wrap(v8::Isolate*,
1247 v8::Local<v8::Object> creationContext) override; 1238 v8::Local<v8::Object> creationContext) override;
1248 v8::Local<v8::Object> associateWithWrapper( 1239 v8::Local<v8::Object> associateWithWrapper(
1249 v8::Isolate*, 1240 v8::Isolate*,
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
1356 return m_lifecycle.state() == DocumentLifecycle::VisualUpdatePending; 1347 return m_lifecycle.state() == DocumentLifecycle::VisualUpdatePending;
1357 } 1348 }
1358 1349
1359 bool shouldScheduleLayoutTreeUpdate() const; 1350 bool shouldScheduleLayoutTreeUpdate() const;
1360 void scheduleLayoutTreeUpdate(); 1351 void scheduleLayoutTreeUpdate();
1361 1352
1362 bool needsFullLayoutTreeUpdate() const; 1353 bool needsFullLayoutTreeUpdate() const;
1363 1354
1364 void inheritHtmlAndBodyElementStyles(StyleRecalcChange); 1355 void inheritHtmlAndBodyElementStyles(StyleRecalcChange);
1365 1356
1366 bool dirtyElementsForLayerUpdate();
1367
1368 void updateUseShadowTreesIfNeeded(); 1357 void updateUseShadowTreesIfNeeded();
1369 void evaluateMediaQueryListIfNeeded(); 1358 void evaluateMediaQueryListIfNeeded();
1370 1359
1371 void updateStyle(); 1360 void updateStyle();
1372 void notifyLayoutTreeOfSubtreeChanges(); 1361 void notifyLayoutTreeOfSubtreeChanges();
1373 1362
1374 void detachParser(); 1363 void detachParser();
1375 1364
1376 void beginLifecycleUpdatesIfRenderingReady(); 1365 void beginLifecycleUpdatesIfRenderingReady();
1377 1366
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after
1638 1627
1639 Member<DocumentTimeline> m_timeline; 1628 Member<DocumentTimeline> m_timeline;
1640 Member<CompositorPendingAnimations> m_compositorPendingAnimations; 1629 Member<CompositorPendingAnimations> m_compositorPendingAnimations;
1641 1630
1642 Member<Document> m_templateDocument; 1631 Member<Document> m_templateDocument;
1643 Member<Document> m_templateDocumentHost; 1632 Member<Document> m_templateDocumentHost;
1644 1633
1645 TaskRunnerTimer<Document> m_didAssociateFormControlsTimer; 1634 TaskRunnerTimer<Document> m_didAssociateFormControlsTimer;
1646 1635
1647 HeapHashSet<Member<SVGUseElement>> m_useElementsNeedingUpdate; 1636 HeapHashSet<Member<SVGUseElement>> m_useElementsNeedingUpdate;
1648 HeapHashSet<Member<Element>> m_layerUpdateSVGFilterElements;
1649 1637
1650 DOMTimerCoordinator m_timers; 1638 DOMTimerCoordinator m_timers;
1651 1639
1652 bool m_hasViewportUnits; 1640 bool m_hasViewportUnits;
1653 1641
1654 ParserSynchronizationPolicy m_parserSyncPolicy; 1642 ParserSynchronizationPolicy m_parserSyncPolicy;
1655 1643
1656 HostsUsingFeatures::Value m_hostsUsingFeaturesValue; 1644 HostsUsingFeatures::Value m_hostsUsingFeaturesValue;
1657 1645
1658 ClientHintsPreferences m_clientHintsPreferences; 1646 ClientHintsPreferences m_clientHintsPreferences;
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
1721 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); 1709 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true);
1722 1710
1723 } // namespace blink 1711 } // namespace blink
1724 1712
1725 #ifndef NDEBUG 1713 #ifndef NDEBUG
1726 // Outside the WebCore namespace for ease of invocation from gdb. 1714 // Outside the WebCore namespace for ease of invocation from gdb.
1727 CORE_EXPORT void showLiveDocumentInstances(); 1715 CORE_EXPORT void showLiveDocumentInstances();
1728 #endif 1716 #endif
1729 1717
1730 #endif // Document_h 1718 #endif // Document_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698