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 r
ights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r
ights reserved. |
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. | 8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. |
9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) | 9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) |
10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. |
(...skipping 5640 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5651 // FIXME: Oilpan: Use a weak counted set instead. | 5651 // FIXME: Oilpan: Use a weak counted set instead. |
5652 if (m_touchEventTargets) { | 5652 if (m_touchEventTargets) { |
5653 Vector<Node*> deadNodes; | 5653 Vector<Node*> deadNodes; |
5654 for (TouchEventTargetSet::iterator it = m_touchEventTargets->begin(); it
!= m_touchEventTargets->end(); ++it) { | 5654 for (TouchEventTargetSet::iterator it = m_touchEventTargets->begin(); it
!= m_touchEventTargets->end(); ++it) { |
5655 if (!visitor->isAlive(it->key)) | 5655 if (!visitor->isAlive(it->key)) |
5656 deadNodes.append(it->key); | 5656 deadNodes.append(it->key); |
5657 } | 5657 } |
5658 for (unsigned i = 0; i < deadNodes.size(); ++i) | 5658 for (unsigned i = 0; i < deadNodes.size(); ++i) |
5659 didClearTouchEventHandlers(deadNodes[i]); | 5659 didClearTouchEventHandlers(deadNodes[i]); |
5660 } | 5660 } |
5661 | |
5662 EventHandlerRegistry* registry = static_cast<EventHandlerRegistry*>(Document
Supplement::from(this, EventHandlerRegistry::supplementName())); | |
5663 // FIXME: Oilpan: This is pretty funky. The current code disables all modifi
cations of the | |
5664 // EventHandlerRegistry when the document becomes inactive. To keep that beh
avior we only | |
5665 // perform weak processing of the registry when the document is active. | |
5666 if (registry && isActive()) | |
5667 registry->clearWeakMembers(visitor); | |
5668 } | 5661 } |
5669 | 5662 |
5670 void Document::trace(Visitor* visitor) | 5663 void Document::trace(Visitor* visitor) |
5671 { | 5664 { |
5672 visitor->trace(m_styleSheetList); | 5665 visitor->trace(m_styleSheetList); |
5673 visitor->trace(m_mediaQueryMatcher); | 5666 visitor->trace(m_mediaQueryMatcher); |
5674 visitor->trace(m_visibilityObservers); | 5667 visitor->trace(m_visibilityObservers); |
5675 visitor->registerWeakMembers<Document, &Document::clearWeakMembers>(this); | 5668 visitor->registerWeakMembers<Document, &Document::clearWeakMembers>(this); |
5676 Supplementable<Document>::trace(visitor); | 5669 DocumentSupplementable::trace(visitor); |
5677 TreeScope::trace(visitor); | 5670 TreeScope::trace(visitor); |
5678 ContainerNode::trace(visitor); | 5671 ContainerNode::trace(visitor); |
5679 ExecutionContext::trace(visitor); | 5672 ExecutionContext::trace(visitor); |
5680 } | 5673 } |
5681 | 5674 |
5682 } // namespace WebCore | 5675 } // namespace WebCore |
OLD | NEW |