Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  PAPZInputBridge.ipdl   Sprache: unbekannt

 
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* 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 "ipc/nsGUIEventIPC.h";

using mozilla::LayoutDeviceIntPoint from "Units.h";
using mozilla::LayoutDevicePoint from "Units.h";
using mozilla::layers::GeckoContentController_TapType from "mozilla/layers/GeckoContentControllerTypes.h";
using mozilla::layers::DoubleTapToZoomMetrics from "mozilla/layers/DoubleTapToZoom.h";
using struct mozilla::layers::ScrollableLayerGuid from "mozilla/layers/ScrollableLayerGuid.h";
using struct mozilla::layers::APZEventResult from "mozilla/layers/APZInputBridge.h";
using struct mozilla::layers::APZHandledResult from "mozilla/layers/APZInputBridge.h";

using mozilla::EventMessage from "mozilla/EventForwards.h";
using mozilla::Modifiers from "mozilla/EventForwards.h";
using class mozilla::MultiTouchInput from "InputData.h";
using class mozilla::MouseInput from "InputData.h";
using class mozilla::PanGestureInput from "InputData.h";
using class mozilla::PinchGestureInput from "InputData.h";
using class mozilla::TapGestureInput from "InputData.h";
using class mozilla::ScrollWheelInput from "InputData.h";
using class mozilla::KeyboardInput from "InputData.h";

using mozilla::layers::LayersId from "mozilla/layers/LayersTypes.h";

namespace mozilla {
namespace layers {

/**
 * This protocol is used to send input events from the UI process to the
 * GPU process for handling by APZ. There is one instance per top-level
 * compositor, or in other words, one instance per concrete APZCTreeManager
 * instance. The child side lives on the controller thread in the UI process,
 * ie the main thread on most platforms, but the Android UI thread on Android.
 * The parent side lives on the main thread in the GPU process. If there is no
 * GPU process, then this protocol is not instantiated.
 */
[ParentProc=GPU, ChildProc=Parent]
sync protocol PAPZInputBridge
{
parent:
  // The following messages are used to
  // implement the ReceiveInputEvent methods

  sync ReceiveMultiTouchInputEvent(MultiTouchInput aEvent, bool aWantsCallback)
      returns(APZEventResult aOutResult, MultiTouchInput aOutEvent);

  sync ReceiveMouseInputEvent(MouseInput aEvent, bool aWantsCallback)
    returns (APZEventResult aOutResult,
             MouseInput     aOutEvent);

  sync ReceivePanGestureInputEvent(PanGestureInput aEvent, bool aWantsCallback)
    returns (APZEventResult  aOutResult,
             PanGestureInput aOutEvent);

  sync ReceivePinchGestureInputEvent(PinchGestureInput aEvent,
                                     bool aWantsCallback)
    returns (APZEventResult    aOutResult,
             PinchGestureInput aOutEvent);

  sync ReceiveTapGestureInputEvent(TapGestureInput aEvent, bool aWantsCallback)
    returns (APZEventResult  aOutResult,
             TapGestureInput aOutEvent);

  sync ReceiveScrollWheelInputEvent(ScrollWheelInput aEvent,
                                    bool aWantsCallback)
    returns (APZEventResult   aOutResult,
             ScrollWheelInput aOutEvent);

  sync ReceiveKeyboardInputEvent(KeyboardInput aEvent, bool aWantsCallback)
    returns (APZEventResult aOutResult,
             KeyboardInput  aOutEvent);

  async UpdateWheelTransaction(LayoutDeviceIntPoint aRefPoint,
                               EventMessage aEventMessage,
                               ScrollableLayerGuid? aTargetGuid);

  sync ProcessUnhandledEvent(LayoutDeviceIntPoint aRefPoint)
    returns (LayoutDeviceIntPoint   aOutRefPoint,
             ScrollableLayerGuid    aOutTargetGuid,
             uint64_t               aOutFocusSequenceNumber,
             LayersId               aOutLayersId);

child:
  async CallInputBlockCallback(uint64_t aInputBlockId,
                               APZHandledResult aHandledResult);

  async HandleTap(GeckoContentController_TapType aType, LayoutDevicePoint point,
                  Modifiers aModifiers, ScrollableLayerGuid aGuid,
                  uint64_t aInputBlockId, DoubleTapToZoomMetrics? aDoubleTapToZoomMetrics);
};

} // namespace gfx
} // namespace mozilla

[ Dauer der Verarbeitung: 0.20 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge