Changeset 194201 in webkit
- Timestamp:
- Dec 16, 2015 6:13:00 PM (8 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r194184 r194201 1 2015-12-16 Gyuyoung Kim <gyuyoung.kim@webkit.org> 2 3 Reduce PassRefPtr uses in dom - 2 4 https://bugs.webkit.org/show_bug.cgi?id=151936 5 6 Reviewed by Darin Adler. 7 8 Change PassRefPtr with RefPtr<Foo>&&, WTF::move(), Foo*, and Foo&. 9 10 * dom/ScopedEventQueue.h: 11 * dom/ScriptedAnimationController.cpp: 12 (WebCore::ScriptedAnimationController::registerCallback): 13 * dom/ScriptedAnimationController.h: 14 * dom/StaticNodeList.h: 15 * dom/Traversal.cpp: 16 (WebCore::NodeIteratorBase::NodeIteratorBase): 17 * dom/Traversal.h: 18 * dom/TreeWalker.cpp: 19 (WebCore::TreeWalker::TreeWalker): 20 (WebCore::TreeWalker::setCurrentNode): 21 * dom/TreeWalker.h: 22 (WebCore::TreeWalker::create): 23 * dom/UserActionElementSet.h: 24 * dom/WebKitNamedFlow.cpp: 25 (WebCore::WebKitNamedFlow::WebKitNamedFlow): 26 (WebCore::WebKitNamedFlow::create): 27 (WebCore::WebKitNamedFlow::getRegionsByContent): 28 (WebCore::WebKitNamedFlow::getRegions): 29 (WebCore::WebKitNamedFlow::getContent): 30 * dom/WebKitNamedFlow.h: 31 * dom/WheelEvent.cpp: 32 (WebCore::WheelEvent::WheelEvent): 33 (WebCore::WheelEvent::initWheelEvent): 34 (WebCore::WheelEvent::initWebKitWheelEvent): 35 * dom/WheelEvent.h: 36 1 37 2015-12-16 Simon Fraser <simon.fraser@apple.com> 2 38 -
trunk/Source/WebCore/dom/Document.cpp
r194006 r194201 1749 1749 return nullptr; 1750 1750 } 1751 return TreeWalker::create( root, whatToShow, WTF::move(filter));1751 return TreeWalker::create(*root, whatToShow, WTF::move(filter)); 1752 1752 } 1753 1753 -
trunk/Source/WebCore/dom/NamedFlowCollection.cpp
r191792 r194201 77 77 } 78 78 79 RefPtr<WebKitNamedFlow> newFlow = WebKitNamedFlow::create( this, flowName);79 RefPtr<WebKitNamedFlow> newFlow = WebKitNamedFlow::create(*this, flowName); 80 80 m_namedFlows.add(newFlow.get()); 81 81 -
trunk/Source/WebCore/dom/NodeIterator.cpp
r190120 r194201 78 78 79 79 NodeIterator::NodeIterator(PassRefPtr<Node> rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& filter) 80 : NodeIteratorBase( rootNode, whatToShow, WTF::move(filter))80 : NodeIteratorBase(*rootNode, whatToShow, WTF::move(filter)) 81 81 , m_referenceNode(root(), true) 82 82 { -
trunk/Source/WebCore/dom/ScopedEventQueue.h
r192354 r194201 34 34 #include <wtf/NeverDestroyed.h> 35 35 #include <wtf/Noncopyable.h> 36 #include <wtf/PassRefPtr.h>37 36 #include <wtf/RefPtr.h> 38 37 #include <wtf/Vector.h> -
trunk/Source/WebCore/dom/StaticNodeList.h
r191351 r194201 63 63 class StaticElementList final : public NodeList { 64 64 public: 65 static PassRefPtr<StaticElementList> adopt(Vector<Ref<Element>>& elements)65 static Ref<StaticElementList> adopt(Vector<Ref<Element>>& elements) 66 66 { 67 Ref Ptr<StaticElementList> nodeList = adoptRef(new StaticElementList);67 Ref<StaticElementList> nodeList = adoptRef(*new StaticElementList); 68 68 nodeList->m_elements.swap(elements); 69 return nodeList .release();69 return nodeList; 70 70 } 71 71 -
trunk/Source/WebCore/dom/Traversal.cpp
r190120 r194201 31 31 namespace WebCore { 32 32 33 NodeIteratorBase::NodeIteratorBase( PassRefPtr<Node>rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& nodeFilter)33 NodeIteratorBase::NodeIteratorBase(Node& rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& nodeFilter) 34 34 : m_root(rootNode) 35 35 , m_whatToShow(whatToShow) -
trunk/Source/WebCore/dom/Traversal.h
r190120 r194201 36 36 class NodeIteratorBase { 37 37 public: 38 Node* root() const { return m_root.get(); }38 Node* root() const { return &m_root; } 39 39 unsigned long whatToShow() const { return m_whatToShow; } 40 40 NodeFilter* filter() const { return m_filter.get(); } … … 42 42 43 43 protected: 44 NodeIteratorBase( PassRefPtr<Node>, unsigned long whatToShow, RefPtr<NodeFilter>&&);44 NodeIteratorBase(Node&, unsigned long whatToShow, RefPtr<NodeFilter>&&); 45 45 short acceptNode(Node*) const; 46 46 47 47 private: 48 RefPtr<Node>m_root;48 Node& m_root; 49 49 unsigned long m_whatToShow; 50 50 RefPtr<NodeFilter> m_filter; -
trunk/Source/WebCore/dom/TreeWalker.cpp
r190187 r194201 34 34 namespace WebCore { 35 35 36 TreeWalker::TreeWalker( PassRefPtr<Node>rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& filter)36 TreeWalker::TreeWalker(Node& rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& filter) 37 37 : NodeIteratorBase(rootNode, whatToShow, WTF::move(filter)) 38 38 , m_current(root()) … … 40 40 } 41 41 42 void TreeWalker::setCurrentNode( PassRefPtr<Node>node, ExceptionCode& ec)42 void TreeWalker::setCurrentNode(Node* node, ExceptionCode& ec) 43 43 { 44 44 if (!node) { -
trunk/Source/WebCore/dom/TreeWalker.h
r190187 r194201 38 38 class TreeWalker : public ScriptWrappable, public RefCounted<TreeWalker>, public NodeIteratorBase { 39 39 public: 40 static Ref<TreeWalker> create( PassRefPtr<Node>rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& filter)40 static Ref<TreeWalker> create(Node& rootNode, unsigned long whatToShow, RefPtr<NodeFilter>&& filter) 41 41 { 42 42 return adoptRef(*new TreeWalker(rootNode, whatToShow, WTF::move(filter))); … … 44 44 45 45 Node* currentNode() const { return m_current.get(); } 46 void setCurrentNode( PassRefPtr<Node>, ExceptionCode&);46 void setCurrentNode(Node*, ExceptionCode&); 47 47 48 48 Node* parentNode(); … … 55 55 56 56 private: 57 TreeWalker( PassRefPtr<Node>, unsigned long whatToShow, RefPtr<NodeFilter>&&);57 TreeWalker(Node&, unsigned long whatToShow, RefPtr<NodeFilter>&&); 58 58 enum class SiblingTraversalType { Previous, Next }; 59 59 template<SiblingTraversalType> Node* traverseSiblings(); -
trunk/Source/WebCore/dom/UserActionElementSet.h
r164309 r194201 30 30 31 31 #include <wtf/HashMap.h> 32 #include <wtf/PassRefPtr.h>33 32 #include <wtf/RefPtr.h> 34 33 -
trunk/Source/WebCore/dom/WebKitNamedFlow.cpp
r184225 r194201 40 40 namespace WebCore { 41 41 42 WebKitNamedFlow::WebKitNamedFlow( PassRefPtr<NamedFlowCollection>manager, const AtomicString& flowThreadName)42 WebKitNamedFlow::WebKitNamedFlow(NamedFlowCollection& manager, const AtomicString& flowThreadName) 43 43 : m_flowThreadName(flowThreadName) 44 44 , m_flowManager(manager) … … 50 50 { 51 51 // The named flow is not "strong" referenced from anywhere at this time so it shouldn't be reused if the named flow is recreated. 52 m_flowManager ->discardNamedFlow(this);53 } 54 55 Ref<WebKitNamedFlow> WebKitNamedFlow::create( PassRefPtr<NamedFlowCollection>manager, const AtomicString& flowThreadName)52 m_flowManager.discardNamedFlow(this); 53 } 54 55 Ref<WebKitNamedFlow> WebKitNamedFlow::create(NamedFlowCollection& manager, const AtomicString& flowThreadName) 56 56 { 57 57 return adoptRef(*new WebKitNamedFlow(manager, flowThreadName)); … … 65 65 bool WebKitNamedFlow::overset() const 66 66 { 67 if (m_flowManager ->document())68 m_flowManager ->document()->updateLayoutIgnorePendingStylesheets();67 if (m_flowManager.document()) 68 m_flowManager.document()->updateLayoutIgnorePendingStylesheets(); 69 69 70 70 // The renderer may be destroyed or created after the style update. … … 93 93 int WebKitNamedFlow::firstEmptyRegionIndex() const 94 94 { 95 if (m_flowManager ->document())96 m_flowManager ->document()->updateLayoutIgnorePendingStylesheets();95 if (m_flowManager.document()) 96 m_flowManager.document()->updateLayoutIgnorePendingStylesheets(); 97 97 98 98 if (!m_parentFlowThread) … … 118 118 } 119 119 120 PassRefPtr<NodeList> WebKitNamedFlow::getRegionsByContent(Node* contentNode)120 Ref<NodeList> WebKitNamedFlow::getRegionsByContent(Node* contentNode) 121 121 { 122 122 if (!contentNode) 123 123 return StaticElementList::createEmpty(); 124 124 125 if (m_flowManager ->document())126 m_flowManager ->document()->updateLayoutIgnorePendingStylesheets();125 if (m_flowManager.document()) 126 m_flowManager.document()->updateLayoutIgnorePendingStylesheets(); 127 127 128 128 // The renderer may be destroyed or created after the style update. … … 152 152 } 153 153 154 PassRefPtr<NodeList> WebKitNamedFlow::getRegions()155 { 156 if (m_flowManager ->document())157 m_flowManager ->document()->updateLayoutIgnorePendingStylesheets();154 Ref<NodeList> WebKitNamedFlow::getRegions() 155 { 156 if (m_flowManager.document()) 157 m_flowManager.document()->updateLayoutIgnorePendingStylesheets(); 158 158 159 159 // The renderer may be destroyed or created after the style update. … … 179 179 } 180 180 181 PassRefPtr<NodeList> WebKitNamedFlow::getContent()182 { 183 if (m_flowManager ->document())184 m_flowManager ->document()->updateLayoutIgnorePendingStylesheets();181 Ref<NodeList> WebKitNamedFlow::getContent() 182 { 183 if (m_flowManager.document()) 184 m_flowManager.document()->updateLayoutIgnorePendingStylesheets(); 185 185 186 186 // The renderer may be destroyed or created after the style update. … … 217 217 return; 218 218 219 dispatchEvent(UIEvent::create(eventNames().webkitregionoversetchangeEvent, false, false, m_flowManager ->document()->defaultView(), 0));219 dispatchEvent(UIEvent::create(eventNames().webkitregionoversetchangeEvent, false, false, m_flowManager.document()->defaultView(), 0)); 220 220 } 221 221 222 222 ScriptExecutionContext* WebKitNamedFlow::scriptExecutionContext() const 223 223 { 224 return m_flowManager ->document();224 return m_flowManager.document(); 225 225 } 226 226 227 227 Node* WebKitNamedFlow::ownerNode() const 228 228 { 229 return m_flowManager ->document();229 return m_flowManager.document(); 230 230 } 231 231 -
trunk/Source/WebCore/dom/WebKitNamedFlow.h
r184225 r194201 49 49 class WebKitNamedFlow final : public RefCounted<WebKitNamedFlow>, public EventTargetWithInlineData { 50 50 public: 51 static Ref<WebKitNamedFlow> create( PassRefPtr<NamedFlowCollection>manager, const AtomicString& flowThreadName);51 static Ref<WebKitNamedFlow> create(NamedFlowCollection& manager, const AtomicString& flowThreadName); 52 52 53 53 ~WebKitNamedFlow(); … … 56 56 bool overset() const; 57 57 int firstEmptyRegionIndex() const; 58 PassRefPtr<NodeList> getRegionsByContent(Node*);59 PassRefPtr<NodeList> getRegions();60 PassRefPtr<NodeList> getContent();58 Ref<NodeList> getRegionsByContent(Node*); 59 Ref<NodeList> getRegions(); 60 Ref<NodeList> getContent(); 61 61 62 62 using RefCounted<WebKitNamedFlow>::ref; … … 82 82 83 83 private: 84 WebKitNamedFlow( PassRefPtr<NamedFlowCollection>, const AtomicString&);84 WebKitNamedFlow(NamedFlowCollection&, const AtomicString&); 85 85 86 86 // EventTarget implementation. … … 91 91 AtomicString m_flowThreadName; 92 92 93 RefPtr<NamedFlowCollection>m_flowManager;93 NamedFlowCollection& m_flowManager; 94 94 RenderNamedFlowThread* m_parentFlowThread; 95 95 }; -
trunk/Source/WebCore/dom/WheelEvent.cpp
r192903 r194201 66 66 } 67 67 68 WheelEvent::WheelEvent(const PlatformWheelEvent& event, PassRefPtr<AbstractView>view)68 WheelEvent::WheelEvent(const PlatformWheelEvent& event, AbstractView* view) 69 69 : MouseEvent(eventNames().wheelEvent, true, true, event.timestamp(), view, 0, event.globalPosition().x(), event.globalPosition().y(), event.position().x(), event.position().y() 70 70 #if ENABLE(POINTER_LOCK) … … 82 82 } 83 83 84 void WheelEvent::initWheelEvent(int rawDeltaX, int rawDeltaY, PassRefPtr<AbstractView>view, int screenX, int screenY, int pageX, int pageY, bool ctrlKey, bool altKey, bool shiftKey, bool metaKey)84 void WheelEvent::initWheelEvent(int rawDeltaX, int rawDeltaY, AbstractView* view, int screenX, int screenY, int pageX, int pageY, bool ctrlKey, bool altKey, bool shiftKey, bool metaKey) 85 85 { 86 86 if (dispatched()) … … 105 105 } 106 106 107 void WheelEvent::initWebKitWheelEvent(int rawDeltaX, int rawDeltaY, PassRefPtr<AbstractView>view, int screenX, int screenY, int pageX, int pageY, bool ctrlKey, bool altKey, bool shiftKey, bool metaKey)107 void WheelEvent::initWebKitWheelEvent(int rawDeltaX, int rawDeltaY, AbstractView* view, int screenX, int screenY, int pageX, int pageY, bool ctrlKey, bool altKey, bool shiftKey, bool metaKey) 108 108 { 109 109 initWheelEvent(rawDeltaX, rawDeltaY, view, screenX, screenY, pageX, pageY, ctrlKey, altKey, shiftKey, metaKey); -
trunk/Source/WebCore/dom/WheelEvent.h
r192903 r194201 65 65 } 66 66 67 static Ref<WheelEvent> create(const PlatformWheelEvent& event, PassRefPtr<AbstractView>view)67 static Ref<WheelEvent> create(const PlatformWheelEvent& event, AbstractView* view) 68 68 { 69 69 return adoptRef(*new WheelEvent(event, view)); 70 70 } 71 71 72 void initWheelEvent(int rawDeltaX, int rawDeltaY, PassRefPtr<AbstractView>,72 void initWheelEvent(int rawDeltaX, int rawDeltaY, AbstractView*, 73 73 int screenX, int screenY, int pageX, int pageY, 74 74 bool ctrlKey, bool altKey, bool shiftKey, bool metaKey); 75 75 76 void initWebKitWheelEvent(int rawDeltaX, int rawDeltaY, PassRefPtr<AbstractView>,76 void initWebKitWheelEvent(int rawDeltaX, int rawDeltaY, AbstractView*, 77 77 int screenX, int screenY, int pageX, int pageY, 78 78 bool ctrlKey, bool altKey, bool shiftKey, bool metaKey); … … 101 101 WheelEvent(); 102 102 WheelEvent(const AtomicString&, const WheelEventInit&); 103 WheelEvent(const PlatformWheelEvent&, PassRefPtr<AbstractView>);103 WheelEvent(const PlatformWheelEvent&, AbstractView*); 104 104 105 105 virtual bool isWheelEvent() const override;
Note: See TracChangeset
for help on using the changeset viewer.