summaryrefslogtreecommitdiff
path: root/src/Messages.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 07:11:01 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commitdd586f1d8937f67e95504da167216d5413f05262 (patch)
treed9e9ee58ae81017741a6bfcc5e164cb89f28e8f3 /src/Messages.zig
parentc1dbb16d069a54f52533f346655b0fc49026c9a4 (diff)
downloadpardes-dd586f1d8937f67e95504da167216d5413f05262.tar.gz
pardes-dd586f1d8937f67e95504da167216d5413f05262.zip
G8: a notice leaves quicker than it arrives
The notice chip's motion was mostly there (a drop easing out on the Motion flavour, a dissolve easing in, Lift's shadow in tier 4 at its fade). Its dissolve took 300 ms against a 180 ms fall, the wrong way round for §8.1 (leaving quicker than arriving, 100 to 160 ms): MessageDissolve now defaults to 150. The field comments had the two easings swapped; the stack test pins a longer dissolve for the case it checks. docs/config.md and docs/effects.md say so. Tests: both timings in their bands, leaving quicker. Gates as G7 (no golden moved). Feel review: .scratch/render/notices/.
Diffstat (limited to 'src/Messages.zig')
-rw-r--r--src/Messages.zig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/Messages.zig b/src/Messages.zig
index 7d284e6b..36cd44da 100644
--- a/src/Messages.zig
+++ b/src/Messages.zig
@@ -768,6 +768,8 @@ test "messages stack, oldest on top, each on its own timing" {
const pane = p.panes[p.active].?;
try std.testing.expect(p.executeBuiltinLine(p.active, "Verbose off"));
try std.testing.expect(p.executeBuiltinLine(p.active, "MessageLinger 160"));
+ // A dissolve longer than a fall, so the second is caught mid-way.
+ try std.testing.expect(p.executeBuiltinLine(p.active, "MessageDissolve 300"));
// `Verbose off` announced itself before it took effect.
pane.msg_len = 0;
pane.msg_life = .{};
@@ -968,3 +970,10 @@ test "an idle core wants no wake and a lingering message sleeps to its linger's
p.advance(long_due);
try std.testing.expectEqual(Pane.MessagePhase.leaving, pane.msg_life.phase);
}
+
+test "a notice leaves quicker than it arrives, each within its §8.1 band" {
+ const settings: config.Runtime = .{};
+ try std.testing.expect(settings.message_dissolve_ms < settings.message_fall_ms);
+ try std.testing.expect(settings.message_fall_ms >= 150 and settings.message_fall_ms <= 220);
+ try std.testing.expect(settings.message_dissolve_ms >= 100 and settings.message_dissolve_ms <= 160);
+}