aboutsummaryrefslogtreecommitdiff
path: root/doc/river-layouts.7.scd
diff options
context:
space:
mode:
authorLeon Henrik Plickat <leonhenrik.plickat@stud.uni-goettingen.de>2020-10-02 15:53:08 +0200
committerIsaac Freund <ifreund@ifreund.xyz>2021-04-20 18:27:03 +0200
commitf72656b72e5822481a4bc15b75d19b61b1bb7bc8 (patch)
tree525e40d5fa1e4279810f7f7537830f2bf89b1608 /doc/river-layouts.7.scd
parentdf3e9930137c0ec4871208b09832e59d537453b7 (diff)
downloadriver-f72656b72e5822481a4bc15b75d19b61b1bb7bc8.tar.gz
river-f72656b72e5822481a4bc15b75d19b61b1bb7bc8.tar.xz
river-layout: create and implement protocol
Replace the current layout mechanism based on passing args to a child process and parsing it's stdout with a new wayland protocol. This much more robust and allows for more featureful layout generators. Co-authored-by: Isaac Freund <ifreund@ifreund.xyz>
Diffstat (limited to 'doc/river-layouts.7.scd')
-rw-r--r--doc/river-layouts.7.scd86
1 files changed, 0 insertions, 86 deletions
diff --git a/doc/river-layouts.7.scd b/doc/river-layouts.7.scd
deleted file mode 100644
index 6b76846..0000000
--- a/doc/river-layouts.7.scd
+++ /dev/null
@@ -1,86 +0,0 @@
-RIVER-LAYOUTS(7) "github.com/ifreund/river"
-
-# NAME
-
-river-layouts - Details on layout generators for river
-
-# DESCRIPTION
-
-River can use external window management layouts. To get such a layout, river
-will run an executable and parse its output. This document outlines how such a
-layout generator interacts with river.
-
-# INPUT
-
-When running the executable, river will provide it with five parameters which
-are appended to the end of the command in the following order:
-
-. The amount of visible clients (integer)
-. The amount of views dedicated as main (integer)
-. The screen size multiplier for the main area (float between 0.0 and 1.0)
-. The useable width of the output (integer)
-. The useable height of the output (integer)
-
-A layout generator may choose to ignore any of these values except
-for the first one.
-
-# OUTPUT
-
-River expects four integer values for each window: The x position, the y
-position, the width and the height. These must be separated by spaces. A window
-configuration having fewer or more than four values is an error and will cause
-river to fall back the full layout.
-
-A layout generator needs to output position and size for every visible window.
-The window configurations are separated by a newline. Too few or too many
-outputted window configurations is an error and will cause river to fall back
-to the full layout.
-
-River will apply the position and dimensions in the order they are outputted to
-the visible windows in the stack from top to bottom.
-
-The output of a layout generator is not required to remain the same when called
-with identical parameters. Layouts are allowed to also depend on external
-factors or be completely random.
-
-# WINDOW DIMENSIONS and POSITION
-
-Layout generators are not supposed to include padding or leave space for window
-borders. The window dimensions will be shrunk by river to make space for these.
-River enforces a minimal window width and height of 50.
-
-Layout generators operate on a special coordinate grid from 0 to the maximum
-useable width or height of an output with the coordinate 0-0 being positioned
-at the top-left corner of the useable area of an output. While layout
-generators are free to place windows everywhere (including coordinates below
-zero or above the maximum width or height of an output), beware that the
-relative positioning of this grid on the screen can not be expected to remain
-constant. River applies an offset to window positions, depending on outer
-padding and the presence of desktop widgets like bars. Layout generators can
-therefore not position windows at exact screen coordinates.
-
-Layout generators are not required to make use of the entire available space.
-Windows may overlap.
-
-# EXAMPLE
-
-Below is an example output of a layout generator for four visible windows. In
-this example layout all four windows have a size of 500 by 500 and are arranged
-in a grid.
-
-```
-0 0 500 500
-500 0 500 500
-0 500 500 500
-500 500 500 500
-```
-
-# AUTHORS
-
-Maintained by Isaac Freund <ifreund@ifreund.xyz> who is assisted by open
-source contributors. For more information about river's development, see
-<https://github.com/ifreund/river>.
-
-# SEE ALSO
-
-*river*(1), *riverctl*(1), *rivertile*(1)