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.core/layout.ml.html

Source file layout.ml

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
type t =
  | Tiling [@name "tiling"]
  | Scrolling [@name "scrolling"]
  | Floating [@name "floating"]
[@@deriving yojson]

let all = [ Tiling; Scrolling; Floating ]

let to_string = function
  | Tiling -> "tiling"
  | Scrolling -> "scrolling"
  | Floating -> "floating"
;;

let of_string s =
  match String.trim s |> String.lowercase_ascii with
  | "tiling" -> Some Tiling
  | "scrolling" -> Some Scrolling
  | "floating" -> Some Floating
  | _ -> None
;;

let cycle t (dir : Direction.Logical.t) =
  match dir with
  | Next -> Ring.next_or_first t all |> Option.get
  | Prev -> Ring.prev_or_last t all |> Option.get
;;