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

Side by Side Diff: Source/core/dom/CharacterData.cpp

Issue 236653002: Oilpan: move mutation observers to the Oilpan heap. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebased + explicitly dispose() mutation observer registrations always (non-Oilpan also.) Created 6 years, 8 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 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 182
183 if (document().frame()) 183 if (document().frame())
184 document().frame()->selection().didUpdateCharacterData(this, offsetOfRep lacedData, oldLength, newLength); 184 document().frame()->selection().didUpdateCharacterData(this, offsetOfRep lacedData, oldLength, newLength);
185 185
186 document().incDOMTreeVersion(); 186 document().incDOMTreeVersion();
187 didModifyData(oldData); 187 didModifyData(oldData);
188 } 188 }
189 189
190 void CharacterData::didModifyData(const String& oldData) 190 void CharacterData::didModifyData(const String& oldData)
191 { 191 {
192 if (OwnPtr<MutationObserverInterestGroup> mutationRecipients = MutationObser verInterestGroup::createForCharacterDataMutation(*this)) 192 if (OwnPtrWillBeRawPtr<MutationObserverInterestGroup> mutationRecipients = M utationObserverInterestGroup::createForCharacterDataMutation(*this))
193 mutationRecipients->enqueueMutationRecord(MutationRecord::createCharacte rData(this, oldData)); 193 mutationRecipients->enqueueMutationRecord(MutationRecord::createCharacte rData(this, oldData));
194 194
195 if (parentNode()) 195 if (parentNode())
196 parentNode()->childrenChanged(); 196 parentNode()->childrenChanged();
197 197
198 if (!isInShadowTree()) { 198 if (!isInShadowTree()) {
199 if (document().hasListenerType(Document::DOMCHARACTERDATAMODIFIED_LISTEN ER)) 199 if (document().hasListenerType(Document::DOMCHARACTERDATAMODIFIED_LISTEN ER))
200 dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMCharact erDataModified, true, nullptr, oldData, m_data)); 200 dispatchScopedEvent(MutationEvent::create(EventTypeNames::DOMCharact erDataModified, true, nullptr, oldData, m_data));
201 dispatchSubtreeModifiedEvent(); 201 dispatchSubtreeModifiedEvent();
202 } 202 }
203 InspectorInstrumentation::characterDataModified(this); 203 InspectorInstrumentation::characterDataModified(this);
204 } 204 }
205 205
206 int CharacterData::maxCharacterOffset() const 206 int CharacterData::maxCharacterOffset() const
207 { 207 {
208 return static_cast<int>(length()); 208 return static_cast<int>(length());
209 } 209 }
210 210
211 bool CharacterData::offsetInCharacters() const 211 bool CharacterData::offsetInCharacters() const
212 { 212 {
213 return true; 213 return true;
214 } 214 }
215 215
216 } // namespace WebCore 216 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698