Piotr Kocia
c22ec6a9b9
fix vimode selection breaking on focus loss
2025-12-02 11:25:03 +01:00
Piotr Kocia
8215c8598d
do not end vimode selection on focus loss
2025-12-02 11:25:03 +01:00
Piotr Kocia
fefe3c7d81
reformat comments
2025-12-02 11:25:03 +01:00
Piotr Kocia
94d773a262
fix selection outside view crashes
2025-12-02 11:25:03 +01:00
Piotr Kocia
5fc55b8fbd
mouse scrolling and selection
2025-12-02 11:25:03 +01:00
Piotr Kocia
a163484f25
restore cursor position inbetween consecutive searches
2025-12-02 11:25:03 +01:00
Piotr Kocia
19e8dad788
fix crash on cursor refresh
2025-12-02 11:25:03 +01:00
Piotr Kocia
4a0c7d6f0b
fix pgo not compiling
2025-12-02 11:25:03 +01:00
Piotr Kocia
01d26270f6
fix incorrect counts in tests
2025-12-02 11:25:03 +01:00
Piotr Kocia
f41558fc80
add movement and deletion search keybinds
2025-12-02 11:25:03 +01:00
Piotr Kocia
7b3d7bf1f1
add unicode-input to search
2025-12-02 11:25:03 +01:00
Piotr Kocia
9f9c1e11e2
implement paste
2025-12-02 11:25:03 +01:00
Piotr Kocia
c1eee29fbe
fix highlights being cleared on confirm
2025-12-02 11:25:03 +01:00
Piotr Kocia
ae09b12501
fix vimode not working in alt grid
2025-12-02 11:25:03 +01:00
Piotr Kocia
210325d8aa
reformat
2025-12-02 11:25:03 +01:00
Piotr Kocia
41987537cf
comment fixes
2025-12-02 11:25:03 +01:00
Piotr Kocia
68685fdf13
highlight colors
2025-12-02 11:25:03 +01:00
Piotr Kocia
2609206c98
add vimode cursor as tracking point to reflow
2025-12-02 11:25:03 +01:00
Piotr Kocia
a168a78087
resolve todos
2025-12-02 11:25:03 +01:00
Piotr Kocia
602e6c1ebc
increment/decrement follow cursor
2025-12-02 11:25:03 +01:00
Piotr Kocia
36784b59fa
remove search.c and search.h
2025-12-02 11:25:03 +01:00
Piotr Kocia
02fdc26fcb
cleanup
2025-12-02 11:25:03 +01:00
Piotr Kocia
26266dff3b
motions
2025-12-02 11:24:53 +01:00
Piotr Kocia
23c95f1dea
minor cleanup
2025-12-02 11:00:05 +01:00
Piotr Kocia
2d8e1d7295
render prestring
2025-12-02 11:00:05 +01:00
Piotr Kocia
2033b267d8
rename
2025-12-02 11:00:05 +01:00
Piotr Kocia
66a3e53b31
fix selection
2025-12-02 11:00:05 +01:00
Piotr Kocia
358155ac7d
refresh vimode cursor
2025-12-02 11:00:05 +01:00
Piotr Kocia
ada54c7b86
fix FIRST_LINE
2025-12-02 11:00:05 +01:00
Piotr Kocia
4aacf44e8b
remove quote-wise selection mode
2025-12-02 11:00:05 +01:00
Piotr Kocia
43dd569afc
search highlights
2025-12-02 11:00:05 +01:00
Piotr Kocia
67120e9940
implement search
2025-12-02 11:00:05 +01:00
Piotr Kocia
e2c4ea3535
initial vimode implementation
2025-12-02 11:00:05 +01:00
Daniel Eklöf
be19ca2b20
client: add missing <limits.h> (for CHAR_MAX)
...
Closes #2221
2025-11-29 09:47:22 +01:00
Daniel Eklöf
fc9625678f
config: add toplevel-tag=TAG
...
Add support for the new xdg-toplevel-tag-v1 Wayland protocol, by
exposing a new config option, `toplevel-tag`, and a corresponding
command option, `--toplevel-tag` (in both `foot` and `footclient`).
This can help the compositor with session management, or custom window
rules.
Closes #2212
2025-11-12 11:04:25 +01:00
Daniel Eklöf
c9abab0807
changelog: triple-click when there's a quote in the last column
2025-11-12 07:46:34 +01:00
Johannes Altmanninger
5cb8ff2e9c
Fix assertion failure triple-clicking line with quote in last column
...
By default, triple-click tries to select quoted strings within a
logical line. This also works if the line spans multiple screen lines.
If there is a quote character in the last column:
printf %"$COLUMNS"s \'; printf wrapped; sleep inf
and I triple-click on the following soft-wrapped line, there's an
assertion failure because the column next to the quote is out of range.
The quote position has been found by walking at least one cell
backwards from "pos". This means that if the quote position is in
the very last column, there must be a row below.
Also move the assertion to be a pre-condition, though that's debatable.
2025-11-12 07:41:35 +01:00
Daniel Eklöf
1fce0e69f5
changelog: case sensitive scrollback search: move to correct release
2025-11-01 08:12:52 +01:00
Daniel Eklöf
9728ada028
csi: focus mode (private mode 1004): send focus event immediate, when enabled
...
This lets the application now the current state, without having to
wait for the user to switch focus.
Fixes #2202
2025-11-01 08:12:03 +01:00
Ronan Pigott
143f220527
search: do not emit composing keys
...
When we are in the composing state for XCompose key sequences, we
should not add the compose component keys to the search buffer.
2025-11-01 08:08:55 +01:00
c4llv07e
5ae4955e83
search: use case insensitive search only if there's no uppercase in search
2025-10-30 06:36:12 +01:00
c4llv07e
71de0c45bc
char32: add helper functions to work with c32 case
2025-10-30 06:35:02 +01:00
Andrei
19466a21d8
doc: foot.ini: fix typo
2025-10-24 11:11:52 -07:00
Daniel Eklöf
5587604469
input: keymap(): use a goto-label on error, to ensure we always close the keymap FD
2025-10-18 08:23:53 +02:00
Daniel Eklöf
82e75851e4
changelog: add new 'unreleased' section
2025-10-16 08:50:31 +02:00
Daniel Eklöf
e114a5f02f
Merge branch 'releases/1.25'
2025-10-16 08:50:13 +02:00
Daniel Eklöf
b44a62724c
meson: bump version to 1.25.0
2025-10-16 08:46:58 +02:00
Daniel Eklöf
dc5a921d2c
changelog: prepare for 1.25.0
2025-10-16 08:46:36 +02:00
Daniel Eklöf
612adda384
render: don't warn about immediate buffer release if pre-apply-damage has been activated
2025-10-16 08:45:07 +02:00
Daniel Eklöf
dbf18ba444
wayland: always render a new frame after a fullscreen change
...
This is needed, since we disable alpha in fullscreen, and since we use
different image buffer formats (XRGB vs. ARGB) when we have alpha
vs. when we don't (and fullscreen always disables alpha).
Normally, this happens anyway, as the window is resized when going in
or out from fullscreen. But, it's technically possible for a
compositor to change an application's fullscreen state without
resizing the window.
2025-10-15 09:41:52 +02:00