57 Commits

Author SHA1 Message Date
Mitchell Hashimoto
3530f13a7a terminal/new: clean up redundancies 2024-03-22 20:27:34 -07:00
Mitchell Hashimoto
95fca1d72b terminal/new: handle blank lines in reflow 2024-03-22 20:27:34 -07:00
Mitchell Hashimoto
b4119455fd terminal/new: less cols cursor tests 2024-03-22 20:27:34 -07:00
Mitchell Hashimoto
89be10bad5 terminal/new: start reflow of less cols 2024-03-22 20:27:34 -07:00
Mitchell Hashimoto
2147097631 terminal/new: fix up cursor on grow cols 2024-03-22 20:27:34 -07:00
Mitchell Hashimoto
fad08ade5b terminal/new: lots more tests ported 2024-03-22 20:27:34 -07:00
Mitchell Hashimoto
f1887e7b1b terminal/new: resize more cols ignores trailing empty cells 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
b92d5cdb58 terminal/new: recalculate cursor on more cols reflow 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
7b70dd1338 terminal/new: more resize more cols tests 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
43629870d5 terminal/new: resize without reflow updates cursor 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
23d8509188 terminal/new: first grow cols reflow work, not done 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
324d785147 terminal/new: pagelist resize with reflow more cols with no wrapped rows 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
636e74d273 terminal/new: pagelist resize no reflow more cols handles cap change 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
9006a3f431 bench/resize 2024-03-22 20:27:33 -07:00
Mitchell Hashimoto
eb3323940d terminal/new: more no reflow tests 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
2e21f2179d terminal/new: port lots of no reflow screen resizes 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
9269d70f03 terminal/new: resize less rows trims blank lines first 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
baa3903d22 terminal/new: screen resize no reflow less rows 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
df1c935a3a terminal/new: pagelist resize rows and cols 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
437980a28d terminal/new: pagelist more cols 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
4566304e1d terminal/new: pagelist more resize fixes 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
99b9d6fe8c terminal/new: resize no reflow pagelist less columns 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
f04d26442f terminal/new: pagelist resize rows only no reflow 2024-03-22 20:27:32 -07:00
Mitchell Hashimoto
07eaedf1fb terminal/new: eraseRows viewport behavior 2024-03-22 20:27:31 -07:00
Mitchell Hashimoto
06376fcb0b terminal/new: clone can take a shared pool 2024-03-22 20:27:31 -07:00
Mitchell Hashimoto
bda44f9b0c terminal/new: Screen.clone 2024-03-22 20:27:31 -07:00
Mitchell Hashimoto
daf113b147 terminal/new: page clone, screen/pagelist clone wip 2024-03-22 20:27:31 -07:00
Mitchell Hashimoto
3842ca9212 terminal/new: screen scrolling tests 2024-03-22 20:27:30 -07:00
Mitchell Hashimoto
7ce4010f7a terminal/new: scrolling viewport into active area pins to active 2024-03-22 20:27:30 -07:00
Mitchell Hashimoto
e94d0f26a7 terminal/new: properly handle zero scrollback configs 2024-03-22 20:27:30 -07:00
Mitchell Hashimoto
5ad6228822 terminal/new: eraseDisplay history 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
6b5682021e terminal/new: PageList.erase 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
1d30577506 terminal/new: scroll clear 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
6e0df767cf terminal/new: eraseRows 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
55b34251ac terminal/new: pagelist can iterate over history 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
a8b1498a2b terminal/new: screen has more logic, eraseActive 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
998320f32a terminal/new: pagelist rowChunkIterator 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
345b246e06 terminal/new: use new pagelist grow mechanism that prunes 2024-03-22 20:27:29 -07:00
Mitchell Hashimoto
79146e3abd terminal/new: PageList respects max size, prunes scrollback 2024-03-22 20:27:28 -07:00
Mitchell Hashimoto
09f8c17800 terminal/new: erase according to bg sgr 2024-03-22 20:27:27 -07:00
Mitchell Hashimoto
e8d548e8d0 terminal/new: scroll by delta 2024-03-22 20:27:25 -07:00
Mitchell Hashimoto
4c374d7977 terminal/new: PageList scrolling 2024-03-22 20:27:25 -07:00
Mitchell Hashimoto
587289662f terminal/new: wide char support 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
21c6026922 terminal/new: pagelist doesn't actively maintain active offset 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
de3d1e4df7 terminal/new: clean up 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
1088176f94 terminal/new: create in proper sizes 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
1070f045ff terminal/new: page capacity can be adjusted while retaining byte size 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
f2d4b64032 terminal/new: using arena + pool is faster for page init 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
f929c86d18 terminal/new: fix allocation 2024-03-22 20:27:19 -07:00
Mitchell Hashimoto
424f121104 terminal/new: pages must use mmap directly 2024-03-22 20:27:18 -07:00