Skip to content

zwp_tablet_pad_ring_v2¤

wayland.zwp_tablet_pad_ring_v2 ¤

Pad ring

A circular interaction area, such as the touch ring on the Wacom Intuos Pro series tablets.

Events on a ring are logically grouped by the wl_tablet_pad_ring.frame event.

Methods:

source ¤

Ring axis source

Describes the source types for ring events. This indicates to the client how a ring event was physically generated; a client may adjust the user interface accordingly. For example, events from a "finger" source may trigger kinetic scrolling.

events

source ¤

source(source: source) -> None

Ring event source

Source information for ring events.

This event does not occur on its own. It is sent before a wp_tablet_pad_ring.frame event and carries the source information for all events within that frame.

The source specifies how this event was generated. If the source is wp_tablet_pad_ring.source.finger, a wp_tablet_pad_ring.stop event will be sent when the user lifts the finger off the device.

This event is optional. If the source is unknown for an interaction, no event is sent.

Parameters:

  • source ¤

    (source) –

    The event source

angle ¤

angle(degrees: float) -> None

Angle changed

Sent whenever the angle on a ring changes.

The angle is provided in degrees clockwise from the logical north of the ring in the pad's current rotation.

Parameters:

  • degrees ¤

    (float) –

    The current angle in degrees

stop ¤

stop() -> None

Interaction stopped

Stop notification for ring events.

For some wp_tablet_pad_ring.source types, a wp_tablet_pad_ring.stop event is sent to notify a client that the interaction with the ring has terminated. This enables the client to implement kinetic scrolling. See the wp_tablet_pad_ring.source documentation for information on when this event may be generated.

Any wp_tablet_pad_ring.angle events with the same source after this event should be considered as the start of a new interaction.

frame ¤

frame(time: int) -> None

End of a ring event sequence

Indicates the end of a set of ring events that logically belong together. A client is expected to accumulate the data in all events within the frame before proceeding.

All wp_tablet_pad_ring events before a wp_tablet_pad_ring.frame event belong logically together. For example, on termination of a finger interaction on a ring the compositor will send a wp_tablet_pad_ring.source event, a wp_tablet_pad_ring.stop event and a wp_tablet_pad_ring.frame event.

A wp_tablet_pad_ring.frame event is sent for every logical event group, even if the group only contains a single wp_tablet_pad_ring event. Specifically, a client may get a sequence: angle, frame, angle, frame, etc.

Parameters:

  • time ¤

    (int) –

    Timestamp with millisecond granularity

set_feedback ¤

set_feedback(description: str, serial: int) -> None

Set compositor feedback

Request that the compositor use the provided feedback string associated with this ring. This request should be issued immediately after a wp_tablet_pad_group.mode_switch event from the corresponding group is received, or whenever the ring is mapped to a different action. See wp_tablet_pad_group.mode_switch for more details.

Clients are encouraged to provide context-aware descriptions for the actions associated with the ring; compositors may use this information to offer visual feedback about the button layout (eg. on-screen displays).

The provided string 'description' is a UTF-8 encoded string to be associated with this ring, and is considered user-visible; general internationalization rules apply.

The serial argument will be that of the last wp_tablet_pad_group.mode_switch event received for the group of this ring. Requests providing other serials than the most recent one will be ignored.

Parameters:

  • description ¤

    (str) –

    Ring description

  • serial ¤

    (int) –

    Serial of the mode switch event

destroy ¤

destroy() -> None

Destroy the ring object

This destroys the client's resource for this ring object.

on_source ¤

on_source(source: source) -> None

Ring event source.

Override to handle wayland.zwp_tablet_pad_ring_v2.events.source.

on_angle ¤

on_angle(degrees: float) -> None

Angle changed.

Override to handle wayland.zwp_tablet_pad_ring_v2.events.angle.

on_stop ¤

on_stop() -> None

Interaction stopped.

Override to handle wayland.zwp_tablet_pad_ring_v2.events.stop.

on_frame ¤

on_frame(time: int) -> None

End of a ring event sequence.

Override to handle wayland.zwp_tablet_pad_ring_v2.events.frame.