Wayland_client.Wl_pointer
Pointer input device.
The wl_pointer interface represents one or more input devices, such as mice, which control the pointer location and pointer_focus of a seat.
The wl_pointer interface generates motion, enter and leave events for the surfaces that the pointer is located over, and button and axis events for button presses, button releases and scrolling.
type 'v t = ([ `Wl_pointer ], 'v, [ `Client ]) Proxy.t
module Error = Wayland_proto.Wl_pointer.Error
module Button_state = Wayland_proto.Wl_pointer.Button_state
module Axis = Wayland_proto.Wl_pointer.Axis
module Axis_source = Wayland_proto.Wl_pointer.Axis_source
module Axis_relative_direction =
Wayland_proto.Wl_pointer.Axis_relative_direction
val set_cursor :
[< `V1 | `V2 | `V3 | `V4 | `V5 | `V6 | `V7 | `V8 | `V9 ] t ->
serial:int32 ->
surface:([ `Wl_surface ], 'a, [ `Client ]) Proxy.t option ->
hotspot_x:int32 ->
hotspot_y:int32 ->
unit
Set the pointer surface.
Set the pointer surface, i.e., the surface that contains the pointer image (cursor). This request gives the surface the role of a cursor. If the surface already has another role, it raises a protocol error.
The cursor actually changes only if the pointer focus for this device is one of the requesting client's surfaces or the surface parameter is the current pointer surface. If there was a previous surface set with this request it is replaced. If surface is NULL, the pointer image is hidden.
The parameters hotspot_x and hotspot_y define the position of the pointer surface relative to the pointer location. Its top-left corner is always at (x, y) - (hotspot_x, hotspot_y), where (x, y) are the coordinates of the pointer location, in surface-local coordinates.
On wl_surface.offset requests to the pointer surface, hotspot_x and hotspot_y are decremented by the x and y parameters passed to the request. The offset must be applied by wl_surface.commit as usual.
The hotspot can also be updated by passing the currently set pointer surface to this request with new values for hotspot_x and hotspot_y.
The input region is ignored for wl_surfaces with the role of a cursor. When the use as a cursor ends, the wl_surface is unmapped.
The serial parameter must match the latest wl_pointer.enter serial number sent to the client. Otherwise the request will be ignored.
val release : [< `V3 | `V4 | `V5 | `V6 | `V7 | `V8 | `V9 ] t -> unit
Release the pointer object.
Using this request a client can tell the server that it is not going to use the pointer object anymore.
This request destroys the pointer proxy object, so clients must not call wl_pointer_destroy() after using this request.
Note: Servers will always want to use v1
.
class virtual +'a v1 : object ... end
Handler for a proxy with version >= 1.
class virtual +'a v2 : object ... end
Handler for a proxy with version >= 2.
class virtual +'a v3 : object ... end
Handler for a proxy with version >= 3.
class virtual +'a v4 : object ... end
Handler for a proxy with version >= 4.
class virtual +'a v5 : object ... end
Handler for a proxy with version >= 5.
class virtual +'a v6 : object ... end
Handler for a proxy with version >= 6.
class virtual +'a v7 : object ... end
Handler for a proxy with version >= 7.
class virtual +'a v8 : object ... end
Handler for a proxy with version >= 8.
class virtual +'a v9 : object ... end
Handler for a proxy with version >= 9.