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

Side by Side Diff: Source/core/dom/Node.h

Issue 894913002: Prevent default actions for JS-generated mouse events other than click (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: TIL, gclient sync may rebase changes back in time Created 5 years, 6 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
« no previous file with comments | « LayoutTests/plugins/user-gesture-expected.txt ('k') | Source/core/dom/Node.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) 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-2011, 2014 Apple Inc. All rights reserved. 5 * Copyright (C) 2004-2011, 2014 Apple Inc. All rights reserved.
6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 class Event; 55 class Event;
56 class EventDispatchMediator; 56 class EventDispatchMediator;
57 class EventListener; 57 class EventListener;
58 class ExceptionState; 58 class ExceptionState;
59 class FloatPoint; 59 class FloatPoint;
60 class LocalFrame; 60 class LocalFrame;
61 class HTMLInputElement; 61 class HTMLInputElement;
62 class HTMLQualifiedName; 62 class HTMLQualifiedName;
63 class IntRect; 63 class IntRect;
64 class KeyboardEvent; 64 class KeyboardEvent;
65 class MouseEvent;
65 class NSResolver; 66 class NSResolver;
66 class NameNodeList; 67 class NameNodeList;
67 class NamedNodeMap; 68 class NamedNodeMap;
68 class NodeEventContext; 69 class NodeEventContext;
69 class NodeList; 70 class NodeList;
70 class NodeListsNodeData; 71 class NodeListsNodeData;
71 class NodeRareData; 72 class NodeRareData;
72 class PlatformGestureEvent; 73 class PlatformGestureEvent;
73 class PlatformKeyboardEvent; 74 class PlatformKeyboardEvent;
74 class PlatformMouseEvent; 75 class PlatformMouseEvent;
(...skipping 556 matching lines...) Expand 10 before | Expand all | Expand 10 after
631 virtual bool removeEventListener(const AtomicString& eventType, PassRefPtr<E ventListener>, bool useCapture = false) override; 632 virtual bool removeEventListener(const AtomicString& eventType, PassRefPtr<E ventListener>, bool useCapture = false) override;
632 virtual void removeAllEventListeners() override; 633 virtual void removeAllEventListeners() override;
633 void removeAllEventListenersRecursively(); 634 void removeAllEventListenersRecursively();
634 635
635 // Handlers to do/undo actions on the target node before an event is dispatc hed to it and after the event 636 // Handlers to do/undo actions on the target node before an event is dispatc hed to it and after the event
636 // has been dispatched. The data pointer is handed back by the preDispatch and passed to postDispatch. 637 // has been dispatched. The data pointer is handed back by the preDispatch and passed to postDispatch.
637 virtual void* preDispatchEventHandler(Event*) { return nullptr; } 638 virtual void* preDispatchEventHandler(Event*) { return nullptr; }
638 virtual void postDispatchEventHandler(Event*, void* /*dataFromPreDispatch*/) { } 639 virtual void postDispatchEventHandler(Event*, void* /*dataFromPreDispatch*/) { }
639 640
640 using EventTarget::dispatchEvent; 641 using EventTarget::dispatchEvent;
642 // This dispatchEvent override is intended to only be used for events dispat ched from script
641 virtual bool dispatchEvent(PassRefPtrWillBeRawPtr<Event>) override; 643 virtual bool dispatchEvent(PassRefPtrWillBeRawPtr<Event>) override;
642 644
643 void dispatchScopedEvent(PassRefPtrWillBeRawPtr<Event>); 645 void dispatchScopedEvent(PassRefPtrWillBeRawPtr<Event>);
644 void dispatchScopedEventDispatchMediator(PassRefPtrWillBeRawPtr<EventDispatc hMediator>); 646 void dispatchScopedEventDispatchMediator(PassRefPtrWillBeRawPtr<EventDispatc hMediator>);
645 647
646 virtual void handleLocalEvents(Event&); 648 virtual void handleLocalEvents(Event&);
647 649
648 void dispatchSubtreeModifiedEvent(); 650 void dispatchSubtreeModifiedEvent();
649 bool dispatchDOMActivateEvent(int detail, PassRefPtrWillBeRawPtr<Event> unde rlyingEvent); 651 bool dispatchDOMActivateEvent(int detail, PassRefPtrWillBeRawPtr<Event> unde rlyingEvent);
650 652
651 bool dispatchKeyEvent(const PlatformKeyboardEvent&); 653 bool dispatchKeyEvent(const PlatformKeyboardEvent&);
652 bool dispatchWheelEvent(const PlatformWheelEvent&); 654 bool dispatchWheelEvent(const PlatformWheelEvent&);
653 bool dispatchMouseEvent(const PlatformMouseEvent&, const AtomicString& event Type, int clickCount = 0, Node* relatedTarget = nullptr); 655 bool dispatchMouseEvent(const PlatformMouseEvent&, const AtomicString& event Type, int clickCount = 0, Node* relatedTarget = nullptr);
656 bool dispatchMouseEvent(PassRefPtrWillBeRawPtr<MouseEvent>);
654 bool dispatchGestureEvent(const PlatformGestureEvent&); 657 bool dispatchGestureEvent(const PlatformGestureEvent&);
655 bool dispatchTouchEvent(PassRefPtrWillBeRawPtr<TouchEvent>); 658 bool dispatchTouchEvent(PassRefPtrWillBeRawPtr<TouchEvent>);
656 659
657 void dispatchSimulatedClick(Event* underlyingEvent, SimulatedClickMouseEvent Options = SendNoEvents); 660 void dispatchSimulatedClick(Event* underlyingEvent, SimulatedClickMouseEvent Options = SendNoEvents);
658 661
659 void dispatchInputEvent(); 662 void dispatchInputEvent();
660 663
661 // Perform the default action for an event. 664 // Perform the default action for an event.
662 virtual void defaultEventHandler(Event*); 665 virtual void defaultEventHandler(Event*);
663 virtual void willCallDefaultEventHandler(const Event&); 666 virtual void willCallDefaultEventHandler(const Event&);
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
915 } // namespace blink 918 } // namespace blink
916 919
917 #ifndef NDEBUG 920 #ifndef NDEBUG
918 // Outside the WebCore namespace for ease of invocation from gdb. 921 // Outside the WebCore namespace for ease of invocation from gdb.
919 void showNode(const blink::Node*); 922 void showNode(const blink::Node*);
920 void showTree(const blink::Node*); 923 void showTree(const blink::Node*);
921 void showNodePath(const blink::Node*); 924 void showNodePath(const blink::Node*);
922 #endif 925 #endif
923 926
924 #endif // Node_h 927 #endif // Node_h
OLDNEW
« no previous file with comments | « LayoutTests/plugins/user-gesture-expected.txt ('k') | Source/core/dom/Node.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698