summaryrefslogtreecommitdiff
path: root/openbox/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/client.c')
-rw-r--r--openbox/client.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/openbox/client.c b/openbox/client.c
index e1c56042..19a10c21 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -2451,3 +2451,18 @@ Client *client_find_directional(Client *c, Direction dir)
return best_client;
}
+
+void client_set_layer(Client *self, int layer)
+{
+ if (layer < 0) {
+ self->below = TRUE;
+ self->above = FALSE;
+ } else if (layer == 0) {
+ self->below = self->above = FALSE;
+ } else {
+ self->below = FALSE;
+ self->above = TRUE;
+ }
+ client_calc_layer(self);
+ client_change_state(self); /* reflect this in the state hints */
+}