mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-14 19:27:05 -04:00
#551: Shift+Spacebar plays every frame by default
Shift+Spacebar set Skip to 1, so it played every other frame out of the box. It now plays every frame, like Spacebar. Skip still works when it is set. Co-Authored-By: Claude Haiku 5.5 <[email protected]>
This commit is contained in:
1 parent
470ea7a3af
commit
0852511c3f
2 files changed
+11
-4
No files matched your search
@@ -205,9 +205,8 @@ impl PreviewPreset {
|
||||
pub fn default_for(s: PreviewShortcut) -> Self {
|
||||
let d = PreviewPreset::default();
|
||||
match s {
|
||||
PreviewShortcut::Spacebar => d,
|
||||
// A lighter preview: every other frame.
|
||||
PreviewShortcut::ShiftSpacebar => PreviewPreset { skip: 1, ..d },
|
||||
// Frame skipping is off by default; set Skip to play fewer frames.
|
||||
PreviewShortcut::Spacebar | PreviewShortcut::ShiftSpacebar => d,
|
||||
PreviewShortcut::Numpad0 => PreviewPreset { range: PreviewRange::WorkArea, play_from: PlayFrom::RangeStart, ..d },
|
||||
PreviewShortcut::ShiftNumpad0 => {
|
||||
PreviewPreset { range: PreviewRange::WorkArea, play_from: PlayFrom::RangeStart, skip: 1, resolution: PreviewResolution::Half, ..d }
|
||||
@@ -509,6 +508,13 @@ mod tests {
|
||||
assert_eq!(pl.frame_after(237, 1), None);
|
||||
}
|
||||
|
||||
/// #551: Shift+Spacebar used to skip every other frame out of the box.
|
||||
#[test]
|
||||
fn shift_spacebar_plays_every_frame_by_default() {
|
||||
assert_eq!(PreviewPreset::default_for(PreviewShortcut::ShiftSpacebar).skip, 0);
|
||||
assert_eq!(PreviewPreset::default_for(PreviewShortcut::ShiftSpacebar), PreviewPreset::default_for(PreviewShortcut::Spacebar));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn settings_commands_round_trip() {
|
||||
let mut s = comp_session();
|
||||
|
||||
@@ -118,7 +118,8 @@ fn playback_follows_the_shortcut_options() {
|
||||
h.step();
|
||||
assert!(h.state().playback.playing);
|
||||
assert_eq!(h.state().playback.shortcut, PreviewShortcut::ShiftSpacebar);
|
||||
assert_eq!(h.state().playback.plan.unwrap().step, 2);
|
||||
// Every frame by default (#551): Skip is 0 until the user sets it.
|
||||
assert_eq!(h.state().playback.plan.unwrap().step, 1);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Reference in new issue
Block a user