Commit graph

89 commits

Author SHA1 Message Date
Daniel Eklöf
74d30dc410
csd: buttons: use default color table as default colors
If the user hasn't configured any CSD button colors, use the color
scheme's default colors for blue/green/red.
2020-04-29 20:06:16 +02:00
Daniel Eklöf
cb7103dadc
doc: foot.5: man page references do not embolden the section number 2020-04-25 22:40:29 +02:00
Daniel Eklöf
6b464fcf31
doc: foot.5: user -> users 2020-04-25 22:40:19 +02:00
Daniel Eklöf
91199f8b97
doc: foot.5: padding and geometry are subject to output scaling 2020-04-25 22:39:53 +02:00
Daniel Eklöf
992ceed7e0
doc: foot.1: list what a bug report should contain 2020-04-04 20:54:28 +02:00
Daniel Eklöf
1a08d94da1
doc: foot.1: add link to issue reporting 2020-04-04 20:36:46 +02:00
Daniel Eklöf
934452e1d5
doc: foot.1: right mouse button extends current selection 2020-04-04 12:09:56 +02:00
Daniel Eklöf
0538b96dbb
doc: foot/footclient: fix highlighting of TITLE argument to --title 2020-04-01 20:01:31 +02:00
Daniel Eklöf
ec7a768487
conf: add 'title' conf option and --title command line option 2020-04-01 19:59:47 +02:00
Daniel Eklöf
4d52a870b4
conf: add app-id config option and --app-id command line option 2020-04-01 18:40:51 +02:00
Daniel Eklöf
371dd65949
doc: foot.5: minor updates to 'tweaks' 2020-03-30 20:21:23 +02:00
Daniel Eklöf
21b51db9bf
doc: fcft.5: document the 'tweak' options 2020-03-30 17:31:31 +02:00
Daniel Eklöf
a2a370acba
conf: rename 'startup-mode' to 'initial-window-mode' 2020-03-28 12:04:00 +01:00
Daniel Eklöf
758fd9fd58
client: add --maximized and --fullscreen
We now create a copy of the config for each client, and updates it
with the values passed from the client.

Since we're not actually cloning it (and e.g. strdup() all strings
etc) we can't call conf_destroy() to free it, but need to free just
the strings we've replaced.
2020-03-27 21:14:49 +01:00
Daniel Eklöf
728e23863c
foot: add --maximized and --fullscreen command line options 2020-03-26 19:47:00 +01:00
Daniel Eklöf
e197368c0f
config: add 'startup-mode' option
This option controls the initial window mode: windowed, maximized or
fullscreen. The default is windowed.
2020-03-26 19:39:12 +01:00
Daniel Eklöf
c87cec8c1e
conf: bindings: case insensitive matching against 'none' 2020-03-18 14:52:04 +01:00
Daniel Eklöf
ff3d4f89e9
doc: foot.5: spawn-terminal: mention OSC 7 2020-03-17 21:53:26 +01:00
Daniel Eklöf
11b8b7242e
doc: foot.1: document ctrl+shift+n 2020-03-17 21:52:44 +01:00
Daniel Eklöf
87d641695a
conf: change default key binding for spawn-terminal to ctrl+shift+n 2020-03-17 19:51:25 +01:00
Daniel Eklöf
7eba345acf
doc: foot.1: mention default value for '--log-colorize' 2020-03-17 12:54:33 +01:00
Daniel Eklöf
681201dda1
doc: foot.1: fix typo - this isn't yambar 2020-03-17 12:52:00 +01:00
Daniel Eklöf
7f9b7772f2
doc: foot.5: mention default value for 'pad' 2020-03-17 12:48:54 +01:00
Daniel Eklöf
8c9490e56c
doc: foot.5: mention default value for 'geometry' 2020-03-17 12:48:05 +01:00
Daniel Eklöf
a1ceb1f5ec
doc/foot.5: formatting fixes 2020-03-12 17:42:27 +01:00
Daniel Eklöf
a7b90b514c
doc/foot.5: mention that *all* actions can be used in mouse bindings 2020-03-12 17:24:54 +01:00
Daniel Eklöf
0e00b6fa15
doc/foot.5: add an example that uses Shift 2020-03-12 17:21:48 +01:00
Daniel Eklöf
5cbd0527d7
config: key-bindings: verify key combo isn't already mapped to another action 2020-03-12 17:19:09 +01:00
Daniel Eklöf
c58f9a9ef9
config: mouse-bindings: verify button isn't already mapped
A button may only be mapped to a single action. Detect when the user
tried to map the same button to multiple actions and error out.

To clear a binding (for example, to free up a button from the default
bindings), one can set the action it is bound to to
`NONE` (e.g. `primary-paste=NONE`).
2020-03-12 10:46:27 +01:00
Daniel Eklöf
45384839f0
config/input: implement mouse bindings
* New config section, "mouse-bindings", where bindings are defined on
  the form "action=BTN_<name>
* pointer_button() handler now scans the bindings list instead of
  hardcoding primary-paste to BTN_MIDDLE.
* The implementation handles single- double- and triple clicks in the
  bindings, but there is currently no way to define anything but a
  single-click binding in the configuration.
2020-03-12 10:20:05 +01:00
Daniel Eklöf
65ff582358
bindings: add minimize/maximize/fullscreen actions
These actions are by default not bound to anything.
2020-03-12 09:34:09 +01:00
Daniel Eklöf
214ef146a2
doc/foot.1: keyboard shortcuts: add pointer to foot(5) 2020-03-09 20:32:15 +01:00
Daniel Eklöf
dba880a088
doc/foot.5: document key bindings 2020-03-09 20:22:04 +01:00
Daniel Eklöf
27ef5b472a
config: change default CSD button width from 22 -> 26 2020-03-06 19:11:31 +01:00
Daniel Eklöf
c90d70b2bf
config: CSD borders are always invisible
That is, remove all configuration options and always draw them fully
transparent.
2020-03-03 18:18:59 +01:00
Daniel Eklöf
cb6616ef8a
render: csd: maximize: change default color to a lighter green 2020-03-02 21:11:17 +01:00
Daniel Eklöf
63a3d6ce03
render: csd: close: change default color to a lighter blue 2020-03-02 21:10:25 +01:00
Daniel Eklöf
b14c217fb6
render: csd: minimize: change default color to a lighter blue 2020-03-02 21:09:21 +01:00
Daniel Eklöf
9699c9b8bf
csd: initial implementation of minimize/maximize/close buttons 2020-03-02 20:29:28 +01:00
Daniel Eklöf
1f33b4a292
doc: foot.5: describe what each section in the configuration file does 2020-03-02 18:47:48 +01:00
Daniel Eklöf
74175b5bd1
config: prefer $SHELL over /etc/passwd
If the user hasn't configured a shell in footrc, use $SHELL. Only if
that variable isn't set do we use the shell from /etc/passwd.
2020-03-02 18:45:38 +01:00
Daniel Eklöf
22ce09eb44
config: make CSD user configurable
The user can now configure the following:

* Whether to prefer CSDs or SSDs. But note that this is only a hint to
  the compositor - it may deny our request. Furthermore, not all
  compositors implement the decoration manager protocol, meaning CSDs
  will be used regardless of the user configuration (GNOME/mutter
  being the most prominent one).
* Title bar size and color, including transparency
* Border size and color, including transparency

Also drop support for rendering the CSDs inside the main surface.
2020-03-02 18:42:49 +01:00
Daniel Eklöf
5717a0dfb0
config: change default geometry from 800x600 -> 700x500
If the display resolution *is* 800x600, using this size is bad since
there will typically be panels and other things on the screen too.

Not that 800x600 is something we expect to see in real life, but may
happen on virtual displays.
2020-02-29 11:01:23 +01:00
Daniel Eklöf
ac32bcda07
main: geometry defaults to 800x600 pixels 2020-02-25 19:05:48 +01:00
Daniel Eklöf
5c7fc3a0c7
README: add screenshot of sixel graphics 2020-02-22 22:04:28 +01:00
Daniel Eklöf
ae23023341
keymap: align backspace escapes with XTerm
Backspace now emits DEL for all non-ctrl modifier combos, and BS for
all ctrl modifier combos.

The alt modifier prefixes DEL/BS with ESC.

This also removes my own hack of mapping ctrl+backspace to
alt+backspace.

Describe backspace behavior in both the README and the man page.

TODO: implement DECBKM to allow applications to toggle the backspace
behavior.
2020-02-21 19:11:03 +01:00
Daniel Eklöf
3f3f1add9c
doc: foot.5: login-shell: add default value ('no') 2020-02-20 18:53:00 +01:00
Daniel Eklöf
84e54033ae
doc: foot.5: change 'shell' example, add login-shell 2020-02-20 18:49:23 +01:00
Daniel Eklöf
c1561e0c50
doc: add --login-shell 2020-02-20 18:36:52 +01:00
Daniel Eklöf
5b98510ea4
doc: foot.5: make 'pad' syntax/example clearer 2020-02-15 19:51:11 +01:00