aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)AuthorFilesLines
2021-04-27river-options: remove protocolIsaac Freund2-55/+0
This protocol involves far too much accidental complexity. The original motivating use-case was to provide a convenient way to send arbitrary data to layout clients at runtime in order to avoid layout clients needing to implement their own IPC and do this over a side-channel. Instead of implementing a quite complex but still rigid options protocol and storing this state in the compositor, instead we will simply add events to the layout protocol to support this use case. Consider the status quo event sequence: 1. send get_option_handle request (riverctl) 2. roundtrip waiting for first event (riverctl) 3. send set_foo_value request (riverctl) 4. receive set_foo_value request (river) 5. send foo_value event to all current handles (river) 6. receive foo_value event (rivertile) 7. send parameters_changed request (rivertile) 8. receive parameters_changed request (river) 9. send layout_demand (river) And compare with the event sequence after the proposed change: 1. send set_foo_value request (riverctl) 2. receive set_foo_value request (river) 3. send set_foo_value event (river) 4. send layout_demand (river) This requires *much* less back and forth between the server and clients and is clearly much simpler.
2021-04-27river: get rid of all server-created optionsIsaac Freund1-11/+7
- Replace the layout option with new default-layout and output-layout commands. - Remove the ability to get/set the output title entirely.
2021-04-20river-options: rework, bump to v2Isaac Freund2-33/+40
Options are now all global but may be overridden per-output. If an output local value is requested but none has been set, the global value is provided instead. This makes for much better ergonomics when configuring layout related options in particular.
2021-04-20river: send SIGTERM to init command process groupIsaac Freund1-4/+3
Run the init command in a new process group and send SIGTERM to the entire group on exit. Without doing this, only the sh invocation used for the `sh -c` would receive SIGTERM. This is particularly useful when starting a per-session server manager as the init command.
2021-04-20river-layout: create and implement protocolLeon Henrik Plickat3-138/+33
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>
2021-03-16Fix existing typosFollieHiyuki1-2/+2
2021-02-09riverctl: add mod-option commandLeon Henrik Plickat1-0/+3
2021-02-07riverctl: add -focused-output for option commandsIsaac Freund1-5/+6
This is more convenient for interactive usage and makes using the same bindings across multiple outputs easy.
2021-02-02output: add output_title default optionLeon Henrik Plickat1-1/+7
Outputs now have a default option, "output_title". If this changes, the outputs title is set to the option value. This title is currently only relevant when run nested in a wayland/X11 session. Co-authored-by: Isaac Freund <ifreund@ifreund.xyz>
2021-01-18riverctl: implement river-options interfaceIsaac Freund1-0/+19
To make this cleaner, introduce some arg-parsing infrastructure that will useful when porting riverctl to river-control-v2 in the future as well.
2021-01-02command: Implement spawn-tagmaskMarten Ringwelski1-0/+10
2020-12-30docs: fix riverctl man page syntaxIsaac Freund1-4/+4
2020-12-30docs: fix syntax in riverctl man pageIsaac Freund1-1/+1
2020-12-30docs: Improve clarity of river/riverctl man pagesIsaac Freund2-117/+148
2020-12-30docs: improve startup and config informationIsaac Freund1-9/+23
2020-12-30command: s/master/main/g (breaking change)Isaac Freund3-17/+23
main is a better term to use here for several reasons: 1. It is more accurate: "master" implies that the designated views have some kind of control over the other views, which is not the case. "main" better expresses that the difference between the "main" view and others is one of importance/focus. 2. It is a shorter word. 2 whole characters saved! 3. It reduces the chance of future development time being lost to good-intentioned people complaining about usage of the word master as has recently happened with regards to the default git branch name.
2020-12-30docs: improve explanation of tagsIsaac Freund1-14/+23
"tagmask" is a misleading term as the arguments are used much more like a set of tags than a mask.
2020-12-13doc: Remove outdated configuration instructionsLeon Henrik Plickat1-3/+0
2020-12-13doc: unify scdoc styleLeon Henrik Plickat4-86/+103
This unifies the style of the man page source files. Most noticable are the now consistent line endings at 80 chars (assuming a tabwidth of 8).
2020-12-07focus-follow-cursor: Change output focus when neededMarten Ringwelski1-2/+5
2020-11-18control: implement set-repeatBonicgamer1-0/+4
2020-11-11doc: add AUTHORS section to man pagesIsaac Freund4-0/+24
2020-10-27Implement unmap-pointerMarten Ringwelski1-0/+4
2020-10-27Implement unmapMarten Ringwelski1-0/+4
2020-10-25control: implement swapMarten Ringwelski1-0/+6
2020-10-19Introduce mode "locked"Leon Henrik Plickat1-2/+2
This mode is automatically entered when the screen is locked.
2020-10-18Allow "None" as modifier string for bindings without modifiersLeon Henrik Plickat1-2/+1
This is more userfriendly than the empty string approach.
2020-10-07Implement "move", "snap" and "resize" commandsLeon Henrik Plickat1-0/+11
2020-10-05Implement configurable view opacity with fade effectLeon Henrik Plickat1-0/+15
2020-09-15docs: focus-follows-cursor fix options to be boldMarten Ringwelski1-1/+1
2020-09-15Implement map -releaseMarten Ringwelski1-2/+4
2020-09-15Implement focus-follows-cursorMarten Ringwelski1-0/+7
2020-08-24config: implement map-pointer commandIsaac Freund1-0/+17
This command takes a mode, modifiers, button/event name, and pointer action as arguments. It stores these in the config data structure. The currently available pointer actions are move-view and resize-view, which replace the previously hard-coded functionality. Closing the hovered view with middle click has temorarily been removed until it is decided if we wish to make this another special pointer action or perhaps allow running any arbitrary command (which would of course include close).
2020-08-18Implement "attach-mode"Leon Henrik Plickat1-0/+3
2020-08-01doc: shorten riverctl’s synopsisLennard Hofmann1-2/+1
The set-option command got removed but was still present in SYNOPSIS, which confused me. It is not the first time, we forgot to update it.
2020-07-16Implement csd-filter-add and float-filter-add commandsLeon Henrik Plickat1-0/+8
2020-07-15command: split set-option into "toplevel" commandsIsaac Freund1-8/+16
`riverctl set-option view_padding 10` becomes `riverctl view-padding 10` Having set-option doesn't really gain us anything and is more verbose as well as being slightly inaccurate as the changes instantly apply.
2020-07-14cursor: make xcursor theme configurableIsaac Freund1-0/+6
- add a new command to set the theme - export the theme of the default seat through environment variables
2020-07-05server: send SIGTERM to startup process on exitIsaac Freund1-3/+6
2020-06-29docs: add toggle-fullscreenIsaac Freund1-0/+3
2020-06-19command: add background_color optionIsaac Freund1-0/+1
This is trivial to support and allows basic customization without running a layer-shell program such as swaybg. This is especially useful in low memory situations.
2020-06-17docs: small man pages fixes and updatesLennard Hofmann3-15/+21
- Previous hard-coded settings can be now be changes with riverctl or via environment variables - Update "See also" - Mod → Mod1
2020-06-17cli: allow setting log level with '-l' flagIsaac Freund1-1/+6
2020-06-16docs: add rivertile man pageIsaac Freund1-0/+38
2020-06-16Doc: Add layout documentationLeon Henrik Plickat2-2/+81
2020-06-15docs: use scdoc instead of roff for man pagesLennard Hofmann4-236/+165
2020-06-13command: add view_padding optionIsaac Freund1-0/+2
2020-06-13command: allow alpha in colors, simplify codeIsaac Freund1-2/+2
2020-06-13code: simplify option handlingIsaac Freund1-2/+2
2020-06-13command: add border_focused_color and border_unfocused_color optionslazy-dolphin1-0/+4