Bug 1446851. Get rid of nsIDOMWheelEvent. r=qdot

We can't include WheelEventBinding.h in MouseEvents.h because that produces
this include loop:

WheelEventBinding.h -> MouseEventBinding.h -> UIEventBinding.h ->
nsGlobalWindow.h -> nsGlobalWindowInner.h -> nsRefreshDriver.h ->
AnimationEventDispatcher.h -> AnimationComparator.h -> Animation.h ->
EffectCompositor.h -> PseudoElementHashEntry.h -> Element.h ->
PointerEventHandler.h -> MouseEvents.h -> WheelEventBinding.h

MozReview-Commit-ID: 5KNwH69aJYW
This commit is contained in:
Boris Zbarsky 2018-03-20 00:16:05 -04:00
parent 2211e2da6f
commit 1a7c5067ca
18 changed files with 66 additions and 78 deletions

View File

@ -21,6 +21,7 @@
#include "mozilla/dom/TabChild.h"
#include "mozilla/dom/TabParent.h"
#include "mozilla/dom/UIEvent.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "ContentEventHandler.h"
#include "IMEContentObserver.h"
@ -57,7 +58,6 @@
#include "nsIDOMXULElement.h"
#include "nsIObserverService.h"
#include "nsIDocShell.h"
#include "nsIDOMWheelEvent.h"
#include "nsIDOMUIEvent.h"
#include "nsIMozBrowserFrame.h"
@ -2327,7 +2327,7 @@ EventStateManager::DispatchLegacyMouseScrollEvents(nsIFrame* aTargetFrame,
// rare cases.
int32_t scrollDeltaX, scrollDeltaY, pixelDeltaX, pixelDeltaY;
switch (aEvent->mDeltaMode) {
case nsIDOMWheelEvent::DOM_DELTA_PAGE:
case WheelEventBinding::DOM_DELTA_PAGE:
scrollDeltaX =
!aEvent->mLineOrPageDeltaX ? 0 :
(aEvent->mLineOrPageDeltaX > 0 ? nsIDOMUIEvent::SCROLL_PAGE_DOWN :
@ -2340,14 +2340,14 @@ EventStateManager::DispatchLegacyMouseScrollEvents(nsIFrame* aTargetFrame,
pixelDeltaY = RoundDown(aEvent->mDeltaY * scrollAmountInCSSPixels.height);
break;
case nsIDOMWheelEvent::DOM_DELTA_LINE:
case WheelEventBinding::DOM_DELTA_LINE:
scrollDeltaX = aEvent->mLineOrPageDeltaX;
scrollDeltaY = aEvent->mLineOrPageDeltaY;
pixelDeltaX = RoundDown(aEvent->mDeltaX * scrollAmountInCSSPixels.width);
pixelDeltaY = RoundDown(aEvent->mDeltaY * scrollAmountInCSSPixels.height);
break;
case nsIDOMWheelEvent::DOM_DELTA_PIXEL:
case WheelEventBinding::DOM_DELTA_PIXEL:
scrollDeltaX = aEvent->mLineOrPageDeltaX;
scrollDeltaY = aEvent->mLineOrPageDeltaY;
pixelDeltaX = RoundDown(aEvent->mDeltaX);
@ -2656,7 +2656,7 @@ EventStateManager::GetScrollAmount(nsPresContext* aPresContext,
MOZ_ASSERT(aPresContext);
MOZ_ASSERT(aEvent);
bool isPage = (aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PAGE);
bool isPage = (aEvent->mDeltaMode == WheelEventBinding::DOM_DELTA_PAGE);
if (aScrollableFrame) {
return isPage ? aScrollableFrame->GetPageScrollAmount() :
aScrollableFrame->GetLineScrollAmount();
@ -2716,15 +2716,15 @@ EventStateManager::DoScrollText(nsIScrollableFrame* aScrollableFrame,
nsIScrollbarMediator::ScrollSnapMode snapMode = nsIScrollbarMediator::DISABLE_SNAP;
nsAtom* origin = nullptr;
switch (aEvent->mDeltaMode) {
case nsIDOMWheelEvent::DOM_DELTA_LINE:
case WheelEventBinding::DOM_DELTA_LINE:
origin = nsGkAtoms::mouseWheel;
snapMode = nsIScrollableFrame::ENABLE_SNAP;
break;
case nsIDOMWheelEvent::DOM_DELTA_PAGE:
case WheelEventBinding::DOM_DELTA_PAGE:
origin = nsGkAtoms::pages;
snapMode = nsIScrollableFrame::ENABLE_SNAP;
break;
case nsIDOMWheelEvent::DOM_DELTA_PIXEL:
case WheelEventBinding::DOM_DELTA_PIXEL:
origin = nsGkAtoms::pixels;
break;
default:
@ -2751,7 +2751,7 @@ EventStateManager::DoScrollText(nsIScrollableFrame* aScrollableFrame,
}
bool isDeltaModePixel =
(aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PIXEL);
(aEvent->mDeltaMode == WheelEventBinding::DOM_DELTA_PIXEL);
nsIScrollableFrame::ScrollMode mode;
switch (aEvent->mScrollType) {
@ -5669,7 +5669,7 @@ EventStateManager::DeltaAccumulator::InitLineOrPageDelta(
mX += aEvent->mDeltaX;
mY += aEvent->mDeltaY;
if (mHandlingDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PIXEL) {
if (mHandlingDeltaMode == WheelEventBinding::DOM_DELTA_PIXEL) {
// Records pixel delta values and init mLineOrPageDeltaX and
// mLineOrPageDeltaY for wheel events which are caused by pixel only
// devices. Ignore mouse wheel transaction for computing this. The
@ -5723,12 +5723,12 @@ EventStateManager::DeltaAccumulator::ComputeScrollAmountForDefaultAction(
// system settings, allow to override the system speed.
bool allowScrollSpeedOverride =
(!aEvent->mCustomizedByUserPrefs &&
aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_LINE);
aEvent->mDeltaMode == WheelEventBinding::DOM_DELTA_LINE);
DeltaValues acceleratedDelta =
WheelTransaction::AccelerateWheelDelta(aEvent, allowScrollSpeedOverride);
nsIntPoint result(0, 0);
if (aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PIXEL) {
if (aEvent->mDeltaMode == WheelEventBinding::DOM_DELTA_PIXEL) {
mPendingScrollAmountX += acceleratedDelta.deltaX;
mPendingScrollAmountY += acceleratedDelta.deltaY;
} else {

View File

@ -25,7 +25,7 @@ WheelEvent::WheelEvent(EventTarget* aOwner,
// device pixels. However, JS contents need the delta values in CSS pixels.
// We should store the value of mAppUnitsPerDevPixel here because
// it might be changed by changing zoom or something.
if (aWheelEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PIXEL) {
if (aWheelEvent->mDeltaMode == WheelEventBinding::DOM_DELTA_PIXEL) {
mAppUnitsPerDevPixel = aPresContext->AppUnitsPerDevPixel();
}
} else {

View File

@ -10,6 +10,7 @@
#include "mozilla/EventStateManager.h"
#include "mozilla/MouseEvents.h"
#include "mozilla/Preferences.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "nsCOMPtr.h"
#include "nsContentUtils.h"
#include "nsIContent.h"
@ -381,7 +382,7 @@ WheelTransaction::AccelerateWheelDelta(WidgetWheelEvent* aEvent,
DeltaValues result(aEvent);
// Don't accelerate the delta values if the event isn't line scrolling.
if (aEvent->mDeltaMode != nsIDOMWheelEvent::DOM_DELTA_LINE) {
if (aEvent->mDeltaMode != dom::WheelEventBinding::DOM_DELTA_LINE) {
return result;
}
@ -412,7 +413,7 @@ WheelTransaction::ComputeAcceleratedWheelDelta(double aDelta, int32_t aFactor)
WheelTransaction::OverrideSystemScrollSpeed(WidgetWheelEvent* aEvent)
{
MOZ_ASSERT(sTargetFrame, "We don't have mouse scrolling transaction");
MOZ_ASSERT(aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_LINE);
MOZ_ASSERT(aEvent->mDeltaMode == WheelEventBinding::DOM_DELTA_LINE);
// If the event doesn't scroll to both X and Y, we don't need to do anything
// here.

View File

@ -15,6 +15,7 @@
#include "mozilla/dom/HTMLFormSubmission.h"
#include "mozilla/dom/FileSystemUtils.h"
#include "mozilla/dom/GetFilesHelper.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "nsAttrValueInlines.h"
#include "nsCRTGlue.h"
@ -4558,7 +4559,7 @@ HTMLInputElement::PostHandleEvent(EventChainPostVisitor& aVisitor)
if (!aVisitor.mEvent->DefaultPrevented() &&
aVisitor.mEvent->IsTrusted() && IsMutable() && wheelEvent &&
wheelEvent->mDeltaY != 0 &&
wheelEvent->mDeltaMode != nsIDOMWheelEvent::DOM_DELTA_PIXEL) {
wheelEvent->mDeltaMode != WheelEventBinding::DOM_DELTA_PIXEL) {
if (mType == NS_FORM_INPUT_NUMBER) {
nsNumberControlFrame* numberControlFrame =
do_QueryFrame(GetPrimaryFrame());

View File

@ -425,8 +425,8 @@ interface nsIDOMWindowUtils : nsISupports {
* @param aDeltaX deltaX value.
* @param aDeltaY deltaY value.
* @param aDeltaZ deltaZ value.
* @param aDeltaMode deltaMode value which must be one of
* nsIDOMWheelEvent::DOM_DELTA_*.
* @param aDeltaMode deltaMode value which must be one of the
* WheelEvent DOM_DELTA_* constants.
* @param aModifiers modifiers pressed, using constants defined as
* MODIFIER_*
* @param aLineOrPageDeltaX If you set this value non-zero for

View File

@ -16,7 +16,6 @@ XPIDL_SOURCES += [
'nsIDOMNotifyPaintEvent.idl',
'nsIDOMNSEvent.idl',
'nsIDOMUIEvent.idl',
'nsIDOMWheelEvent.idl',
]
XPIDL_MODULE = 'dom_events'

View File

@ -1,15 +0,0 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsIDOMMouseEvent.idl"
[builtinclass, uuid(d320d075-b29d-4edd-b3a3-3ffd460640de)]
interface nsIDOMWheelEvent : nsIDOMMouseEvent
{
const unsigned long DOM_DELTA_PIXEL = 0x00;
const unsigned long DOM_DELTA_LINE = 0x01;
const unsigned long DOM_DELTA_PAGE = 0x02;
};

View File

@ -55,6 +55,7 @@ using mozilla::DefaultXDisplay;
#include "mozilla/dom/Event.h"
#include "mozilla/dom/HTMLObjectElementBinding.h"
#include "mozilla/dom/TabChild.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "nsFrameSelection.h"
#include "PuppetWidget.h"
#include "nsPIWindowRoot.h"
@ -2109,11 +2110,11 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent(const WidgetGUIEvent& anEvent)
int32_t delta = 0;
if (wheelEvent->mLineOrPageDeltaY) {
switch (wheelEvent->mDeltaMode) {
case nsIDOMWheelEvent::DOM_DELTA_PAGE:
case WheelEventBinding::DOM_DELTA_PAGE:
pluginEvent.event = WM_MOUSEWHEEL;
delta = -WHEEL_DELTA * wheelEvent->mLineOrPageDeltaY;
break;
case nsIDOMWheelEvent::DOM_DELTA_LINE: {
case WheelEventBinding::DOM_DELTA_LINE: {
UINT linesPerWheelDelta = 0;
if (NS_WARN_IF(!::SystemParametersInfo(SPI_GETWHEELSCROLLLINES, 0,
&linesPerWheelDelta, 0))) {
@ -2129,7 +2130,7 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent(const WidgetGUIEvent& anEvent)
delta *= wheelEvent->mLineOrPageDeltaY;
break;
}
case nsIDOMWheelEvent::DOM_DELTA_PIXEL:
case WheelEventBinding::DOM_DELTA_PIXEL:
default:
// We don't support WM_GESTURE with this path.
MOZ_ASSERT(!pluginEvent.event);
@ -2137,11 +2138,11 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent(const WidgetGUIEvent& anEvent)
}
} else if (wheelEvent->mLineOrPageDeltaX) {
switch (wheelEvent->mDeltaMode) {
case nsIDOMWheelEvent::DOM_DELTA_PAGE:
case WheelEventBinding::DOM_DELTA_PAGE:
pluginEvent.event = WM_MOUSEHWHEEL;
delta = -WHEEL_DELTA * wheelEvent->mLineOrPageDeltaX;
break;
case nsIDOMWheelEvent::DOM_DELTA_LINE: {
case WheelEventBinding::DOM_DELTA_LINE: {
pluginEvent.event = WM_MOUSEHWHEEL;
UINT charsPerWheelDelta = 0;
// FYI: SPI_GETWHEELSCROLLCHARS is available on Vista or later.
@ -2158,7 +2159,7 @@ nsEventStatus nsPluginInstanceOwner::ProcessEvent(const WidgetGUIEvent& anEvent)
delta *= wheelEvent->mLineOrPageDeltaX;
break;
}
case nsIDOMWheelEvent::DOM_DELTA_PIXEL:
case WheelEventBinding::DOM_DELTA_PIXEL:
default:
// We don't support WM_GESTURE with this path.
MOZ_ASSERT(!pluginEvent.event);

View File

@ -14,6 +14,7 @@
#include "mozilla/TextEvents.h" // for WidgetKeyboardEvent
#include "mozilla/TouchEvents.h" // for WidgetTouchEvent
#include "mozilla/WheelHandlingHelper.h" // for AutoWheelDeltaAdjuster
#include "mozilla/dom/WheelEventBinding.h" // for WheelEvent constants
namespace mozilla {
namespace layers {
@ -32,9 +33,9 @@ WillHandleMouseEvent(const WidgetMouseEventBase& aEvent)
APZInputBridge::WillHandleWheelEvent(WidgetWheelEvent* aEvent)
{
return EventStateManager::WheelEventIsScrollAction(aEvent) &&
(aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_LINE ||
aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PIXEL ||
aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PAGE);
(aEvent->mDeltaMode == dom::WheelEventBinding::DOM_DELTA_LINE ||
aEvent->mDeltaMode == dom::WheelEventBinding::DOM_DELTA_PIXEL ||
aEvent->mDeltaMode == dom::WheelEventBinding::DOM_DELTA_PAGE);
}
nsEventStatus
@ -107,9 +108,9 @@ APZInputBridge::ReceiveInputEvent(
ScrollWheelInput::ScrollMode scrollMode = ScrollWheelInput::SCROLLMODE_INSTANT;
if (gfxPrefs::SmoothScrollEnabled() &&
((wheelEvent.mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_LINE &&
((wheelEvent.mDeltaMode == dom::WheelEventBinding::DOM_DELTA_LINE &&
gfxPrefs::WheelSmoothScrollEnabled()) ||
(wheelEvent.mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PAGE &&
(wheelEvent.mDeltaMode == dom::WheelEventBinding::DOM_DELTA_PAGE &&
gfxPrefs::PageSmoothScrollEnabled())))
{
scrollMode = ScrollWheelInput::SCROLLMODE_SMOOTH;

View File

@ -6,6 +6,7 @@
#include "InputData.h"
#include "mozilla/dom/Touch.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "mozilla/TextEvents.h"
#include "nsContentUtils.h"
#include "nsDebug.h"
@ -544,7 +545,7 @@ PanGestureInput::ToWidgetWheelEvent(nsIWidget* aWidget) const
RoundedToInt(ViewAs<LayoutDevicePixel>(mPanStartPoint,
PixelCastJustification::LayoutDeviceIsScreenForUntransformedEvent));
wheelEvent.buttons = 0;
wheelEvent.mDeltaMode = nsIDOMWheelEvent::DOM_DELTA_PIXEL;
wheelEvent.mDeltaMode = WheelEventBinding::DOM_DELTA_PIXEL;
wheelEvent.mMayHaveMomentum = true; // pan inputs may have momentum
wheelEvent.mIsMomentum = IsMomentum();
wheelEvent.mLineOrPageDeltaX = mLineOrPageDeltaX;
@ -717,11 +718,11 @@ ScrollWheelInput::ScrollDeltaType
ScrollWheelInput::DeltaTypeForDeltaMode(uint32_t aDeltaMode)
{
switch (aDeltaMode) {
case nsIDOMWheelEvent::DOM_DELTA_LINE:
case WheelEventBinding::DOM_DELTA_LINE:
return SCROLLDELTA_LINE;
case nsIDOMWheelEvent::DOM_DELTA_PAGE:
case WheelEventBinding::DOM_DELTA_PAGE:
return SCROLLDELTA_PAGE;
case nsIDOMWheelEvent::DOM_DELTA_PIXEL:
case WheelEventBinding::DOM_DELTA_PIXEL:
return SCROLLDELTA_PIXEL;
default:
MOZ_CRASH();
@ -734,12 +735,12 @@ ScrollWheelInput::DeltaModeForDeltaType(ScrollDeltaType aDeltaType)
{
switch (aDeltaType) {
case ScrollWheelInput::SCROLLDELTA_LINE:
return nsIDOMWheelEvent::DOM_DELTA_LINE;
return WheelEventBinding::DOM_DELTA_LINE;
case ScrollWheelInput::SCROLLDELTA_PAGE:
return nsIDOMWheelEvent::DOM_DELTA_PAGE;
return WheelEventBinding::DOM_DELTA_PAGE;
case ScrollWheelInput::SCROLLDELTA_PIXEL:
default:
return nsIDOMWheelEvent::DOM_DELTA_PIXEL;
return WheelEventBinding::DOM_DELTA_PIXEL;
}
}

View File

@ -7,7 +7,6 @@
#define InputData_h__
#include "nsDebug.h"
#include "nsIDOMWheelEvent.h"
#include "nsIScrollableFrame.h"
#include "nsPoint.h"
#include "nsTArray.h"

View File

@ -13,7 +13,6 @@
#include "mozilla/dom/DataTransfer.h"
#include "nsCOMPtr.h"
#include "nsIDOMMouseEvent.h"
#include "nsIDOMWheelEvent.h"
/******************************************************************************
* nsDragDropEventStatus
@ -503,7 +502,9 @@ private:
, mDeltaZ(0.0)
, mOverflowDeltaX(0.0)
, mOverflowDeltaY(0.0)
, mDeltaMode(nsIDOMWheelEvent::DOM_DELTA_PIXEL)
// Including WheelEventBinding.h here leads to an include loop, so
// we have to hardcode WheelEventBinding::DOM_DELTA_PIXEL.
, mDeltaMode(/* WheelEventBinding::DOM_DELTA_PIXEL = */ 0)
, mLineOrPageDeltaX(0)
, mLineOrPageDeltaY(0)
, mScrollType(SCROLL_DEFAULT)
@ -527,7 +528,9 @@ public:
, mDeltaZ(0.0)
, mOverflowDeltaX(0.0)
, mOverflowDeltaY(0.0)
, mDeltaMode(nsIDOMWheelEvent::DOM_DELTA_PIXEL)
// Including WheelEventBinding.h here leads to an include loop, so
// we have to hardcode WheelEventBinding::DOM_DELTA_PIXEL.
, mDeltaMode(/* WheelEventBinding::DOM_DELTA_PIXEL = */ 0)
, mLineOrPageDeltaX(0)
, mLineOrPageDeltaY(0)
, mScrollType(SCROLL_DEFAULT)
@ -583,7 +586,7 @@ public:
double mOverflowDeltaX;
double mOverflowDeltaY;
// Should be one of nsIDOMWheelEvent::DOM_DELTA_*
// Should be one of WheelEventBinding::DOM_DELTA_*
uint32_t mDeltaMode;
// If widget sets mLineOrPageDelta, EventStateManager will dispatch

View File

@ -19,6 +19,7 @@
#include "mozilla/TouchEvents.h"
#include "mozilla/dom/DataTransfer.h"
#include "mozilla/dom/SimpleGestureEventBinding.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "nsArrayUtils.h"
#include "nsExceptionHandler.h"
@ -95,7 +96,6 @@
#include "GeckoProfiler.h"
#include "nsIDOMWheelEvent.h"
#include "mozilla/layers/ChromeProcessController.h"
#include "nsLayoutUtils.h"
#include "InputData.h"
@ -5220,8 +5220,8 @@ GetIntegerDeltaForEvent(NSEvent* aEvent)
Preferences::GetBool("mousewheel.enable_pixel_scrolling", true);
outWheelEvent->mDeltaMode =
usePreciseDeltas ? nsIDOMWheelEvent::DOM_DELTA_PIXEL
: nsIDOMWheelEvent::DOM_DELTA_LINE;
usePreciseDeltas ? dom::WheelEventBinding::DOM_DELTA_PIXEL
: dom::WheelEventBinding::DOM_DELTA_LINE;
outWheelEvent->mIsMomentum = nsCocoaUtils::IsMomentumScrollEvent(aMouseEvent);
}

View File

@ -18,6 +18,7 @@
#include "mozilla/TouchEvents.h"
#include "mozilla/UniquePtrExtensions.h"
#include "mozilla/WidgetUtils.h"
#include "mozilla/dom/WheelEventBinding.h"
#include <algorithm>
#include "GeckoProfiler.h"
@ -129,8 +130,6 @@ using namespace mozilla::widget;
#include "nsShmImage.h"
#include "nsIDOMWheelEvent.h"
#include "NativeKeyBindings.h"
#include <dlfcn.h>
@ -3223,7 +3222,7 @@ nsWindow::OnScrollEvent(GdkEventScroll *aEvent)
return;
#endif
WidgetWheelEvent wheelEvent(true, eWheel, this);
wheelEvent.mDeltaMode = nsIDOMWheelEvent::DOM_DELTA_LINE;
wheelEvent.mDeltaMode = dom::WheelEventBinding::DOM_DELTA_LINE;
switch (aEvent->direction) {
#if GTK_CHECK_VERSION(3,4,0)
case GDK_SCROLL_SMOOTH:

View File

@ -10,6 +10,7 @@
#include "mozilla/widget/InProcessCompositorWidget.h"
#include "nsBaseWidget.h"
#include "CompositorWidget.h"
#include "mozilla/dom/WheelEventBinding.h"
// The various synthesized event values are hardcoded to avoid pulling
// in the platform specific widget code.
@ -18,25 +19,25 @@
#define MOZ_HEADLESS_MOUSE_DOWN 4 // GDK_BUTTON_PRESS
#define MOZ_HEADLESS_MOUSE_UP 7 // GDK_BUTTON_RELEASE
#define MOZ_HEADLESS_SCROLL_MULTIPLIER 3
#define MOZ_HEADLESS_SCROLL_DELTA_MODE nsIDOMWheelEvent::DOM_DELTA_LINE
#define MOZ_HEADLESS_SCROLL_DELTA_MODE mozilla::dom::WheelEventBinding::DOM_DELTA_LINE
#elif defined(XP_WIN)
#define MOZ_HEADLESS_MOUSE_MOVE 1 // MOUSEEVENTF_MOVE
#define MOZ_HEADLESS_MOUSE_DOWN 2 // MOUSEEVENTF_LEFTDOWN
#define MOZ_HEADLESS_MOUSE_UP 4 // MOUSEEVENTF_LEFTUP
#define MOZ_HEADLESS_SCROLL_MULTIPLIER .025 // default scroll lines (3) / WHEEL_DELTA (120)
#define MOZ_HEADLESS_SCROLL_DELTA_MODE nsIDOMWheelEvent::DOM_DELTA_LINE
#define MOZ_HEADLESS_SCROLL_DELTA_MODE mozilla::dom::WheelEventBinding::DOM_DELTA_LINE
#elif defined(XP_MACOSX)
#define MOZ_HEADLESS_MOUSE_MOVE 5 // NSMouseMoved
#define MOZ_HEADLESS_MOUSE_DOWN 1 // NSLeftMouseDown
#define MOZ_HEADLESS_MOUSE_UP 2 // NSLeftMouseUp
#define MOZ_HEADLESS_SCROLL_MULTIPLIER 1
#define MOZ_HEADLESS_SCROLL_DELTA_MODE nsIDOMWheelEvent::DOM_DELTA_PIXEL
#define MOZ_HEADLESS_SCROLL_DELTA_MODE mozilla::dom::WheelEventBinding::DOM_DELTA_PIXEL
#elif defined(ANDROID)
#define MOZ_HEADLESS_MOUSE_MOVE 7 // ACTION_HOVER_MOVE
#define MOZ_HEADLESS_MOUSE_DOWN 5 // ACTION_POINTER_DOWN
#define MOZ_HEADLESS_MOUSE_UP 6 // ACTION_POINTER_UP
#define MOZ_HEADLESS_SCROLL_MULTIPLIER 1
#define MOZ_HEADLESS_SCROLL_DELTA_MODE nsIDOMWheelEvent::DOM_DELTA_LINE
#define MOZ_HEADLESS_SCROLL_DELTA_MODE mozilla::dom::WheelEventBinding::DOM_DELTA_LINE
#else
#define MOZ_HEADLESS_MOUSE_MOVE -1
#define MOZ_HEADLESS_MOUSE_DOWN -1

View File

@ -15,11 +15,11 @@
#include "WinUtils.h"
#include "nsGkAtoms.h"
#include "nsIDOMWindowUtils.h"
#include "nsIDOMWheelEvent.h"
#include "mozilla/MiscEvents.h"
#include "mozilla/MouseEvents.h"
#include "mozilla/Preferences.h"
#include "mozilla/dom/WheelEventBinding.h"
#include <psapi.h>
@ -693,14 +693,14 @@ MouseScrollHandler::HandleScrollMessageAsMouseWheelMessage(nsWindowBase* aWidget
delta = -1.0;
lineOrPageDelta = -1;
case SB_PAGEDOWN:
wheelEvent.mDeltaMode = nsIDOMWheelEvent::DOM_DELTA_PAGE;
wheelEvent.mDeltaMode = dom::WheelEventBinding::DOM_DELTA_PAGE;
break;
case SB_LINEUP:
delta = -1.0;
lineOrPageDelta = -1;
case SB_LINEDOWN:
wheelEvent.mDeltaMode = nsIDOMWheelEvent::DOM_DELTA_LINE;
wheelEvent.mDeltaMode = dom::WheelEventBinding::DOM_DELTA_LINE;
break;
default:
@ -849,8 +849,8 @@ MouseScrollHandler::LastEventInfo::InitWheelEvent(
// Use orienter for computing our delta value with native delta value.
int32_t orienter = mIsVertical ? -1 : 1;
aWheelEvent.mDeltaMode = mIsPage ? nsIDOMWheelEvent::DOM_DELTA_PAGE :
nsIDOMWheelEvent::DOM_DELTA_LINE;
aWheelEvent.mDeltaMode = mIsPage ? dom::WheelEventBinding::DOM_DELTA_PAGE :
dom::WheelEventBinding::DOM_DELTA_LINE;
double& delta = mIsVertical ? aWheelEvent.mDeltaY : aWheelEvent.mDeltaX;
int32_t& lineOrPageDelta = mIsVertical ? aWheelEvent.mLineOrPageDeltaY :
@ -867,7 +867,7 @@ MouseScrollHandler::LastEventInfo::InitWheelEvent(
mAccumulatedDelta -=
lineOrPageDelta * orienter * RoundDelta(nativeDeltaPerUnit);
if (aWheelEvent.mDeltaMode != nsIDOMWheelEvent::DOM_DELTA_LINE) {
if (aWheelEvent.mDeltaMode != dom::WheelEventBinding::DOM_DELTA_LINE) {
// If the scroll delta mode isn't per line scroll, we shouldn't allow to
// override the system scroll speed setting.
aWheelEvent.mAllowToOverrideSystemScrollSpeed = false;

View File

@ -10,12 +10,12 @@
#include "nscore.h"
#include "nsWinGesture.h"
#include "nsUXThemeData.h"
#include "nsIDOMWheelEvent.h"
#include "mozilla/Logging.h"
#include "mozilla/MouseEvents.h"
#include "mozilla/Preferences.h"
#include "mozilla/TouchEvents.h"
#include "mozilla/dom/SimpleGestureEventBinding.h"
#include "mozilla/dom/WheelEventBinding.h"
#include <cmath>
@ -399,7 +399,7 @@ nsWinGesture::PanDeltaToPixelScroll(WidgetWheelEvent& aWheelEvent)
aWheelEvent.mLineOrPageDeltaX = aWheelEvent.mLineOrPageDeltaY = 0;
aWheelEvent.mRefPoint = LayoutDeviceIntPoint(mPanRefPoint.x, mPanRefPoint.y);
aWheelEvent.mDeltaMode = nsIDOMWheelEvent::DOM_DELTA_PIXEL;
aWheelEvent.mDeltaMode = dom::WheelEventBinding::DOM_DELTA_PIXEL;
aWheelEvent.mScrollType = WidgetWheelEvent::SCROLL_SYNCHRONOUSLY;
aWheelEvent.mIsNoLineOrPageDelta = true;

View File

@ -32,7 +32,6 @@
#include "nsIDOMScreen.h"
#include "nsIDOMSerializer.h"
#include "nsIDOMUIEvent.h"
#include "nsIDOMWheelEvent.h"
#include "nsIDOMXMLDocument.h"
#include "nsIDOMXULElement.h"
#include "nsIFrameLoader.h"
@ -86,7 +85,6 @@
#include "mozilla/dom/TimeEventBinding.h"
#include "mozilla/dom/TreeBoxObjectBinding.h"
#include "mozilla/dom/UIEventBinding.h"
#include "mozilla/dom/WheelEventBinding.h"
#include "mozilla/dom/XMLDocumentBinding.h"
#include "mozilla/dom/XMLSerializerBinding.h"
#include "mozilla/dom/XULDocumentBinding.h"
@ -176,7 +174,6 @@ const ComponentsInterfaceShimEntry kComponentsInterfaceShimMap[] =
DEFINE_SHIM_WITH_CUSTOM_INTERFACE(nsITreeBoxObject, TreeBoxObject),
DEFINE_SHIM(UIEvent),
DEFINE_SHIM_WITH_CUSTOM_INTERFACE(nsIWebBrowserPersistable, FrameLoader),
DEFINE_SHIM(WheelEvent),
DEFINE_SHIM(XMLDocument),
DEFINE_SHIM(XULElement),
DEFINE_SHIM_WITH_CUSTOM_INTERFACE(nsISelection, Selection),