class MouseSourceV2
Defined at line 32 of file fidling/gen/sdk/fidl/fuchsia.ui.pointer/fuchsia.ui.pointer/cpp/fidl/fuchsia.ui.pointer/cpp/markers.h
A push-based reader protocol for a client to receive mouse pointer events.
Streaming begins automatically on connection. Scenic dispatches mouse
events in hover fragments, starting with `ENTERED` and ending with `EXITED`
when the cursor leaves a view.
Flow control and acknowledgment rules:
- The server will not push more than
`MOUSE_SOURCE_V2_MAX_UNACKNOWLEDGED_EVENTS` (or a product-configured
maximum) events without receiving an acknowledgment from the client.
The server (Scenic) will throttle event delivery when unacknowledged
events in flight reach this limit.
- Clients should send acknowledgments periodically (e.g. before reaching
the limit, such as within 20 remaining credits) to avoid being throttled.
- No head-of-line blocking: Because channels and credit limits are
independent per-view, a slow client that fails to acknowledge `EXITED`
events only blocks its own channel. Scenic can immediately start pushing
events to the newly hovered client on its own channel.
The position of a pointer event is defined in the context of a viewport,
situated in the view, identical to [`MouseSource`].
Public Members
static Openness kOpenness