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

Side by Side Diff: third_party/WebKit/Source/core/events/EventDispatcher.h

Issue 1479923002: Enumerate the return value of dispatchEvent so it is clear. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master_passive_uma_add
Patch Set: Fix typo Created 4 years, 9 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 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved.
6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
8 * Copyright (C) 2011 Google Inc. All rights reserved. 8 * Copyright (C) 2011 Google Inc. All rights reserved.
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Library General Public 11 * modify it under the terms of the GNU Library General Public
12 * License as published by the Free Software Foundation; either 12 * License as published by the Free Software Foundation; either
13 * version 2 of the License, or (at your option) any later version. 13 * version 2 of the License, or (at your option) any later version.
14 * 14 *
15 * This library is distributed in the hope that it will be useful, 15 * This library is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * Library General Public License for more details. 18 * Library General Public License for more details.
19 * 19 *
20 * You should have received a copy of the GNU Library General Public License 20 * You should have received a copy of the GNU Library General Public License
21 * along with this library; see the file COPYING.LIB. If not, write to 21 * along with this library; see the file COPYING.LIB. If not, write to
22 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 22 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
23 * Boston, MA 02110-1301, USA. 23 * Boston, MA 02110-1301, USA.
24 */ 24 */
25 25
26 #ifndef EventDispatcher_h 26 #ifndef EventDispatcher_h
27 #define EventDispatcher_h 27 #define EventDispatcher_h
28 28
29 #include "core/dom/SimulatedClickOptions.h" 29 #include "core/dom/SimulatedClickOptions.h"
30 #include "core/events/EventDispatchResult.h"
30 #include "platform/heap/Handle.h" 31 #include "platform/heap/Handle.h"
31 #include "wtf/PassRefPtr.h" 32 #include "wtf/PassRefPtr.h"
32 #include "wtf/RefPtr.h" 33 #include "wtf/RefPtr.h"
33 34
34 namespace blink { 35 namespace blink {
35 36
36 class Event; 37 class Event;
37 class EventDispatchMediator; 38 class EventDispatchMediator;
38 class FrameView; 39 class FrameView;
39 class Node; 40 class Node;
40 class NodeEventContext; 41 class NodeEventContext;
41 class WindowEventContext; 42 class WindowEventContext;
42 43
43 enum EventDispatchContinuation { 44 enum EventDispatchContinuation {
44 ContinueDispatching, 45 ContinueDispatching,
45 DoneDispatching 46 DoneDispatching
46 }; 47 };
47 48
48 class EventDispatcher { 49 class EventDispatcher {
49 STACK_ALLOCATED(); 50 STACK_ALLOCATED();
50 public: 51 public:
51 static bool dispatchEvent(Node&, PassRefPtrWillBeRawPtr<EventDispatchMediato r>); 52 static DispatchEventResult dispatchEvent(Node&, PassRefPtrWillBeRawPtr<Event DispatchMediator>);
52 static void dispatchScopedEvent(Node&, PassRefPtrWillBeRawPtr<EventDispatchM ediator>); 53 static void dispatchScopedEvent(Node&, PassRefPtrWillBeRawPtr<EventDispatchM ediator>);
53 54
54 static void dispatchSimulatedClick(Node&, Event* underlyingEvent, SimulatedC lickMouseEventOptions, SimulatedClickCreationScope); 55 static void dispatchSimulatedClick(Node&, Event* underlyingEvent, SimulatedC lickMouseEventOptions, SimulatedClickCreationScope);
55 56
56 bool dispatch(); 57 DispatchEventResult dispatch();
57 Node& node() const { return *m_node; } 58 Node& node() const { return *m_node; }
58 Event& event() const { return *m_event; } 59 Event& event() const { return *m_event; }
59 60
60 private: 61 private:
61 EventDispatcher(Node&, PassRefPtrWillBeRawPtr<Event>); 62 EventDispatcher(Node&, PassRefPtrWillBeRawPtr<Event>);
62 63
63 EventDispatchContinuation dispatchEventPreProcess(void*& preDispatchEventHan dlerResult); 64 EventDispatchContinuation dispatchEventPreProcess(void*& preDispatchEventHan dlerResult);
64 EventDispatchContinuation dispatchEventAtCapturing(); 65 EventDispatchContinuation dispatchEventAtCapturing();
65 EventDispatchContinuation dispatchEventAtTarget(); 66 EventDispatchContinuation dispatchEventAtTarget();
66 void dispatchEventAtBubbling(); 67 void dispatchEventAtBubbling();
67 void dispatchEventPostProcess(void* preDispatchEventHandlerResult); 68 void dispatchEventPostProcess(void* preDispatchEventHandlerResult);
68 69
69 RefPtrWillBeMember<Node> m_node; 70 RefPtrWillBeMember<Node> m_node;
70 RefPtrWillBeMember<Event> m_event; 71 RefPtrWillBeMember<Event> m_event;
71 RefPtrWillBeMember<FrameView> m_view; 72 RefPtrWillBeMember<FrameView> m_view;
72 #if ENABLE(ASSERT) 73 #if ENABLE(ASSERT)
73 bool m_eventDispatched; 74 bool m_eventDispatched;
74 #endif 75 #endif
75 }; 76 };
76 77
77 } // namespace blink 78 } // namespace blink
78 79
79 #endif 80 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/events/EventDispatchResult.h ('k') | third_party/WebKit/Source/core/events/EventDispatcher.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698