class Injector

Defined at line 72 of file ../../src/ui/scenic/lib/input/injector.h

Implementation of the |fuchsia::ui::pointerinjector::Device| interface. One instance per channel.

LINT.IfChange

Public Methods

void Injector (std::shared_ptr<view_tree::SnapshotHolder> snapshot_holder, inspect::Node inspect_node, InjectorSettings settings, Viewport viewport, fidl::ServerEnd<fuchsia_ui_pointerinjector::Device> device, fit::function<void ()> on_channel_closed)

Defined at line 136 of file ../../src/ui/scenic/lib/input/injector.cc

zx_status_t IsValidViewport (const fuchsia_ui_pointerinjector::wire::Viewport & viewport)

Check the validity of a Viewport.

Returns ZX_OK if valid, otherwise logs an error message and return appropriate error code.

Defined at line 336 of file ../../src/ui/scenic/lib/input/injector.cc

void Inject (InjectRequestView request, InjectCompleter::Sync & completer)

|fidl::WireServer

<fuchsia

_ui_pointerinjector::Device>|

Defined at line 168 of file ../../src/ui/scenic/lib/input/injector.cc

void InjectEvents (InjectEventsRequestView request, InjectEventsCompleter::Sync & completer)

TODO(https://fxbug.dev/465440651): revisit if we need to add flow control here since there is

no flow control on caller side.

Defined at line 178 of file ../../src/ui/scenic/lib/input/injector.cc

void InjectEvents (fidl::VectorView<fuchsia_ui_pointerinjector::wire::Event> events)

Defined at line 184 of file ../../src/ui/scenic/lib/input/injector.cc

Protected Methods

void ForwardEvent (fuchsia_ui_pointerinjector::wire::Event & event, StreamId stream_id, const view_tree::Snapshot & snapshot, uint64_t trace_flow_id)

Forwards the event to device-specific handler in InputSystem (and eventually the client).

void CancelStream (uint32_t pointer_id, StreamId stream_id, const view_tree::Snapshot & snapshot)

Sends an appropriate Cancel event.

const InjectorSettings & settings ()

Defined at line 99 of file ../../src/ui/scenic/lib/input/injector.h

const Viewport & viewport ()

Defined at line 100 of file ../../src/ui/scenic/lib/input/injector.h