mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-18 01:36:08 +03:00
Fix cursor character not visible when cursor color matches background
This commit is contained in:
@ -471,16 +471,15 @@ vertex CellTextVertexOut cell_text_vertex(
|
|||||||
out.color = contrasted_color(uniforms.min_contrast, out.color, out.bg_color);
|
out.color = contrasted_color(uniforms.min_contrast, out.color, out.bg_color);
|
||||||
}
|
}
|
||||||
|
|
||||||
// If this cell is the cursor cell, then we need to change the color.
|
// Check if current position is under cursor (including wide cursor)
|
||||||
if (
|
bool is_cursor_pos = (
|
||||||
in.mode != MODE_TEXT_CURSOR &&
|
|
||||||
(
|
|
||||||
in.grid_pos.x == uniforms.cursor_pos.x ||
|
in.grid_pos.x == uniforms.cursor_pos.x ||
|
||||||
uniforms.cursor_wide &&
|
uniforms.cursor_wide &&
|
||||||
in.grid_pos.x == uniforms.cursor_pos.x + 1
|
in.grid_pos.x == uniforms.cursor_pos.x + 1
|
||||||
) &&
|
) && in.grid_pos.y == uniforms.cursor_pos.y;
|
||||||
in.grid_pos.y == uniforms.cursor_pos.y
|
|
||||||
) {
|
// If this cell is the cursor cell, then we need to change the color.
|
||||||
|
if (in.mode != MODE_TEXT_CURSOR && is_cursor_pos) {
|
||||||
out.color = load_color(
|
out.color = load_color(
|
||||||
uniforms.cursor_color,
|
uniforms.cursor_color,
|
||||||
uniforms.use_display_p3,
|
uniforms.use_display_p3,
|
||||||
@ -490,7 +489,8 @@ vertex CellTextVertexOut cell_text_vertex(
|
|||||||
|
|
||||||
// Don't bother rendering if the bg and fg colors are identical, just return
|
// Don't bother rendering if the bg and fg colors are identical, just return
|
||||||
// the same point which will be culled because it makes the quad zero sized.
|
// the same point which will be culled because it makes the quad zero sized.
|
||||||
if (all(out.color == out.bg_color)) {
|
// However, we should still render if this is the cursor position
|
||||||
|
if (all(out.color == out.bg_color) && !is_cursor_pos) {
|
||||||
out.position = float4(0.0);
|
out.position = float4(0.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user