Mitchell Hashimoto
fb7cbd69c0
core: consider any paste with bracketed paste closer unsafe
...
Thanks to: https://thejh.net/misc/website-terminal-copy-paste
If a paste has the ending sentinel value for a bracketed paste
("\x1b[201~") then the shell may start processing data faster. We now
consider this unsafe even if the `clipboard-paste-bracketed-safe`
setting is true.
2024-06-08 14:38:49 -07:00
Mitchell Hashimoto
0d94fb61c9
terminal: all cursor movement needs to mark the old and new page dirty
2024-06-07 15:03:02 -07:00
Mitchell Hashimoto
c2b0bb6395
terminal: mark old/new rows as dirty when moving the cursor absolute
2024-06-07 14:55:02 -07:00
Mitchell Hashimoto
54ccefe838
Merge pull request #1832 from rockorager/csiDispatch-alias
...
stream: remove redundant alias handling in csiDispatch
2024-06-06 18:40:35 -07:00
Tim Culverhouse
4eddd919ef
stream: remove redundant alias handling in csiDispatch
...
The alias handling block only handles one alias, which is already
handled in the switch statement. Remove this block and rename all
references to 'action' back to 'input'.
2024-06-06 20:15:58 -05:00
Mitchell Hashimoto
86322db991
terminal: point coord y needs to be a larger int
...
See comment.
2024-06-03 14:25:37 -07:00
Mitchell Hashimoto
41afb62903
very minor nitpicks
2024-05-25 14:19:23 -07:00
Jan200101
94a7166028
terminal: support using the bright palette for bold text
2024-05-25 16:58:19 +02:00
Mitchell Hashimoto
0335b0eada
core: preedit modification sets full screen dirty
...
Fixes #1735
2024-05-07 19:19:58 -07:00
Mitchell Hashimoto
cd42888182
terminal: eraseRows sets dirty bits
2024-05-07 10:38:27 -07:00
Mitchell Hashimoto
f975861891
terminal: maintain dirty bits when rotating rows on clone
2024-05-07 10:36:54 -07:00
Mitchell Hashimoto
a1372a0efd
terminal: more dirty tracking
2024-05-07 09:55:32 -07:00
Mitchell Hashimoto
3cfce658c3
terminal: dirty tracking in more places, tests coverage
2024-05-07 09:52:03 -07:00
Mitchell Hashimoto
d3abe65ad6
terminal: only set selection dirty to true on clear if previously set
2024-05-06 18:35:51 -07:00
Mitchell Hashimoto
7c9ce0af73
terminal: Screen selection marks dirty
2024-05-01 20:41:53 -07:00
Mitchell Hashimoto
bb138becc5
terminal: resize causes full screen redraw
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
037f8d3a5e
terminal: set dirty bit for screen swap
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
7e52f94278
terminal: on clone, only mark rows dirty that were previously dirty
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
d47f14f86a
terminal: dirty tracking on screen clone
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
3f9e3c39a4
terminal: track dirty state of palette and reverse colors
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
f867fabf8e
terminal: new coordinate type
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
fb25f5cea1
terminal: more dirty tests
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
cfcd16354a
terminal: many more dirty checks
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
1c05939f17
terminal: deleteChars dirty
2024-05-01 20:31:49 -07:00
Mitchell Hashimoto
a53dbaaa31
terminal: more dirty tests
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
19ddbbc7d6
terminal: eraseRowBounded dirty tracking
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
0749b67832
terminal: index dirty tests one todo
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
b46e028069
terminal: scrollDown dirty tests
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
bd1a7d3db1
terminal: scrollDown dirty tests
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
58aa4cc10b
terminal: dirty tests for insertLines
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
f7a57bd2c8
terminal: dirty tests on t/b/l/r margins
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
981f031951
terminal: remove unused debug log
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
11c195e493
terminal: dirty tracking on print
with tests
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
7b750b7ed9
terminal: add dirty bits to the page structure
2024-05-01 20:31:48 -07:00
Mitchell Hashimoto
3f16234f72
terminal: Coordinate uses CellCountInt
2024-04-26 20:52:08 -07:00
Mitchell Hashimoto
15b7a37cf9
terminal: export Coordinate
2024-04-25 19:07:10 -07:00
Mitchell Hashimoto
1f09da02ad
terminal: relax cell zero value default test
2024-04-18 14:09:11 -07:00
Mitchell Hashimoto
910c8cb04a
terminal: another enum in a packed struct needs backing int
2024-04-17 20:50:50 -07:00
Mitchell Hashimoto
9ea78f981e
terminal: index (LF) that scrolls scroll region preserves SGR
...
Fixes #1676
The comment in the diff explains. This is a regression that was not unit
tested properly in the old implementation prior to the paged-terminal
merge.
2024-04-13 21:31:41 -07:00
Mitchell Hashimoto
733ce19654
terminal: handle case where eraseRowBounded happens at top of page
...
Fixes #1677
If eraseRowBounded is called at the top of a page AND there is a tracked
pin at the top of the page, then we'd have an integer overflow. The test
case covers this and this adds a fix.
2024-04-13 20:45:39 -07:00
Qwerasd
be07856647
fix(terminal/Screen): selectionString multi-page
...
Corrected logic for detecting if the current row is the end of the
selection. Previous logic was faulty because when I calculated the
current page y incorrectly, not realizing that it was already
available as `y`.
2024-04-04 17:59:42 -04:00
Qwerasd
b03f80cadd
terminal/Screen: improve selectionString page test
...
More readable (smaller) output when failing, catches more edge cases.
At the time of this commit, this test is failing. Changed primarily to
address the edge case that was missed before.
2024-04-04 17:44:06 -04:00
Qwerasd
8be145ec1f
fix(terminal/Sreen): selectionString across pages
...
Newlines after rows should only be omitted on the final row of the
entire SELECTION, not on the final row of each page/chunk.
2024-04-03 20:03:25 -04:00
Qwerasd
fa5646e762
test(terminal/Screen): selectionString across page boundaries
2024-04-03 19:28:02 -04:00
Mitchell Hashimoto
eb2a2e3931
fmt
2024-04-02 08:38:51 -07:00
Qwerasd
04ec859925
terminal/kitty_graphics: update tests
...
Kitty Graphics command structures have been changed to hold decoded payloads not base64 strings.
2024-03-31 22:28:53 -04:00
Qwerasd
51d3c2cf35
fix(kitty_graphics): set dirty state on various scroll operations
2024-03-31 21:49:28 -04:00
Qwerasd
ca4b55b486
terminal/kitty_graphics: ignore base64 padding
...
Also move all base64 decoding to inside of the command parser.
2024-03-31 21:09:37 -04:00
Qwerasd
5dee7e1430
terminal/kitty_graphics: update outdated comments
2024-03-31 19:29:56 -04:00
Qwerasd
5b509f9295
test(terminal/Screen): clearRows with protected cells
2024-03-29 16:47:53 -04:00