package oxbow

  1. Overview
  2. Docs
Dynamic window manager for the river Wayland compositor

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v0.1.0.tar.gz
md5=a637acaa0e19046cd65fff733874eb97
sha512=76230cbecd7510de7a05b5d1f335915ef7b6c4aa557d8dbfd23591606618d2cfa25082d17b93f2f4b53a118d1cbf6a80e4ad51cf0f099b4921fb83d6df0c9801

doc/src/oxbow.state/schedule.ml.html

Source file schedule.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
let send = ref (fun () -> ())
let requested = ref false
let in_tick = ref false
let install f = send := f

let manage () =
  if not !requested
  then (
    requested := true;
    if not !in_tick then !send ())
;;

let with_tick f =
  assert (not !in_tick);
  requested := false;
  in_tick := true;
  Fun.protect f ~finally:(fun () ->
    in_tick := false;
    if !requested then !send ())
;;