438 Commits

Author SHA1 Message Date
Mitchell Hashimoto
2dc8ae2ed7 renderer/metal: move more frame state to the frame 2024-04-22 10:42:35 -07:00
Mitchell Hashimoto
1d41a3ccff renderer/metal: start setting up per-frame state 2024-04-22 10:42:35 -07:00
Mitchell Hashimoto
5f4b33d610 renderer/opengl: remove strikethrough fg mode 2024-04-22 10:40:26 -07:00
Mitchell Hashimoto
4398896905 renderer/opengl: strikethrough as sprite 2024-04-22 10:30:27 -07:00
Mitchell Hashimoto
ad08842e86 renderer/metal: remove strikethrough support from GPU 2024-04-22 10:26:51 -07:00
Mitchell Hashimoto
0f348e809e font: strikethrough uses sprite rendering 2024-04-22 10:25:33 -07:00
Mitchell Hashimoto
06df9b7867 font: remove old files 2024-04-06 20:10:57 -07:00
Mitchell Hashimoto
e3402cef4d address many fontmem todos 2024-04-06 20:00:22 -07:00
Mitchell Hashimoto
3b0b9c2cfd renderer/opengl: set the font grid 2024-04-06 19:55:00 -07:00
Mitchell Hashimoto
3afeac99e9 renderer/opengl: support font size change 2024-04-06 19:35:56 -07:00
Mitchell Hashimoto
506ba854fa core: font size changes work 2024-04-06 19:33:49 -07:00
Mitchell Hashimoto
b8d11e57c9 renderer/Metal: change font size works again 2024-04-06 10:55:58 -07:00
Mitchell Hashimoto
a22ca8e4c1 renderer/opengl: clean up texture sync 2024-04-06 09:34:34 -07:00
Mitchell Hashimoto
45f518851d renderer/opengl: convert to SharedGrid, new windows/tabs are frozen 2024-04-05 22:00:51 -07:00
Mitchell Hashimoto
6aa659c4b5 renderer/metal: re-enable preedit rendering 2024-04-05 21:39:39 -07:00
Mitchell Hashimoto
29b172b3ac renderer/metal: use new atlas APIs 2024-04-05 21:13:10 -07:00
Mitchell Hashimoto
c45747bf1f font: implement many rendering, caching functions for SharedGrid 2024-04-05 20:50:35 -07:00
Mitchell Hashimoto
329697779a renderer/metal: convert more 2024-04-05 18:51:26 -07:00
Mitchell Hashimoto
d6c048f1e3 renderer/metal: picking away at font group => grid changes 2024-04-05 15:35:16 -07:00
Mitchell Hashimoto
04e0cd29e5 core: begin converting to SharedGridSet, renderers still broken 2024-04-05 15:25:45 -07:00
Mitchell Hashimoto
fd9280429e renderer: re-enable URL underlining 2024-03-22 20:28:05 -07:00
Mitchell Hashimoto
7419794a7b renderer: convert link to new state 2024-03-22 20:28:05 -07:00
Mitchell Hashimoto
d1faa37b65 renderer/opengl: convert 2024-03-22 20:28:01 -07:00
Mitchell Hashimoto
a697e97e08 renderer/metal: fix kitty image offset on screen 2024-03-22 20:28:01 -07:00
Mitchell Hashimoto
0a3f431d1b renderer/metal: almost bring back kitty images, some bugs 2024-03-22 20:28:00 -07:00
Mitchell Hashimoto
9eeaa0d0a9 renderer/metal: re-enable selection awareness for shaping 2024-03-22 20:28:00 -07:00
Mitchell Hashimoto
49e8acbcd2 core: configurable scrollback limit 2024-03-22 20:27:59 -07:00
Mitchell Hashimoto
75255780e9 renderer/metal: show selections 2024-03-22 20:27:55 -07:00
Mitchell Hashimoto
21f09a9159 remove point.Viewport 2024-03-22 20:27:52 -07:00
Mitchell Hashimoto
ff0e07a907 renderer/metal: re-enable the cursor, it works 2024-03-22 20:27:52 -07:00
Mitchell Hashimoto
c61de49082 renderer/metal: port 2024-03-22 20:27:44 -07:00
Mitchell Hashimoto
25d84d697a termio/exec: get compiler errors gone 2024-03-22 20:27:44 -07:00
Mitchell Hashimoto
9b4ab0e209 zig build test with renamed terminal package 2024-03-22 20:27:44 -07:00
Mitchell Hashimoto
b48d24a546 update zig 2024-03-13 09:14:12 -07:00
Qwerasd
e8460fa2c2 fix(renderer): allocate enough room for fg cells
Previously encountered OOB when screen filled with cells with glyphs,
underlines, and strikethroughs. Also clarified comment slightly.
2024-03-03 20:26:51 -05:00
Mitchell Hashimoto
239a517710 Revert "renderer/metal: start extracting "visible" resources"
This reverts commit 0c1d288142a0d0bf31be13999e89bdc08bd18fb9.
2024-02-13 21:57:55 -08:00
Mitchell Hashimoto
387e5b242e Revert "renderer/metal: cache buf cells"
This reverts commit 9f6db11b95f1bfed79f9b653f2ffb2be81cfc158.
2024-02-13 21:57:50 -08:00
Mitchell Hashimoto
b602eba61b Revert "renderer/metal: move shaders to cached state"
This reverts commit bef83446d1cff42946c2a242e3c645350d00c574.
2024-02-13 21:57:49 -08:00
Mitchell Hashimoto
e10e45a935 Revert "renderer/metal: free resources when occluded"
This reverts commit b5d543705de4ea42407db9e2d49ae03f3ae5cf14.
2024-02-13 21:57:46 -08:00
Mitchell Hashimoto
b5d543705d renderer/metal: free resources when occluded 2024-02-13 20:07:41 -08:00
Mitchell Hashimoto
bef83446d1 renderer/metal: move shaders to cached state 2024-02-13 19:37:10 -08:00
Mitchell Hashimoto
9f6db11b95 renderer/metal: cache buf cells 2024-02-13 19:10:58 -08:00
Mitchell Hashimoto
0c1d288142 renderer/metal: start extracting "visible" resources 2024-02-13 09:44:40 -08:00
Mitchell Hashimoto
e1908f7cc7 renderer: handle renderer pause/redraw on occlusion 2024-02-13 09:21:04 -08:00
Jeffrey C. Ollie
18005ffa35 Fix shader time uniforms (#1462)
* fix shader time uniforms

* renderer/metal: one typo

---------

Co-authored-by: Mitchell Hashimoto <mitchell.hashimoto@gmail.com>
2024-02-04 20:50:07 -08:00
Mitchell Hashimoto
7b3deb13d8 renderer/metal: apply layerContentsPlacement on macOS to fix stretching
Fixes #42
2024-02-02 08:39:08 -08:00
Mitchell Hashimoto
07ebd2e6c0 renderer: only highlight link directly under mouse on line
Related to #1398
2024-02-01 14:01:42 -08:00
Mitchell Hashimoto
6de4533afb core: handle mouse capture events with link highlighting
Fixes #1416

At a high level, the issue is that when mouse capture is enabled (i.e. in
neovim), "shift" escapes the capture. So "cmd+shift" is equal to "cmd"
which doesn't get sent to the TUI program and so on. For link
highlighting which now requires "cmd" (super) is held, we were sending
"cmd+shift" to the renderer so we weren't checking for links.

So the core of this commit is respecting this scenario and stripping the
shift modifier.

This commit also found that when the mouse wasn't over a link, we were
always checking and highlighting links on line one of the visible
screen. This bug is fixed and should also result in a very slight
performance improvement on rendering in all cases.
2024-02-01 09:19:39 -08:00
Mitchell Hashimoto
43c105c363 renderer: constrain emoji to cell width
Fixes #1402
2024-01-28 09:07:49 -08:00
Leaf Garland
d1d7665510 Default to background color for cursor-text
Previously the default was black which doesn't work so well if the
cursor block is dark.
2024-01-28 20:20:40 +13:00