Commit graph

379 commits

Author SHA1 Message Date
Tim Culverhouse
0cd57fe0f5 widgets(terminal): implement many more CSI seqs 2024-06-10 14:18:32 -05:00
Tim Culverhouse
24ad3bf3da widgets(terminal): handle erase in display 2024-06-10 14:18:32 -05:00
Tim Culverhouse
c14a100eed widgets(terminal): handle horizontal tabs 2024-06-10 14:18:32 -05:00
Tim Culverhouse
1c5ecae8f0 widgets(terminal): implement CNL 2024-06-10 14:18:32 -05:00
Tim Culverhouse
99ff37840d widgets(terminal): refactor CUD and CR 2024-06-10 14:18:32 -05:00
Tim Culverhouse
2f2e38eea5 widgets(terminal): set global_vts to null on last exit 2024-06-10 14:18:32 -05:00
Tim Culverhouse
044b099227 widgets(terminal): handle scrolling_region in CUU, CUD 2024-06-10 14:18:32 -05:00
Tim Culverhouse
11ae2e7b29 widgets(terminal): prevent deadlock in draw
The draw method could obtain a lock but never free it due to the logic
of the if statement.
2024-06-10 14:18:32 -05:00
Tim Culverhouse
3a382eacdb widgets(terminal): fix overflow in CUP 2024-06-10 14:18:32 -05:00
Tim Culverhouse
aa9e492b26 widgets(terminal): simplify cursorLeft logic 2024-06-10 14:18:32 -05:00
Tim Culverhouse
cc77c98d32 widgets(terminal): implement CSI D 2024-06-10 14:18:32 -05:00
Tim Culverhouse
21f2a48a80 examples: update terminal example 2024-06-10 14:18:32 -05:00
Tim Culverhouse
d991755fe2 widgets(terminal): handle exiting events 2024-06-10 14:18:32 -05:00
Tim Culverhouse
ef62de5541 widgets(terminal): dirty handling, cursor up, cursor shapes 2024-06-10 14:18:32 -05:00
Tim Culverhouse
c52bb30cdc widgets(terminal): remove comment about default 2024-06-10 14:18:32 -05:00
Tim Culverhouse
3765dbef2b widgets(terminal): handle (some) wrapping 2024-06-10 14:18:32 -05:00
Tim Culverhouse
7a7f4892d7 widgets(terminal): simple key encoding, alt screen 2024-06-10 14:18:32 -05:00
Tim Culverhouse
78508b76bd widgets(terminal): improve logging 2024-06-10 14:18:32 -05:00
Tim Culverhouse
d36be9048c widgets(terminal): allow for always joining thread
Write an EOT into the tty stream so after killing the process we
*always* are able to join the thread. Maybe this is the very reason the
EOT control byte exists?
2024-06-10 14:18:32 -05:00
Tim Culverhouse
f9d2fc7532 widgets(terminal): append last byte to escape seqs 2024-06-10 14:18:32 -05:00
Tim Culverhouse
987f939bd8 widgets(terminal): support cursor mode 2024-06-10 14:18:32 -05:00
Tim Culverhouse
36854123fe widgets(terminal): use types for c0 and csi 2024-06-10 14:18:32 -05:00
Tim Culverhouse
ecb2ea20e4 widgets(terminal): more c0 control impls 2024-06-10 14:18:32 -05:00
Tim Culverhouse
3ff47e6845 widgets(terminal): remove comment 2024-06-10 14:18:32 -05:00
Tim Culverhouse
f21559cc51 widgets(terminal): begin terminal widget 2024-06-10 14:18:32 -05:00
Tim Culverhouse
f76b573a0b parser: fix remaining decrpm test
This test was passing because it's not meant to find the event. However
it was still using the wrong input
2024-06-10 14:17:48 -05:00
Tim Culverhouse
9c5e8898cd parser: fix parsing of DECRPM and tests
We were looking for the wrong sequence
2024-06-10 14:00:51 -05:00
CJ van den Berg
a69cf3273d build: export some symbols for thespian.Loop 2024-06-10 04:43:43 -07:00
Tim Culverhouse
180b6df4f6 ci: update docs runner to zig v0.13.0 2024-06-09 20:31:02 -05:00
Tim Culverhouse
75ac36ca61 update zig version in readme 2024-06-09 06:54:45 -05:00
Rylee Alanza Lyman
b7946a3393 fix: update test runner to 0.13.0 2024-06-09 04:53:58 -07:00
Rylee Lyman
e2c19c3c8f fix: update to zig 0.13, broken test 2024-06-09 04:53:58 -07:00
Jari Vetoniemi
9bbcebb7bc ScrollView: do scroll bounds checking early
The ScrollView will panic if scroll.y is given a number that is outside
the content size.
2024-06-08 19:45:22 -07:00
Tim Culverhouse
5a438e54f1 update GapBuffer and gitignore
In preparation for zig 0.13.0
2024-06-07 06:38:45 -05:00
Tim Culverhouse
0cb81e30eb parser: fix handling of function keys with kitty encoding 2024-06-05 12:52:49 -05:00
Tim Culverhouse
3c29f18251 examples(text_input): use all kitty flags 2024-06-05 12:37:27 -05:00
Tim Culverhouse
91152eecdf parser: remove log line 2024-06-05 11:56:08 -05:00
Tim Culverhouse
43a714de0c parser: fix query responses for kitty kbd, decrpm 2024-06-05 11:49:03 -05:00
Tim Culverhouse
4d9a0cc8d4 ci: add test and fmt PR workflow 2024-06-05 09:41:41 -05:00
CJ van den Berg
d21940bdbd build: make most dependencies optional 2024-06-05 07:31:46 -07:00
Tim Culverhouse
b2ffc953dd Release version 0.2.0 2024-06-05 08:53:15 -05:00
Tim Culverhouse
e8670bd585 tty(windows): refactor and complete windows tty
Refactor the tty implementations. Complete the windows implementation
2024-06-05 06:31:18 -07:00
Jari Vetoniemi
54def846bf TextView: add Error to buffer operations
Typed error sets are nice to have.
2024-06-04 12:07:25 -07:00
Jari Vetoniemi
71b8ecc7c2 TextView: fix cols when appending to a buffer
If appending to a buffer through writer for example, the cols may not be
correct if the writes don't end up in a newline (\n). Fix this by
keeping track of the cols of previous append.
2024-06-04 12:07:25 -07:00
Tim Culverhouse
ef028bfe72 examples: remove pause_tui 2024-06-03 08:19:40 -05:00
Tim Culverhouse
84cd9fdebe fix(loop): fix stopping and starting of loop
When stopping the loop, we never reset `should_quit` which caused the
program to not read any input if the loop were started again
2024-06-03 07:36:12 -05:00
Tim Culverhouse
052ff24c2f mouse: enable button motion tracking and any motion
Zellij doesn't support any motion at time of this commit, so we also try
to enable button motion first
2024-06-03 06:19:02 -05:00
Tim Culverhouse
3ea76daf28 vaxis: remove fixme 2024-06-02 17:58:32 -05:00
Tim Culverhouse
3ff1d0749a vaxis: use legacy sgrs for VHS_RECORD 2024-06-02 17:49:08 -05:00
Tim Culverhouse
83cfc4f318 readme: fix example
Fixes: #36
2024-06-02 17:48:56 -05:00