Module xx_input_popup_positioner_v1

Available on crate feature wayland and Linux only.
Expand description

input method popup positioner

The input_popup_positioner provides a collection of rules for the placement of an input method popup surface relative to the cursor. Rules can be defined to ensure the text input area remains within the visible area’s borders, and to specify how the popup changes its position, such as sliding along an axis, or flipping around a rectangle. These positioner-created rules are constrained by the requirement that a popup must intersect with or be at least partially adjacent to the surface containing the text input.

See the various requests for details about possible rules.

A newly created positioner has the following state:

  • 0 surface width
  • 0 surface height
  • anchor at the center (“none”)
  • gravity towards the center (“none”)
  • constraints adjustment set to none
  • offset at x = 0, y = 0
  • not reactive

Upon receiving a request taking the positioner as an argument, the compositor makes a copy of the rules specified by the input_popup_positioner. Thus, after the request is complete the input_popup_positioner object can be destroyed or reused; further changes to the object will have no effect on previous usages.

For an input_popup_positioner object to be considered complete, its state must contain a non-zero width and height. Passing an incomplete input_popup_positioner object when positioning a surface raises an invalid_positioner error.

Structs§

ConstraintAdjustment
constraint adjustments
XxInputPopupPositionerV1
input method popup positioner

Enums§

Anchor
Error
Event
Gravity
Request

Constants§

REQ_DESTROY_OPCODE
The wire opcode for this request
REQ_DESTROY_SINCE
The minimal object version supporting this request
REQ_SET_ANCHOR_OPCODE
The wire opcode for this request
REQ_SET_ANCHOR_SINCE
The minimal object version supporting this request
REQ_SET_CONSTRAINT_ADJUSTMENT_OPCODE
The wire opcode for this request
REQ_SET_CONSTRAINT_ADJUSTMENT_SINCE
The minimal object version supporting this request
REQ_SET_GRAVITY_OPCODE
The wire opcode for this request
REQ_SET_GRAVITY_SINCE
The minimal object version supporting this request
REQ_SET_OFFSET_OPCODE
The wire opcode for this request
REQ_SET_OFFSET_SINCE
The minimal object version supporting this request
REQ_SET_REACTIVE_OPCODE
The wire opcode for this request
REQ_SET_REACTIVE_SINCE
The minimal object version supporting this request
REQ_SET_SIZE_OPCODE
The wire opcode for this request
REQ_SET_SIZE_SINCE
The minimal object version supporting this request