aboutsummaryrefslogtreecommitdiff
path: root/cross/include/util.h
blob: bf89c2dd856cfbbd487a62c8f56e9c7a2e265e0a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef MONTIS_UTIL_H
#define MONTIS_UTIL_H

/*
 * Runtime helpers exposed to worlds. These operate on compositor state and are
 * intended for direct FFI use from a world implementation.
 */

void montis_do_request_hot_reload(void *plugv);
void montis_do_request_log(void *plugv, const char *str);
void montis_do_request_exit(void *plugv, int ec);

void *arkworld_get_seat(void *ctx);
void *arkworld_toplevel_at(void *ctx, double lx, double ly);
void arkworld_get_toplevel_position(void *toplevel, double *x, double *y);
void arkworld_set_toplevel_position(void *toplevel, double x, double y);
void arkworld_get_toplevel_geometry(void *toplevel, double *x, double *y,
                                       double *w, double *h);
void arkworld_set_toplevel_geometry(void *toplevel, double x, double y,
                                       double w, double h);
void arkworld_focus_toplevel(void *toplevel);
void arkworld_warp_cursor(void *ctx, double lx, double ly);

#endif /* MONTIS_UTIL_H */