| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv
ed. | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv
ed. |
| 3 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 3 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
| 4 * Copyright (C) 2012 Digia Plc. and/or its subsidiary(-ies) | 4 * Copyright (C) 2012 Digia Plc. and/or its subsidiary(-ies) |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 #include "core/page/EditorClient.h" | 72 #include "core/page/EditorClient.h" |
| 73 #include "core/page/FocusController.h" | 73 #include "core/page/FocusController.h" |
| 74 #include "core/page/FrameTree.h" | 74 #include "core/page/FrameTree.h" |
| 75 #include "core/page/Page.h" | 75 #include "core/page/Page.h" |
| 76 #include "core/page/SpatialNavigation.h" | 76 #include "core/page/SpatialNavigation.h" |
| 77 #include "core/page/TouchAdjustment.h" | 77 #include "core/page/TouchAdjustment.h" |
| 78 #include "core/rendering/HitTestRequest.h" | 78 #include "core/rendering/HitTestRequest.h" |
| 79 #include "core/rendering/HitTestResult.h" | 79 #include "core/rendering/HitTestResult.h" |
| 80 #include "core/rendering/RenderFlowThread.h" | 80 #include "core/rendering/RenderFlowThread.h" |
| 81 #include "core/rendering/RenderLayer.h" | 81 #include "core/rendering/RenderLayer.h" |
| 82 #include "core/rendering/RenderPart.h" |
| 82 #include "core/rendering/RenderTextControlSingleLine.h" | 83 #include "core/rendering/RenderTextControlSingleLine.h" |
| 83 #include "core/rendering/RenderView.h" | 84 #include "core/rendering/RenderView.h" |
| 84 #include "core/rendering/RenderWidget.h" | |
| 85 #include "core/rendering/style/RenderStyle.h" | 85 #include "core/rendering/style/RenderStyle.h" |
| 86 #include "core/svg/SVGDocumentExtensions.h" | 86 #include "core/svg/SVGDocumentExtensions.h" |
| 87 #include "platform/PlatformGestureEvent.h" | 87 #include "platform/PlatformGestureEvent.h" |
| 88 #include "platform/PlatformKeyboardEvent.h" | 88 #include "platform/PlatformKeyboardEvent.h" |
| 89 #include "platform/PlatformTouchEvent.h" | 89 #include "platform/PlatformTouchEvent.h" |
| 90 #include "platform/PlatformWheelEvent.h" | 90 #include "platform/PlatformWheelEvent.h" |
| 91 #include "platform/RuntimeEnabledFeatures.h" | 91 #include "platform/RuntimeEnabledFeatures.h" |
| 92 #include "platform/TraceEvent.h" | 92 #include "platform/TraceEvent.h" |
| 93 #include "platform/WindowsKeyboardCodes.h" | 93 #include "platform/WindowsKeyboardCodes.h" |
| 94 #include "platform/geometry/FloatPoint.h" | 94 #include "platform/geometry/FloatPoint.h" |
| (...skipping 848 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 943 { | 943 { |
| 944 return m_lastKnownMousePosition; | 944 return m_lastKnownMousePosition; |
| 945 } | 945 } |
| 946 | 946 |
| 947 static LocalFrame* subframeForTargetNode(Node* node) | 947 static LocalFrame* subframeForTargetNode(Node* node) |
| 948 { | 948 { |
| 949 if (!node) | 949 if (!node) |
| 950 return 0; | 950 return 0; |
| 951 | 951 |
| 952 RenderObject* renderer = node->renderer(); | 952 RenderObject* renderer = node->renderer(); |
| 953 if (!renderer || !renderer->isWidget()) | 953 if (!renderer || !renderer->isRenderPart()) |
| 954 return 0; | 954 return 0; |
| 955 | 955 |
| 956 // FIXME: This explicit check is needed only until RemoteFrames have RemoteF
rameViews. | 956 // FIXME: This explicit check is needed only until RemoteFrames have RemoteF
rameViews. |
| 957 if (isHTMLFrameElementBase(node) && toHTMLFrameElementBase(node)->contentFra
me() && toHTMLFrameElementBase(node)->contentFrame()->isRemoteFrameTemporary()) | 957 if (isHTMLFrameElementBase(node) && toHTMLFrameElementBase(node)->contentFra
me() && toHTMLFrameElementBase(node)->contentFrame()->isRemoteFrameTemporary()) |
| 958 return 0; | 958 return 0; |
| 959 | 959 |
| 960 Widget* widget = toRenderWidget(renderer)->widget(); | 960 Widget* widget = toRenderPart(renderer)->widget(); |
| 961 if (!widget || !widget->isFrameView()) | 961 if (!widget || !widget->isFrameView()) |
| 962 return 0; | 962 return 0; |
| 963 | 963 |
| 964 return &toFrameView(widget)->frame(); | 964 return &toFrameView(widget)->frame(); |
| 965 } | 965 } |
| 966 | 966 |
| 967 static LocalFrame* subframeForHitTestResult(const MouseEventWithHitTestResults&
hitTestResult) | 967 static LocalFrame* subframeForHitTestResult(const MouseEventWithHitTestResults&
hitTestResult) |
| 968 { | 968 { |
| 969 if (!hitTestResult.isOverWidget()) | 969 if (!hitTestResult.isOverWidget()) |
| 970 return 0; | 970 return 0; |
| (...skipping 1013 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1984 if (m_previousWheelScrolledNode) | 1984 if (m_previousWheelScrolledNode) |
| 1985 m_previousWheelScrolledNode = nullptr; | 1985 m_previousWheelScrolledNode = nullptr; |
| 1986 | 1986 |
| 1987 isOverWidget = result.isOverWidget(); | 1987 isOverWidget = result.isOverWidget(); |
| 1988 } | 1988 } |
| 1989 | 1989 |
| 1990 if (node) { | 1990 if (node) { |
| 1991 // Figure out which view to send the event to. | 1991 // Figure out which view to send the event to. |
| 1992 RenderObject* target = node->renderer(); | 1992 RenderObject* target = node->renderer(); |
| 1993 | 1993 |
| 1994 if (isOverWidget && target && target->isWidget()) { | 1994 if (isOverWidget && target && target->isRenderPart()) { |
| 1995 Widget* widget = toRenderWidget(target)->widget(); | 1995 Widget* widget = toRenderPart(target)->widget(); |
| 1996 if (widget && passWheelEventToWidget(event, widget)) | 1996 if (widget && passWheelEventToWidget(event, widget)) |
| 1997 RETURN_WHEEL_EVENT_HANDLED(); | 1997 RETURN_WHEEL_EVENT_HANDLED(); |
| 1998 } | 1998 } |
| 1999 | 1999 |
| 2000 if (node && !node->dispatchWheelEvent(event)) | 2000 if (node && !node->dispatchWheelEvent(event)) |
| 2001 RETURN_WHEEL_EVENT_HANDLED(); | 2001 RETURN_WHEEL_EVENT_HANDLED(); |
| 2002 } | 2002 } |
| 2003 | 2003 |
| 2004 // We do another check on the frame view because the event handler can run J
S which results in the frame getting destroyed. | 2004 // We do another check on the frame view because the event handler can run J
S which results in the frame getting destroyed. |
| 2005 view = m_frame->view(); | 2005 view = m_frame->view(); |
| (...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2367 return false; | 2367 return false; |
| 2368 } | 2368 } |
| 2369 | 2369 |
| 2370 bool EventHandler::passScrollGestureEventToWidget(const PlatformGestureEvent& ge
stureEvent, RenderObject* renderer) | 2370 bool EventHandler::passScrollGestureEventToWidget(const PlatformGestureEvent& ge
stureEvent, RenderObject* renderer) |
| 2371 { | 2371 { |
| 2372 ASSERT(gestureEvent.isScrollEvent()); | 2372 ASSERT(gestureEvent.isScrollEvent()); |
| 2373 | 2373 |
| 2374 if (!m_lastGestureScrollOverWidget) | 2374 if (!m_lastGestureScrollOverWidget) |
| 2375 return false; | 2375 return false; |
| 2376 | 2376 |
| 2377 if (!renderer || !renderer->isWidget()) | 2377 if (!renderer || !renderer->isRenderPart()) |
| 2378 return false; | 2378 return false; |
| 2379 | 2379 |
| 2380 Widget* widget = toRenderWidget(renderer)->widget(); | 2380 Widget* widget = toRenderPart(renderer)->widget(); |
| 2381 | 2381 |
| 2382 if (!widget || !widget->isFrameView()) | 2382 if (!widget || !widget->isFrameView()) |
| 2383 return false; | 2383 return false; |
| 2384 | 2384 |
| 2385 return toFrameView(widget)->frame().eventHandler().handleGestureScrollEvent(
gestureEvent); | 2385 return toFrameView(widget)->frame().eventHandler().handleGestureScrollEvent(
gestureEvent); |
| 2386 } | 2386 } |
| 2387 | 2387 |
| 2388 bool EventHandler::handleGestureScrollEnd(const PlatformGestureEvent& gestureEve
nt) { | 2388 bool EventHandler::handleGestureScrollEnd(const PlatformGestureEvent& gestureEve
nt) { |
| 2389 RefPtrWillBeRawPtr<Node> node = m_scrollGestureHandlingNode; | 2389 RefPtrWillBeRawPtr<Node> node = m_scrollGestureHandlingNode; |
| 2390 clearGestureScrollNodes(); | 2390 clearGestureScrollNodes(); |
| (...skipping 1455 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3846 // the event via an EventTargetNode dispatch when this returns false. | 3846 // the event via an EventTargetNode dispatch when this returns false. |
| 3847 if (!widget->isFrameView()) | 3847 if (!widget->isFrameView()) |
| 3848 return false; | 3848 return false; |
| 3849 | 3849 |
| 3850 return toFrameView(widget)->frame().eventHandler().handleWheelEvent(wheelEve
nt); | 3850 return toFrameView(widget)->frame().eventHandler().handleWheelEvent(wheelEve
nt); |
| 3851 } | 3851 } |
| 3852 | 3852 |
| 3853 bool EventHandler::passWidgetMouseDownEventToWidget(const MouseEventWithHitTestR
esults& event) | 3853 bool EventHandler::passWidgetMouseDownEventToWidget(const MouseEventWithHitTestR
esults& event) |
| 3854 { | 3854 { |
| 3855 // Figure out which view to send the event to. | 3855 // Figure out which view to send the event to. |
| 3856 if (!event.innerNode() || !event.innerNode()->renderer() || !event.innerNode
()->renderer()->isWidget()) | 3856 if (!event.innerNode() || !event.innerNode()->renderer() || !event.innerNode
()->renderer()->isRenderPart()) |
| 3857 return false; | 3857 return false; |
| 3858 return false; | 3858 return false; |
| 3859 } | 3859 } |
| 3860 | 3860 |
| 3861 PassRefPtrWillBeRawPtr<DataTransfer> EventHandler::createDraggingDataTransfer()
const | 3861 PassRefPtrWillBeRawPtr<DataTransfer> EventHandler::createDraggingDataTransfer()
const |
| 3862 { | 3862 { |
| 3863 return DataTransfer::create(DataTransfer::DragAndDrop, DataTransferWritable,
DataObject::create()); | 3863 return DataTransfer::create(DataTransfer::DragAndDrop, DataTransferWritable,
DataObject::create()); |
| 3864 } | 3864 } |
| 3865 | 3865 |
| 3866 void EventHandler::focusDocumentView() | 3866 void EventHandler::focusDocumentView() |
| 3867 { | 3867 { |
| 3868 Page* page = m_frame->page(); | 3868 Page* page = m_frame->page(); |
| 3869 if (!page) | 3869 if (!page) |
| 3870 return; | 3870 return; |
| 3871 page->focusController().focusDocumentView(m_frame); | 3871 page->focusController().focusDocumentView(m_frame); |
| 3872 } | 3872 } |
| 3873 | 3873 |
| 3874 unsigned EventHandler::accessKeyModifiers() | 3874 unsigned EventHandler::accessKeyModifiers() |
| 3875 { | 3875 { |
| 3876 #if OS(MACOSX) | 3876 #if OS(MACOSX) |
| 3877 return PlatformEvent::CtrlKey | PlatformEvent::AltKey; | 3877 return PlatformEvent::CtrlKey | PlatformEvent::AltKey; |
| 3878 #else | 3878 #else |
| 3879 return PlatformEvent::AltKey; | 3879 return PlatformEvent::AltKey; |
| 3880 #endif | 3880 #endif |
| 3881 } | 3881 } |
| 3882 | 3882 |
| 3883 } // namespace blink | 3883 } // namespace blink |
| OLD | NEW |