summaryrefslogtreecommitdiff
path: root/src/surface.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 07:47:39 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commitab668719385c94df3e274f71cb744f5917c1da7e (patch)
tree3f3002e8a7dec61e0b2e467828490405e0a14463 /src/surface.zig
parent87ad46cb7e7410c53419c20cef7df53ed4c15f60 (diff)
downloadpardes-ab668719385c94df3e274f71cb744f5917c1da7e.tar.gz
pardes-ab668719385c94df3e274f71cb744f5917c1da7e.zip
G12: Occlusion, pane bodies darkening faintly toward their edges
Occlusion on|off (off, a pixel shell's; Chrome.fx bit 2 — the glow bits field is now `fx`): four soft strips cast from just outside each pane body inward, clipped to the body and round a cursor, black pre-warped to linear light, 2% at most (§9.1) and under the lift's contrast ceiling, in the pane's own group. Tests: the shade stays inside the body, off the cursor, at most 2%. Gates as G11. Feel review: .scratch/render/occlusion/ (with an x40 diff).
Diffstat (limited to 'src/surface.zig')
-rw-r--r--src/surface.zig9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/surface.zig b/src/surface.zig
index 26783df4..02e4bb5d 100644
--- a/src/surface.zig
+++ b/src/surface.zig
@@ -448,10 +448,11 @@ pub const Chrome = struct {
decor_title_px: u8 = 2,
name_ink: [3]u8 = .{ 0, 0, 0 },
active_name_ink: [3]u8 = .{ 0, 0, 0 },
- /// A pixel shell's glows: bit 0 round the body's selection (G9,
- /// SelectionGlow), bit 1 under the word a look-hover would open (G11,
- /// HoverGlow).
- glows: u8 = 0,
+ /// A pixel shell's small effects: bit 0 a glow round the body's
+ /// selection (G9, SelectionGlow), bit 1 one under the word a look-hover
+ /// would open (G11, HoverGlow), bit 2 the bodies' edge shade (G12,
+ /// Occlusion).
+ fx: u8 = 0,
};
/// The canonical interface: what a frame of pardes IS. The tty shell writes