Mitchell Hashimoto
1bd92619b1
renderer: shadertoy functions
2023-11-17 21:50:35 -08:00
Mitchell Hashimoto
c347148fd7
renderer/metal: CRT effect, ugly hacky code
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
28246a80b8
renderer/metal: release some of our shader initialization objects
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
3095dce685
renderer/metal: wip for loading custom shader pipelines
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
389712a698
renderer/opengl: switch to new update vs draw
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
0e92f68228
renderer: separate update frame data from draw
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
67dce5ce0e
update zig-objc
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
45dfbfe53c
renderer: address issue with inverted cells
2023-11-17 21:47:24 -08:00
Raiden1411
fd444b6d05
renderer: add support for metal
2023-11-18 01:08:18 +00:00
Raiden1411
7a239835d2
core: add config option to invert fg and bg of cell when selected
2023-11-18 01:04:14 +00:00
Krzysztof Wolicki
44a48f62f1
change unmodified var
s to const
s in anticipation of zig changes
2023-11-17 15:46:46 +01:00
Mitchell Hashimoto
b5bf7e9d3b
Merge pull request #890 from mitchellh/faint-bg
...
renderer: faint should not be applied to bg alpha
2023-11-15 11:41:35 -08:00
Mitchell Hashimoto
ed3e3764d9
renderer: faint should not be applied to bg alpha
...
Fixes #889
2023-11-15 11:38:16 -08:00
Mitchell Hashimoto
ad24e5e687
renderer/opengl: use new preedit format
2023-11-15 09:59:08 -08:00
Mitchell Hashimoto
7457b40a45
renderer/metal: handle preedit wider than our screen
2023-11-15 09:53:51 -08:00
Mitchell Hashimoto
50f0aaf26b
renderer/metal: support multi-codepoint preedit text
2023-11-15 09:49:28 -08:00
Mitchell Hashimoto
5c8c4bb06e
renderer/opengl: handle wide preedit
2023-11-10 17:30:14 -08:00
Mitchell Hashimoto
ce4541dd61
core, renderer: handle wide preedit chars
...
Fixes #855
2023-11-10 17:26:36 -08:00
Gregory Anders
171292a063
core: implement OSC 12 and OSC 112 to query/set/reset cursor color
2023-11-09 16:21:07 -06:00
Gregory Anders
33753f59c8
core: implement OSC 104, 110, and 111 to reset colors
2023-11-09 16:17:21 -06:00
Gregory Anders
1c0b79c40f
core: separate default colors from modifiable colors
...
Default colors are those set by the user in the config file, or an
actual default value if unset. The actual colors are modifiable and can
be changed using the OSC 4, 10, and 11 sequences.
2023-11-09 14:08:14 -06:00
Gregory Anders
006e93bd08
core: implement setting colors with OSC 4, 10, and 11
2023-11-09 11:59:20 -06:00
Nawaf
b3dd363e3b
fix macos font being drawn thicker when updating font size
2023-11-06 00:25:38 -05:00
Lukáš Dvořák
bca7140248
balanced padding cleanup
2023-10-30 14:56:02 +01:00
Lukáš Dvořák
6887ea7e53
fix window-padding-balance in combination with explicit padding
2023-10-30 13:46:19 +01:00
Mitchell Hashimoto
06edc311a1
renderer/opengl: reclaim cell buffer memory when resizing
2023-10-28 11:38:20 -07:00
Mitchell Hashimoto
95f0b4779d
renderer/metal: reclaim cell buffer memory when resizing
2023-10-28 11:30:02 -07:00
Mitchell Hashimoto
a162c7c47f
inspector: move inspector to dedicated folder
2023-10-24 15:27:16 -07:00
Mitchell Hashimoto
5a299e14e4
all threads are notified of inspector state, trigger render
2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
7a30d1080e
core: hook up all the inspector activation state and such
2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
a5066635f0
renderer: do not downsample oversized glyphs
...
Fixes #696
We should rely on the rasterizer to create glyphs of the proper size,
including doing CPU resizing if necessary.
2023-10-17 10:55:04 -07:00
Mitchell Hashimoto
ab35a21dc2
renderer: render cursor behind colored emoji
2023-10-16 12:57:23 -07:00
Mitchell Hashimoto
0918731d9a
renderer/metal: need to set proper alpha for fg mode in shader
...
Fixes #673
2023-10-16 12:22:51 -07:00
Mitchell Hashimoto
78b5c1db77
renderer: handle error.NotFound for timer cancellation
...
Fixes #685
This is expected in very rare scenarios where under heavy load, a timer
could complete before a cancellation request is processed, resulting in
a "not found".
2023-10-15 21:35:13 -07:00
Mitchell Hashimoto
b4070eb67e
renderer: unfocused cursor should always be fully opaque
2023-10-14 14:11:15 -07:00
Mitchell Hashimoto
ff38d3e358
config: add cursor-opacity
2023-10-14 14:08:06 -07:00
Mitchell Hashimoto
7167cf9054
renderer: default cursor color to foreground
...
Fixes #667
2023-10-14 14:02:17 -07:00
Mitchell Hashimoto
4f5a05e087
renderer: render cursor over wide character if on tail part
2023-10-13 14:39:10 -07:00
Mitchell Hashimoto
7995d44cfb
font: render sprites with a configurable grid cell width
...
Fixes #666
2023-10-13 14:31:55 -07:00
Mitchell Hashimoto
b98cc3d79f
config: add remaining font modifiers
2023-10-04 22:08:19 -07:00
Mitchell Hashimoto
2b28106837
update zig
2023-10-02 08:18:35 -07:00
Mitchell Hashimoto
5c1fbd09cd
font: shaper dynamically allocates cell buffer
...
Pathlogical grapheme clusters can use a LOT of memory, so we need to be
able to grow.
2023-09-26 17:59:16 -07:00
Mitchell Hashimoto
b1389cbbfe
renderer: support font style changing at runtime
2023-09-26 08:51:04 -07:00
Mitchell Hashimoto
4b791f3ee1
renderer: always reset font group on config change
2023-09-26 08:18:11 -07:00
Mitchell Hashimoto
4b8056afd8
renderer/opengl: remove gpucell lru cache
...
There was no noticable performance improvement and it complicated the
code and also diverged it from Metal.
2023-09-22 09:47:01 -07:00
Mitchell Hashimoto
bebf6bb108
renderer/opengl: only skip drawing cells if they're empty, not clear
...
Fixes #518
This optimization to avoid a draw call to OpenGL was premature. This
optimization is fine but needs to happen only for the draw calls. We
still need to clear the screen if we have no cells.
This was causing #518 because when the cursor was blinked (invisible)
then we had no cells so we'd skip the draw call which reused the old
buffer state for OpenGL.
2023-09-22 09:45:26 -07:00
Mitchell Hashimoto
0cf2ed6a9f
renderer/opengl: gl state init needs to set blending, realization
2023-09-16 11:26:07 -07:00
Mitchell Hashimoto
a19acf14d2
renderer/opengl: support reloading the Opengl state
2023-09-16 09:37:29 -07:00
Mitchell Hashimoto
58100f0a00
renderer/opengl: OpenGL state may be nil to disable rendering
2023-09-16 09:08:35 -07:00
Mitchell Hashimoto
10989ae7b0
renderer: implement underline cursor
2023-09-10 22:05:47 -07:00