aboutsummaryrefslogtreecommitdiffstats
path: root/man3/LIBAXL_REQUEST_CIRCULATE_WINDOW.3
blob: 11eab2754f7c836fc633f0690b97f73bb036ef8d (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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
.TH LIBAXL_REQUEST_CIRCULATE_WINDOW 3 libaxl
.SH NAME
LIBAXL_REQUEST_CIRCULATE_WINDOW - Rotation of window Z-order
.SH SYNOPSIS
.nf
#include <libaxl.h>

#define LIBAXL_REQUEST_CIRCULATE_WINDOW 13
struct libaxl_request_circulate_window {
        uint8_t         \fIopcode\fP;
        uint8_t         \fIdirection\fP;
        uint16_t        \fI_request_length\fP;
        libaxl_window_t \fIwindow\fP;
};
.fi
.SH DESCRIPTION
If the value of the
.I direction
field is
.IR LIBAXL_RAISE_LOWEST ,
the child window, of the window specified in the
.I window
field, on the bottom is moved to the top
of the stack. If the value of the
.I direction
field is
.IR LIBAXL_LOWER_HIGHEST ,
the child window, of the window specified in the
.I window
field, on the top is moved to the bottom.
.PP
If another client is listening for [TODO SubstructureRedirect]
events on the specified window, a [TODO CirculateRequest]
request is sent to the client instead, and no further
processing is performed. If however, no such client, other
than the sender, exists, a
.I LIBAXL_EVENT_CIRCULATE_NOTIFY
event is generated if the window is actually restacked.
.PP
Normal exposure processing on formerly
obscured windows is performed.
.PP
The value of the
.I opcode
field shall be
.I LIBAXL_REQUEST_CIRCULATE_WINDOW
to signify that the request is of the
request described in this document.
.PP
Other fields are filled in automatically by the
.BR libaxl_send_request (3)
function.
.SH ERRORS
.TP
.BR LIBAXL_ERROR_VALUE (3)
The value of the
.I direction
field is invalid.
.TP
.BR LIBAXL_ERROR_WINDOW (3)
The specified window ID does not exist.
.SH REPLIES
None.
.SH SEE ALSO
.BR libaxl_send_request (3)