package oxbow
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
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/window_scope.ml.html
Source file window_scope.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 26open! Oxbow_core open! Oxbow_state open! Result.Syntax let filter (wm : Wm.t) (seat : Seat.t) (scope : Scope.t) = let on_output o = List.filter (fun (w : Window.t) -> Phys.opt_holds o w.output) wm.windows in match scope with | All -> Ok wm.windows | Focused -> With.focused_output seat @@ fun o -> Ok (on_output o) | Output name -> (match List.find_opt (Output.matches_name name) wm.outputs with | None -> Error (Printf.sprintf "unknown output: %s" name) | Some o -> Ok (on_output o)) ;; let holds matches (w : Window.t) = matches ~title:w.title ~app_id:w.app_id ~identifier:w.identifier ~labels:w.labels ;; let matching wm seat (m : Window_match.t) = let* matches = Window_pattern.compile m.pattern in let+ windows = filter wm seat m.scope in holds matches, List.find_all (holds matches) windows ;;
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>