Backed out 2 changesets (bug 1926630) for causing macOS assertion failures. CLOSED...
[gecko.git] / gfx / layers / ipc / APZInputBridgeParent.h
blob62e6427bb5f66854d2bdfeed97df42fd042d864d
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef mozilla_layers_APZInputBridgeParent_h
8 #define mozilla_layers_APZInputBridgeParent_h
10 #include "mozilla/layers/PAPZInputBridgeParent.h"
12 namespace mozilla {
13 namespace layers {
15 class IAPZCTreeManager;
17 class APZInputBridgeParent : public PAPZInputBridgeParent {
18 NS_INLINE_DECL_REFCOUNTING(APZInputBridgeParent, final)
20 public:
21 static APZInputBridgeParent* Create(
22 const LayersId& aLayersId, Endpoint<PAPZInputBridgeParent>&& aEndpoint);
24 mozilla::ipc::IPCResult RecvReceiveMultiTouchInputEvent(
25 const MultiTouchInput& aEvent, bool aWantsCallback,
26 APZEventResult* aOutResult, MultiTouchInput* aOutEvent);
28 mozilla::ipc::IPCResult RecvReceiveMouseInputEvent(const MouseInput& aEvent,
29 bool aWantsCallback,
30 APZEventResult* aOutResult,
31 MouseInput* aOutEvent);
33 mozilla::ipc::IPCResult RecvReceivePanGestureInputEvent(
34 const PanGestureInput& aEvent, bool aWantsCallback,
35 APZEventResult* aOutResult, PanGestureInput* aOutEvent);
37 mozilla::ipc::IPCResult RecvReceivePinchGestureInputEvent(
38 const PinchGestureInput& aEvent, bool aWantsCallback,
39 APZEventResult* aOutResult, PinchGestureInput* aOutEvent);
41 mozilla::ipc::IPCResult RecvReceiveTapGestureInputEvent(
42 const TapGestureInput& aEvent, bool aWantsCallback,
43 APZEventResult* aOutResult, TapGestureInput* aOutEvent);
45 mozilla::ipc::IPCResult RecvReceiveScrollWheelInputEvent(
46 const ScrollWheelInput& aEvent, bool aWantsCallback,
47 APZEventResult* aOutResult, ScrollWheelInput* aOutEvent);
49 mozilla::ipc::IPCResult RecvReceiveKeyboardInputEvent(
50 const KeyboardInput& aEvent, bool aWantsCallback,
51 APZEventResult* aOutResult, KeyboardInput* aOutEvent);
53 mozilla::ipc::IPCResult RecvUpdateWheelTransaction(
54 const LayoutDeviceIntPoint& aRefPoint, const EventMessage& aEventMessage,
55 const Maybe<ScrollableLayerGuid>& aTargetGuid);
57 mozilla::ipc::IPCResult RecvProcessUnhandledEvent(
58 const LayoutDeviceIntPoint& aRefPoint, LayoutDeviceIntPoint* aOutRefPoint,
59 ScrollableLayerGuid* aOutTargetGuid, uint64_t* aOutFocusSequenceNumber,
60 LayersId* aOutLayersId);
62 void ActorDestroy(ActorDestroyReason aWhy) override;
64 protected:
65 explicit APZInputBridgeParent(const LayersId& aLayersId);
66 virtual ~APZInputBridgeParent();
68 private:
69 RefPtr<IAPZCTreeManager> mTreeManager;
70 LayersId mLayersId;
73 } // namespace layers
74 } // namespace mozilla
76 #endif // mozilla_layers_APZInputBridgeParent_h