<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opencut/apps/web/src/commands/timeline/element/shift-split-remainder.ts, branch v0.6.0</title>
<subtitle></subtitle>
<id>http://git.cashmere.rs/opencut/atom/apps/web/src/commands/timeline/element/shift-split-remainder.ts?h=v0.6.0</id>
<link rel='self' href='http://git.cashmere.rs/opencut/atom/apps/web/src/commands/timeline/element/shift-split-remainder.ts?h=v0.6.0'/>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/'/>
<updated>2026-07-26T20:13:01Z</updated>
<entry>
<title>feat: single undo step for freeze frame</title>
<updated>2026-07-26T20:13:01Z</updated>
<author>
<name>cashmere</name>
<email>cashmere@autistici.org</email>
</author>
<published>2026-07-26T20:13:01Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=12539fedf3020468fded3945d5dfc4c8396e7750'/>
<id>urn:sha1:12539fedf3020468fded3945d5dfc4c8396e7750</id>
<content type='text'>
The handler fired four separate commands (asset add, split, move, insert),
producing four undo steps. It now builds one BatchCommand and executes it
once. The new ShiftSplitRemainderCommand resolves the split's right-side
elements lazily at execute() so it can be composed after the split in the
batch, and rebuilds the inner move on redo since a re-executed split
generates fresh element ids.
</content>
</entry>
</feed>
