aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)AuthorFilesLines
2022-06-03Cursor: revive 'always' focus-follows-cursor modeIsaac Freund1-2/+4
This was removed a while back because it was buggy and I didn't know of anyone using it. Since refactoring it is now trivial to implement and I know of at least one person using it, so I don't mind reviving it.
2022-04-27command/map: layout-pinned mappingsPeter Kaplan1-1/+7
e.g. `riverctl map -layout 0 normal Super Y spawn foot` When this mapping is checked against a pressed key, layout 0 will be used to translate the pressed key instead of the currently active layout. The number denotes to an index of the layouts set with `XKB_DEFAULT_LAYOUT`.
2022-04-14Cursor: Add a hide-cursor commandDuncan Overbruck1-0/+9
From the riverctl.1 man page: *hide-cursor* *timeout* _timeout_ Hide the cursor if it wasn't moved in the last _timeout_ milliseconds until it is moved again. The default value is 0, which disables automatically hiding the cursor. Show the cursor again on any movement. *hide-cursor* *when-typing* *enabled*|*disabled* Hide the cursor when pressing any non-modifier key. Show the cursor again on any movement.
2022-04-14input: add map-switch/unmap-switch commandsPeter Kaplan1-0/+21
This allows running a command on a laptop's lid being opened/closed or a tablet's button/switch being pressed/toggled.
2022-03-05docs: fix typo in river(1) man pageLeonardo Gibrowski Faé1-1/+1
2022-02-06command: allow targeting outputs by namepmkap1-5/+6
This extends focus-output and send-to-output to allow targeting outputs by name instead of relative position.
2022-02-05input: Improve input device name formatLeon Henrik Plickat1-0/+2
The name now includes the type, for the case of a physical device advertising more than one logical device.
2022-01-23docs: fix typo in river(1) man pageIsaac Freund1-1/+1
2022-01-17command/map: add Alt/Super as aliases for Mod1/Mod4Isaac Freund1-4/+7
I personally made the mistake of using Alt instead of Mod1 when messing with my config. This change makes things a bit more user friendly/intuitive.
2021-11-11docs: remove reference to /etc/river/initIsaac Freund1-1/+3
We used to look in /etc/river/init if no init at ~/.config/river/init or $XDG_CONFIG_HOME/river/init was found but this feature was removed. It seems that we forgot to remove this mention of the old behavior however.
2021-11-01docs: update URLs for migration to riverwm github orgIsaac Freund3-6/+6
2021-11-01common: use -h instead of -helpIsaac Freund3-3/+3
This doesn't really matter that much as unrecognized options will still trigger a help message to be printed, but -h is much more standard so lets make the predictable choice here while sticking to only single '-' flags.
2021-11-01docs: assorted fixes/cleanupsIsaac Freund2-4/+4
2021-10-31docs: standardize on "layout generator"Isaac Freund2-4/+4
This is likely more clear than "layout client" to most users.
2021-10-04docs: change Enter to ReturnEuro201791-2/+2
xkbcommon uses `Return` to indicate this key, `Enter` isn't a valid keysym name. Co-authored-by: Euro <no>
2021-10-02doc: update my (Isaac's) email addressIsaac Freund3-3/+3
2021-09-14river: add send-to-previous-tags commandPeter Rice1-0/+4
2021-09-07river: Allow applying CSD based on window titlesBen Fiedler1-9/+9
This extends the `csd-filter-add` command to allow matching on window titles as well, using a `csd-filter-add kind pattern` syntax. The following kinds are supported: * `title`, which matches window titles * `app-id`, which matches app ids Only exact matches are considered. As an example following configuration applies client-side decorations to all windows with the title 'asdf with spaces'. riverctl csd-filter-add title 'asdf with spaces'
2021-09-06river: Allow floating based on window titlesBen Fiedler1-8/+8
This extends the `float-filter-add` command to allow matching on window titles as well, using a `float-filter-add kind pattern` syntax. The following kinds are supported: * `title`, which matches window titles * `app-id`, which matches app ids Only exact matches are considered. As an example following configuration floats all windows with the title 'asdf with spaces'. riverctl float-filter-add title 'asdf with spaces'
2021-08-19river: implement xdg-activation-v1novakane1-0/+3
- add a new "urgent" border color - add a new event to river-status-unstable-v1 Co-authored-by: Isaac Freund <ifreund@ifreund.xyz>
2021-08-18docs: default keyboard mapping mode is "normal"Keith Hubbard1-2/+2
2021-08-15command: support repeating keyboard mappingsKeith Hubbard1-1/+3
Repeating mappings are created using the -repeat option to the map command: % riverctl map normal $mod+Mod1 K -repeat move up 10 - repeating is only supported for key press (not -release) mappings - unlike -release, -repeat does not create distinct mappings: mapping a key with -repeat will replace an existing bare mapping and vice-versa Resolves #306
2021-07-29cursor: remove strict focus-follows-cursor modeIsaac Freund1-4/+2
This is pretty much unusable after recent improvements to the cursor code, and was totally broken causing a stack overflow as soon as the cursor was moved over any surface until the previous commit. Furthermore, none of the core contributors or people active on IRC seem to use it.
2021-07-27docs: fix typo in rivertile man pageRafael Escobar1-1/+1
2021-07-26config: change color format to 0xRRGGBBAAIsaac Freund1-3/+3
The current format of #RRGGBBAA is problematic as # starts a comment in POSIX compliant shells, requiring escaping/quoting and increasing complexity. This is a breaking change.
2021-07-26docs: Wayland should always be capitalizedIsaac Freund1-2/+2
This matches the style used on https://wayland.freedesktop.org/
2021-07-24river: simplify log levels exposed to the userIsaac Freund1-4/+4
2021-07-24docs: fix inconsistent capitalizationIsaac Freund1-1/+1
2021-07-24docs: add -help and -version options to man pagesIsaac Freund3-2/+22
2021-07-21river: make spawn command take only one argumentIsaac Freund1-5/+5
Currently the spawn command takes any number of arguments and naively joins them together with spaces before passing them as the single argument of `/bin/sh -c`. This however produces unexpected results as soon as shell quoting gets involved in the arguments passed to spawn. For example, running riverctl spawn foo "bar baz" will execute `/bin/sh -c "foo bar baz"`, unexpectedly splitting bar and baz into separate arguments. To avoid this confusion, make the spawn command take only a single argument, forcing the user to quote properly to spawn multi-argument commands.
2021-07-21rivertile: simplify commandsIsaac Freund1-20/+20
Instead of having separate commands for modifying/setting a value, use the presence of a +/- sign to indicate modification.
2021-07-20river-layout: update to v3Isaac Freund2-21/+28
- Remove advertise_view and advertise_done events. Using the information provided by these for any purpose would make the layout far less predictable. Futhermore, in the months this has been available for use, to my knowledge nobody has actually used it for anything useful. - Replace the set/mod layout value events with a single user_command event. This simplifies the protocol and is more flexible for clients. - Add a layout_name argument to the commit request. This name is an arbitrary, user-facing string that might, for example, be displayed by a status bar. This was present in early drafts of the protocol, but was removed in favor of river-options. Since river-options itself has since been removed and this feature is nice to have, re-add it. - Rename main factor to main ratio in rivertile. The "factor" name was just legacy from dwm, "ratio" is much more accurate.
2021-07-20river: remove opacity commandIsaac Freund1-20/+0
This code is complex and increases maintenance burden but doesn't add any functionality, only eye-candy. Futhermore, neither I nor any of the core contributors use it. There may be a place in river for such eye-candy down the line, in which case this code could be revived. Currently river is early enough in its development that our focus should be on core functionality instead.
2021-07-20docs: improve formatting consistencyIsaac Freund1-3/+3
2021-07-17river: remove system /etc dir from init search pathsIsaac Freund1-8/+6
A true "default" config doesn't make sense for river. Everyone who uses river seriously will customize their init script. Futhermore, the current behavior of embedding the install path of the default system config in the river binary is complex and prone to breaking.
2021-07-15river: add focus-previous-tags commandViktor Nagy1-0/+4
2021-07-12river: make CSD-filters apply to existing viewsLeon Henrik Plickat1-3/+3
2021-07-12river: add commands to remove filter entriesLeon Henrik Plickat1-2/+12
2021-06-26cursor: add option to warp on output changeLeon Henrik Plickat1-1/+8
On output change, if the cursor is not already on the newly focused output, it will now be warped to its center. The check is necessary, since focusing outputs with the pointer will be implemented in the future.
2021-06-23Add spacial output operationsLeon Henrik Plickat1-4/+5
List based output operations are tedious for complex output layouts.
2021-06-13Add `list-input-configs` commandLeon Henrik Plickat1-0/+3
2021-06-13Add `list-inputs` commandLeon Henrik Plickat1-0/+3
2021-06-13doc: Document input config commandsLeon Henrik Plickat1-0/+63
2021-06-08config: make attach-mode globalnovakane1-2/+1
2021-05-19doc: fixed command name in exampleLennard Hofmann1-1/+1
send-layout-value → set-layout-value
2021-05-03doc: remove outdated reference to river-layouts(1)Isaac Freund1-1/+1
2021-05-01rivertile: add -h/--help, improve man pageIsaac Freund1-6/+24
2021-04-27rivertile: support command line argumentsIsaac Freund1-1/+18
Add support for command line arguments to set default values for the various options of rivertile, bringing us back to rough feature parity with before the commit removing the river-options protocol.
2021-04-27river-layout: update to v2Isaac Freund2-0/+21
This implements the changes to the river-layout protocol proposed in the previous commit removing river-options.
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.