Loop-crossfade-ux review fixes: parked-drag no longer fakes LOOP OFF, waveform label contrast fixed, hover memoizes its bank read
Also corrects the cap-area, em-dash, glyph-overhang and heuristic-comment findings noted in review.
This commit is contained in:
@@ -176,6 +176,21 @@ static void testEditingTheStartMarkerWhileOffLeavesTheEnableAndCrossfadeAlone()
|
||||
CHECK(w.start == 512);
|
||||
}
|
||||
|
||||
// Dragging the START marker while parked (never set) must not turn "DRAG TO SET LOOP" into
|
||||
// "LOOP OFF" — the ordinary gesture that exposed the bug, distinct from the retained-span case
|
||||
// above.
|
||||
static void testEditingTheStartMarkerWhileParkedStaysParked() {
|
||||
LoopMarks m = resolveLoopMarks(StoredLoop{}, kFrames);
|
||||
CHECK(m.parked && !m.hasLoop);
|
||||
m.start = 512;
|
||||
const LoopMarks after = writeThenRead(m);
|
||||
CHECK(!after.hasLoop);
|
||||
CHECK(after.parked);
|
||||
const LoopBounds d = defaultLoopBounds(kFrames);
|
||||
CHECK(after.loopStart == d.start && after.loopEnd == d.end);
|
||||
CHECK(after.start == 512);
|
||||
}
|
||||
|
||||
static void testANegativeCrossfadeNeverReachesTheStore() {
|
||||
LoopMarks m = resolveLoopMarks(storedSpan(true, 4000, 6000, 0), kFrames);
|
||||
m.crossfade = -1;
|
||||
@@ -197,6 +212,7 @@ int main() {
|
||||
testDraggingALoopMarkWhileOffTurnsItOn();
|
||||
|
||||
testEditingTheStartMarkerWhileOffLeavesTheEnableAndCrossfadeAlone();
|
||||
testEditingTheStartMarkerWhileParkedStaysParked();
|
||||
testANegativeCrossfadeNeverReachesTheStore();
|
||||
|
||||
if (g_fail == 0) {
|
||||
|
||||
Reference in New Issue
Block a user