Aus #156, Durchgang 6. Fund in #408, Abschluss 4352 („Das passt nicht zusammen und ist nicht angefasst“).
Befund
Seit #408 zeigt jede Zeile der Timeline rechts ihr Wertefeld. Ohne Keys zeigt es den Wert, den das Objekt hat (lineValueAt → heldBy, src/core/model/animation.ts:635–649).
Ein Doppelklick in eine Zelle einer Zeile ohne Keys setzt aber den Standardwert der Property (SetAnimationKeyCommand, src/core/commands/animationCommands.ts:238: current ?? (track.relative ? 0 : def.default)).
Beispiel: Ein Sprite steht auf X = 40, die neue Zeile X zeigt 40. Ein Doppelklick auf Frame 0 setzt einen Key mit 0, das Sprite springt.
Vorschlag
Der Doppelklick nimmt denselben Wert wie das Feld: den gehaltenen Wert des Objekts, bei einer relativen Zeile 0.
Die Regel liegt dann an einer Stelle: SetAnimationKeyCommand fragt dieselbe Funktion wie das Feld.
Offen (mit Vorschlag)
Zeile, deren Ziel weg ist: Vorschlag: wie heute, Hinweis statt Key.
Zeile mit Keys: bleibt, wie sie ist (der Wert der Kurve an dieser Stelle).
Fertig, wenn
Unit-Test: Doppelklick-Kommando in einer leeren Zeile X eines Sprites auf X = 40 setzt 40. Gegenprobe mit def.default wird rot.
e2e 25: Doppelklick in eine neue Zeile, der Key hat den Wert, den das Feld vorher zeigte.
Aus #156, Durchgang 6. Fund in #408, Abschluss 4352 („Das passt nicht zusammen und ist nicht angefasst“).
## Befund
- Seit #408 zeigt jede Zeile der Timeline rechts ihr Wertefeld. **Ohne Keys** zeigt es den Wert, den das Objekt hat (`lineValueAt` → `heldBy`, `src/core/model/animation.ts:635`–`649`).
- Ein **Doppelklick in eine Zelle** einer Zeile ohne Keys setzt aber den **Standardwert der Property** (`SetAnimationKeyCommand`, `src/core/commands/animationCommands.ts:238`: `current ?? (track.relative ? 0 : def.default)`).
- Beispiel: Ein Sprite steht auf X = 40, die neue Zeile *X* zeigt 40. Ein Doppelklick auf Frame 0 setzt einen Key mit 0, das Sprite springt.
## Vorschlag
- Der Doppelklick nimmt denselben Wert wie das Feld: den gehaltenen Wert des Objekts, bei einer relativen Zeile 0.
- Die Regel liegt dann an einer Stelle: `SetAnimationKeyCommand` fragt dieselbe Funktion wie das Feld.
## Offen (mit Vorschlag)
1. **Zeile, deren Ziel weg ist:** Vorschlag: wie heute, Hinweis statt Key.
2. **Zeile mit Keys:** bleibt, wie sie ist (der Wert der Kurve an dieser Stelle).
## Fertig, wenn
- Unit-Test: Doppelklick-Kommando in einer leeren Zeile *X* eines Sprites auf X = 40 setzt 40. Gegenprobe mit `def.default` wird rot.
- e2e 25: Doppelklick in eine neue Zeile, der Key hat den Wert, den das Feld vorher zeigte.
meleki
added the new label 2026-10-11 21:24:19 +02:00
Erledigt mit c425eea, im Wiki 7c6c53f (Animations).
Ein Doppelklick in eine Zeile ohne Keys setzt jetzt den Wert, den das Feld der Zeile anzeigt, nicht mehr den Standardwert der Property.
Feld und Doppelklick fragen dieselbe Regel (trackHeld in src/core/model/animation.ts). Relative Zeilen bekommen weiter 0, Zeilen mit Keys den Wert der Kurve an dieser Stelle.
Tests: Unit animation 87 grün (1 neu, Gegenprobe mit der alten Regel def.default rot: 0 statt 40), e2e 25i-ii grün (Arm auf x 40, Key { frame: 3, value: 40 }). Ein CI-Lauf dazu fehlt, weil ci.yml beim Push deaktiviert war.
Erledigt mit c425eea, im Wiki 7c6c53f (*Animations*).
- Ein Doppelklick in eine Zeile ohne Keys setzt jetzt den Wert, den das Feld der Zeile anzeigt, nicht mehr den Standardwert der Property.
- Feld und Doppelklick fragen dieselbe Regel (`trackHeld` in `src/core/model/animation.ts`). Relative Zeilen bekommen weiter 0, Zeilen mit Keys den Wert der Kurve an dieser Stelle.
Tests: Unit animation 87 grün (1 neu, Gegenprobe mit der alten Regel `def.default` rot: 0 statt 40), e2e 25i-ii grün (Arm auf x 40, Key `{ frame: 3, value: 40 }`). Ein CI-Lauf dazu fehlt, weil `ci.yml` beim Push deaktiviert war.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Aus #156, Durchgang 6. Fund in #408, Abschluss 4352 („Das passt nicht zusammen und ist nicht angefasst“).
Befund
lineValueAt→heldBy,src/core/model/animation.ts:635–649).SetAnimationKeyCommand,src/core/commands/animationCommands.ts:238:current ?? (track.relative ? 0 : def.default)).Vorschlag
SetAnimationKeyCommandfragt dieselbe Funktion wie das Feld.Offen (mit Vorschlag)
Fertig, wenn
def.defaultwird rot.vorschläge passen
Erledigt mit
c425eea, im Wiki 7c6c53f (Animations).trackHeldinsrc/core/model/animation.ts). Relative Zeilen bekommen weiter 0, Zeilen mit Keys den Wert der Kurve an dieser Stelle.Tests: Unit animation 87 grün (1 neu, Gegenprobe mit der alten Regel
def.defaultrot: 0 statt 40), e2e 25i-ii grün (Arm auf x 40, Key{ frame: 3, value: 40 }). Ein CI-Lauf dazu fehlt, weilci.ymlbeim Push deaktiviert war.