922 Commits

Author SHA1 Message Date
Mitchell Hashimoto
24cc01e055 move wasm main to src/, export an Atlas API
We don't need the Atlas API for wasm at all, but its a good way to test
things work incrementally and its a pretty cool thing to have as a wasm
library really.
2022-12-01 13:02:17 -08:00
Mitchell Hashimoto
f871630fa4 move Atlas to font 2022-11-28 10:35:46 -08:00
Mitchell Hashimoto
2796a0b964 font: when resizing a glyph, scale metrics by same ratio
We rely on the top/left offset to position the glyph properly. When we
were resizing, we weren't properly recalculating this offset which led
to some glyphs slightly (or majorly) off depending on how much they
resized.
2022-11-27 22:06:25 -08:00
Mitchell Hashimoto
29cc8312d5 revert 2022-11-27 21:45:10 -08:00
Mitchell Hashimoto
4a3376d916 fix crash with cursor going off screen on resize 2022-11-27 21:06:11 -08:00
Mitchell Hashimoto
b8832833cb respect application cursor keys for arrow (DECCKM)
This fixes the arrow keys in htop.
2022-11-27 20:57:58 -08:00
Mitchell Hashimoto
0e55f4054e font: Shaper should replace 0 with 0x20 (space)
This didn't cause any real problems but it was a waste to trigger the
full font fallback system for codepoint 0.
2022-11-27 20:25:21 -08:00
Mitchell Hashimoto
379072566f remove underline support from shaders since we now use sprites 2022-11-27 16:18:00 -08:00
Mitchell Hashimoto
2b9a47edb2 metal: underline styles 2022-11-27 16:15:22 -08:00
Mitchell Hashimoto
bfc657395a curly underlines 2022-11-27 16:11:15 -08:00
Mitchell Hashimoto
fee681ac78 dashed underlines 2022-11-27 15:44:12 -08:00
Mitchell Hashimoto
6a32a30a16 font: render dotted underlines 2022-11-27 15:39:18 -08:00
Mitchell Hashimoto
c2d08c3071 terminal: parse all underline styles 2022-11-27 15:39:12 -08:00
Mitchell Hashimoto
5045e51b99 unknown underline styles render a single underline 2022-11-27 15:30:49 -08:00
Mitchell Hashimoto
d7fe6a1c47 fix sgr parsing for underline styles 2022-11-27 15:30:02 -08:00
Mitchell Hashimoto
3a248f6051 opengl: render underlines using sprite system, not shaders 2022-11-27 15:18:03 -08:00
Mitchell Hashimoto
278668c953 font: draw single and double underlines as sprites 2022-11-27 15:14:49 -08:00
Mitchell Hashimoto
584149121d use enum for underline styles 2022-11-27 14:16:51 -08:00
Mitchell Hashimoto
84efd2ac5f font: use Canvas more, Canvas rect 2022-11-27 14:08:15 -08:00
Mitchell Hashimoto
28d386967d font: introduce Canvas, start converting Box 2022-11-27 13:54:43 -08:00
Mitchell Hashimoto
b34e336c5c rearrange box rendering to prepare for more sprite drawing 2022-11-27 10:17:12 -08:00
Mitchell Hashimoto
3fbeca914b terminal: fix possible crash when increasing columns in resize
If a cell has graphemes attached to it, we'd share the grapheme map.
This copies it.
2022-11-26 17:44:08 -08:00
Mitchell Hashimoto
d64b0e371e terminal: copy grapheme map when resizing and ensure proper cleanup 2022-11-26 17:33:52 -08:00
Mitchell Hashimoto
f01930695a metal: continue to render if single cell fails 2022-11-25 15:30:03 -08:00
Mitchell Hashimoto
1062a39681 more glyphs 2022-11-25 15:28:47 -08:00
Mitchell Hashimoto
4cac375fcf more 2022-11-25 15:22:59 -08:00
Mitchell Hashimoto
d2727b1f5c more wedges 2022-11-25 15:18:36 -08:00
Mitchell Hashimoto
120dfb4043 more wedges 2022-11-25 15:12:34 -08:00
Mitchell Hashimoto
2c9b3e2f9b wedge triangles 2022-11-25 15:02:12 -08:00
Mitchell Hashimoto
7676c1c52b sextants 2022-11-25 14:41:17 -08:00
Mitchell Hashimoto
781571d7fb braille 2022-11-25 14:26:19 -08:00
Mitchell Hashimoto
43c89cb449 more glyphs 2022-11-25 14:10:31 -08:00
Mitchell Hashimoto
353172199a lot more boxes 2022-11-25 13:53:24 -08:00
Mitchell Hashimoto
f727b30ca6 more box fonts 2022-11-25 13:36:26 -08:00
Mitchell Hashimoto
179f5e6283 opengl: continue rendering if single cell has error 2022-11-25 13:16:07 -08:00
Mitchell Hashimoto
8ad5dd1853 arc glyphs 2022-11-25 13:04:44 -08:00
Mitchell Hashimoto
72cd107e6a many more boxes 2022-11-25 10:57:38 -08:00
Mitchell Hashimoto
ef16ba263f 16 more 2022-11-25 10:40:33 -08:00
Mitchell Hashimoto
58292e5930 16 more 2022-11-24 12:01:15 -08:00
Mitchell Hashimoto
dcd16c4d95 16 more 2022-11-24 11:49:17 -08:00
Mitchell Hashimoto
d8561ba23a 16 more 2022-11-24 11:27:32 -08:00
Mitchell Hashimoto
8033a4a665 more 2022-11-24 11:16:22 -08:00
Mitchell Hashimoto
3b3c93af02 metal: support for box glyphs 2022-11-24 10:21:28 -08:00
Mitchell Hashimoto
fc8f36a59e more glyphs for the glyph god 2022-11-24 10:21:28 -08:00
Mitchell Hashimoto
6e30238d36 more... more... 2022-11-24 10:21:27 -08:00
Mitchell Hashimoto
fbd5eba11a font: more box glyphs 2022-11-24 10:21:27 -08:00
Mitchell Hashimoto
cb8f55229b remove test code 2022-11-24 10:21:27 -08:00
Mitchell Hashimoto
6b2ca86ed8 fix offset for box glyphs 2022-11-24 10:21:27 -08:00
Mitchell Hashimoto
b9f97217ab font: shaper handles special fonts 2022-11-24 10:21:27 -08:00
Mitchell Hashimoto
9bc8d85d67 test rendering box glyphs, looks OKAY 2022-11-24 10:21:27 -08:00