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.ops/modes.ml.html

Source file modes.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
open! Oxbow_core
open! Oxbow_state
open! Oxbow_ipc
open! Result.Syntax

let declare (wm : Wm.t) name =
  let+ mode = Mode.declare name ~declared:wm.config.modes in
  Config.declare_mode wm mode;
  None
;;

let enter (wm : Wm.t) seat name =
  let* mode = Mode.resolve name ~declared:wm.config.modes in
  let+ () = Seat.set_mode seat mode in
  None
;;

let handle wm seat (cmd : Command.Keymap.Mode.t) =
  match cmd with
  | Declare name -> declare wm name
  | Enter name -> enter wm seat name
;;