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

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

Issue 23819007: Have Node::document() return a reference instead of a pointer (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase on master Created 7 years, 3 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/dom/Document.cpp ('k') | Source/core/dom/DocumentFragment.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All Rights Reserved. 2 * Copyright (C) 2010 Google Inc. All Rights Reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 ASSERT_UNUSED(wasAdded, wasAdded); // It should not have already been in the list. 73 ASSERT_UNUSED(wasAdded, wasAdded); // It should not have already been in the list.
74 74
75 if (!m_pendingEventTimer->isActive()) 75 if (!m_pendingEventTimer->isActive())
76 m_pendingEventTimer->startOneShot(0); 76 m_pendingEventTimer->startOneShot(0);
77 77
78 return true; 78 return true;
79 } 79 }
80 80
81 void DocumentEventQueue::enqueueOrDispatchScrollEvent(PassRefPtr<Node> target, S crollEventTargetType targetType) 81 void DocumentEventQueue::enqueueOrDispatchScrollEvent(PassRefPtr<Node> target, S crollEventTargetType targetType)
82 { 82 {
83 if (!target->document()->hasListenerType(Document::SCROLL_LISTENER)) 83 if (!target->document().hasListenerType(Document::SCROLL_LISTENER))
84 return; 84 return;
85 85
86 // Per the W3C CSSOM View Module, scroll events fired at the document should bubble, others should not. 86 // Per the W3C CSSOM View Module, scroll events fired at the document should bubble, others should not.
87 RefPtr<Event> scrollEvent = targetType == ScrollEventDocumentTarget ? Event: :createBubble(eventNames().scrollEvent) : Event::create(eventNames().scrollEvent ); 87 RefPtr<Event> scrollEvent = targetType == ScrollEventDocumentTarget ? Event: :createBubble(eventNames().scrollEvent) : Event::create(eventNames().scrollEvent );
88 88
89 if (!m_nodesWithQueuedScrollEvents.add(target.get()).isNewEntry) 89 if (!m_nodesWithQueuedScrollEvents.add(target.get()).isNewEntry)
90 return; 90 return;
91 91
92 scrollEvent->setTarget(target); 92 scrollEvent->setTarget(target);
93 enqueueEvent(scrollEvent.release()); 93 enqueueEvent(scrollEvent.release());
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 void DocumentEventQueue::dispatchEvent(PassRefPtr<Event> event) 138 void DocumentEventQueue::dispatchEvent(PassRefPtr<Event> event)
139 { 139 {
140 EventTarget* eventTarget = event->target(); 140 EventTarget* eventTarget = event->target();
141 if (eventTarget->toDOMWindow()) 141 if (eventTarget->toDOMWindow())
142 eventTarget->toDOMWindow()->dispatchEvent(event, 0); 142 eventTarget->toDOMWindow()->dispatchEvent(event, 0);
143 else 143 else
144 eventTarget->dispatchEvent(event); 144 eventTarget->dispatchEvent(event);
145 } 145 }
146 146
147 } 147 }
OLDNEW
« no previous file with comments | « Source/core/dom/Document.cpp ('k') | Source/core/dom/DocumentFragment.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698