class Config
Defined at line 289 of file fidling/gen/sdk/fidl/fuchsia.ui.pointerinjector/fuchsia.ui.pointerinjector/cpp/fidl/fuchsia.ui.pointerinjector/cpp/natural_types.h
A specification for an injector |Device|.
All fields required.
Public Methods
void Config (Storage_ storage)
void Config ()
Defined at line 295 of file fidling/gen/sdk/fidl/fuchsia.ui.pointerinjector/fuchsia.ui.pointerinjector/cpp/fidl/fuchsia.ui.pointerinjector/cpp/natural_types.h
void Config (Config && )
Defined at line 296 of file fidling/gen/sdk/fidl/fuchsia.ui.pointerinjector/fuchsia.ui.pointerinjector/cpp/fidl/fuchsia.ui.pointerinjector/cpp/natural_types.h
bool IsEmpty ()
const std::optional<uint32_t> & device_id ()
An identifier for the pointer device that issues pointer event streams.
::std::optional<uint32_t> & device_id ()
An identifier for the pointer device that issues pointer event streams.
Config & device_id (std::optional<uint32_t> value)
An identifier for the pointer device that issues pointer event streams.
const std::optional< ::fuchsia_ui_pointerinjector::DeviceType> & device_type ()
A characterization of the pointer device.
::std::optional< ::fuchsia_ui_pointerinjector::DeviceType> & device_type ()
A characterization of the pointer device.
Config & device_type (std::optional< ::fuchsia_ui_pointerinjector::DeviceType> value)
A characterization of the pointer device.
const std::optional< ::fuchsia_ui_pointerinjector::Context> & context ()
The scope and coordinate system of the injector |Device|.
Note: To avoid circular injection scenarios, |context| must be a
strict ancestor of |target|.
::std::optional< ::fuchsia_ui_pointerinjector::Context> & context ()
The scope and coordinate system of the injector |Device|.
Note: To avoid circular injection scenarios, |context| must be a
strict ancestor of |target|.
Config & context (std::optional< ::fuchsia_ui_pointerinjector::Context> value)
The scope and coordinate system of the injector |Device|.
Note: To avoid circular injection scenarios, |context| must be a
strict ancestor of |target|.
Config & operator= (Config && )
Defined at line 297 of file fidling/gen/sdk/fidl/fuchsia.ui.pointerinjector/fuchsia.ui.pointerinjector/cpp/fidl/fuchsia.ui.pointerinjector/cpp/natural_types.h
const std::optional< ::fuchsia_ui_pointerinjector::Target> & target ()
The region where dispatch is attempted for injected events.
Note: To avoid circular injection scenarios, |target| must be a strict
descendant of |context|.
::std::optional< ::fuchsia_ui_pointerinjector::Target> & target ()
The region where dispatch is attempted for injected events.
Note: To avoid circular injection scenarios, |target| must be a strict
descendant of |context|.
Config & target (std::optional< ::fuchsia_ui_pointerinjector::Target> value)
The region where dispatch is attempted for injected events.
Note: To avoid circular injection scenarios, |target| must be a strict
descendant of |context|.
const std::optional< ::fuchsia_ui_pointerinjector::Viewport> & viewport ()
The initial viewport for injected events. Subsequent modifications to
the viewport can also be sent synchronously with injected events.
::std::optional< ::fuchsia_ui_pointerinjector::Viewport> & viewport ()
The initial viewport for injected events. Subsequent modifications to
the viewport can also be sent synchronously with injected events.
Config & viewport (std::optional< ::fuchsia_ui_pointerinjector::Viewport> value)
The initial viewport for injected events. Subsequent modifications to
the viewport can also be sent synchronously with injected events.
const std::optional< ::fuchsia_ui_pointerinjector::DispatchPolicy> & dispatch_policy ()
A specification of the UI clients in |target| that may have injected
events dispatched to them.
For example, if |dispatch_policy| is |EXCLUSIVE|, then only |target| may
have injected events dispatched to it, regardless of other factors, such
as surface occlusion by clients inside and outside of |target|.
::std::optional< ::fuchsia_ui_pointerinjector::DispatchPolicy> & dispatch_policy ()
A specification of the UI clients in |target| that may have injected
events dispatched to them.
For example, if |dispatch_policy| is |EXCLUSIVE|, then only |target| may
have injected events dispatched to it, regardless of other factors, such
as surface occlusion by clients inside and outside of |target|.
Config & dispatch_policy (std::optional< ::fuchsia_ui_pointerinjector::DispatchPolicy> value)
A specification of the UI clients in |target| that may have injected
events dispatched to them.
For example, if |dispatch_policy| is |EXCLUSIVE|, then only |target| may
have injected events dispatched to it, regardless of other factors, such
as surface occlusion by clients inside and outside of |target|.
const std::optional< ::fuchsia_input_report::Axis> & scroll_v_range ()
Range of vertical scroll values issued by the device.
::std::optional< ::fuchsia_input_report::Axis> & scroll_v_range ()
Range of vertical scroll values issued by the device.
Config & scroll_v_range (std::optional< ::fuchsia_input_report::Axis> value)
Range of vertical scroll values issued by the device.
const std::optional< ::fuchsia_input_report::Axis> & scroll_h_range ()
Range of horizontal scroll values issued by the device.
::std::optional< ::fuchsia_input_report::Axis> & scroll_h_range ()
Range of horizontal scroll values issued by the device.
Config & scroll_h_range (std::optional< ::fuchsia_input_report::Axis> value)
Range of horizontal scroll values issued by the device.
const std::optional< ::std::vector<uint8_t>> & buttons ()
Mouse button identifiers issued by the device, in priority order.
The priority order of mouse buttons is a policy choice enacted by the injector.
This priority order is conveyed verbatim to UI clients via
[`fuchsia.ui.pointer.MouseDeviceInfo.buttons`], so button priority is shared consistently
between multiple UI clients. For example, to swap the left-side (0x1) and right-side (0x2)
physical buttons from their traditional roles of primary and secondary mouse buttons, the
injector can specify [0x2, 0x1, ... ] in this [`buttons`] vector.
Note that preserving the physical button ID is also a policy choice. If preserved, a
discerning UI client can distinguish between the ground truth (which physical button was
pressed) versus the desired interpretation (what priority does that physical button have, on
the current system).
::std::optional< ::std::vector<uint8_t>> & buttons ()
Mouse button identifiers issued by the device, in priority order.
The priority order of mouse buttons is a policy choice enacted by the injector.
This priority order is conveyed verbatim to UI clients via
[`fuchsia.ui.pointer.MouseDeviceInfo.buttons`], so button priority is shared consistently
between multiple UI clients. For example, to swap the left-side (0x1) and right-side (0x2)
physical buttons from their traditional roles of primary and secondary mouse buttons, the
injector can specify [0x2, 0x1, ... ] in this [`buttons`] vector.
Note that preserving the physical button ID is also a policy choice. If preserved, a
discerning UI client can distinguish between the ground truth (which physical button was
pressed) versus the desired interpretation (what priority does that physical button have, on
the current system).
Config & buttons (std::optional< ::std::vector<uint8_t>> value)
Mouse button identifiers issued by the device, in priority order.
The priority order of mouse buttons is a policy choice enacted by the injector.
This priority order is conveyed verbatim to UI clients via
[`fuchsia.ui.pointer.MouseDeviceInfo.buttons`], so button priority is shared consistently
between multiple UI clients. For example, to swap the left-side (0x1) and right-side (0x2)
physical buttons from their traditional roles of primary and secondary mouse buttons, the
injector can specify [0x2, 0x1, ... ] in this [`buttons`] vector.
Note that preserving the physical button ID is also a policy choice. If preserved, a
discerning UI client can distinguish between the ground truth (which physical button was
pressed) versus the desired interpretation (what priority does that physical button have, on
the current system).
const std::optional< ::std::array< ::fuchsia_input_report::Axis, 2>> & relative_motion_range ()
Range of X and Y motion by a mouse device.
::std::optional< ::std::array< ::fuchsia_input_report::Axis, 2>> & relative_motion_range ()
Range of X and Y motion by a mouse device.
Config & relative_motion_range (std::optional< ::std::array< ::fuchsia_input_report::Axis, 2>> value)
Range of X and Y motion by a mouse device.
void Config (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )
Friends
class MemberVisitor
class NaturalTableCodingTraits