sig
type output = {
created : Wlc.Output.t -> bool;
destroyed : Wlc.Output.t -> unit;
focus : Wlc.Output.t -> bool -> unit;
resolution :
Wlc.Output.t -> Wlc.Geometry.Size.t -> Wlc.Geometry.Size.t -> unit;
}
type view_request = {
geometry : Wlc.View.t -> Wlc.Geometry.t -> unit;
state : Wlc.View.t -> Wlc.View.state_bit -> bool -> unit;
}
type view = {
created : Wlc.View.t -> bool;
destroyed : Wlc.View.t -> unit;
focus : Wlc.View.t -> bool -> unit;
move_to_output : Wlc.View.t -> Wlc.Output.t -> Wlc.Output.t -> unit;
request : Wlc.Interface.view_request;
}
type keyboard = {
key :
Wlc.View.t option ->
int -> Wlc.modifiers -> int -> Wlc.Keysym.t -> Wlc.key_state -> bool;
}
type pointer = {
button :
Wlc.View.t option ->
int -> Wlc.modifiers -> int -> Wlc.button_state -> bool;
scroll :
Wlc.View.t option ->
int ->
Wlc.modifiers -> Wlc.scroll_axis_bit list -> float * float -> bool;
motion : Wlc.View.t option -> int -> Wlc.Geometry.Origin.t -> bool;
}
type touch = {
touch :
Wlc.View.t option ->
int ->
Wlc.modifiers -> Wlc.touch_type -> int -> Wlc.Geometry.Origin.t -> bool;
}
type compositor = { ready : unit -> unit; }
type t = {
output : Wlc.Interface.output;
view : Wlc.Interface.view;
keyboard : Wlc.Interface.keyboard;
pointer : Wlc.Interface.pointer;
touch : Wlc.Interface.touch;
compositor : Wlc.Interface.compositor;
}
val dummy : Wlc.Interface.t
end