The sequence editor

Sequence Studio puts a timeline under the free canvas: every box can start at a moment, run for a length, and animate in and out. Using Lolly covers the shape of the timeline - the magnetic sequence row, the free overlay lanes, the Always on strip, transitions and rendering. This page is about the four things that decide whether editing in time feels predictable: what a canvas click edits, seeing what is about to arrive or leave, cutting a clip, and trimming one.

Everything here happens on your device, and none of it changes what a render produces. The chrome described below - ghosts, badges, banners, outlines - lives outside the exported node, so a file exported with onion skin on is byte-identical to the same file exported with it off.

The timeline, tool bar first: add, record, the split blade with its resolved label, snap, onion skin, zoom, fit and the keyboard shortcuts sheet, over the ruler, the overlay lane, the magnetic sequence row and the Always on stripدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں72 paths~5.6k nodes113 groups122 KBThe timeline, tool bar first: add, record, the split blade with its resolved label, snap, onion skin, zoom, fit and the keyboard shortcuts sheet, over the ruler, the overlay lane, the magnetic sequence row and the Always on stripدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں72 paths~5.6k nodes113 groups122 KB

The one rule

A timed canvas is a window onto one instant. One sentence governs everything you can touch, and it is written into the editor's own source at shells/web/src/views/free-canvas.ts so the code and this page cannot say different things:

"The canvas edits exactly what the canvas shows at the playhead. Moving the playhead never changes the selection; selecting in the timeline moves the playhead so the selection stays live; when a selection is nevertheless off-playhead, the canvas says so and offers to reconcile. The timeline inspector and the sidebar are the precision fallbacks and are never gated by time."

Read the three clauses as three promises.

Moving the playhead never changes what is selected. Scrubbing is looking, not choosing. This is the direction that goes wrong in other editors: when time drives selection, you type a value into a panel and it lands on whichever clip happened to be under the playhead rather than the one you picked.

Selecting in the timeline moves the playhead. Click a clip's bar and the playhead steps inside it, so the thing you just selected is the thing on screen. It only moves when it has to: never while playing, never for an Always on box (which has no time of its own), and never when the playhead is already inside the clip.

An off-playhead selection says so. Selection can still end up pointing at something the canvas is not showing - you selected a clip, then scrubbed away. Rather than leave editing furniture floating over nothing, the canvas takes the outline, the eight resize handles, the rotate handle and the contextual bar down, and raises a small banner with a Go to it button that seeks to the clip's start. The banner is suppressed during playback, where scenes coming and going is the point.

While a selection is off-playhead the keyboard refuses every key that would change the model - the arrows, Delete, duplicate, group, z-order, and starting a text edit. Escape, Tab and Select all keep working. Nothing is silently dropped: either the edit lands on what you can see, or it does not happen.

The fallbacks are never gated. The timeline's own inspector (Length, Trim in, Speed, the two transitions, Mute) and the tool sidebar edit the selected clip whatever the playhead is doing. They are the precision route, and the accessible one.

A clip selected in the sequence row: the playhead has stepped inside it, the canvas shows that scene with its selection outline and handles, and the timeline inspector fills with the clip’s Length, Trim in, Speed and transitionsدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں16 paths~1.0k nodes31 groups28 KBA clip selected in the sequence row: the playhead has stepped inside it, the canvas shows that scene with its selection outline and handles, and the timeline inspector fills with the clip’s Length, Trim in, Speed and transitionsدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں16 paths~1.0k nodes31 groups27 KB

What a click on the canvas hits

Clips that are not live at the playhead are not painted, and a click falls through them to the topmost visible box underneath - the same resolution a click already uses for a stack of overlapping boxes, so it needs no explanation in the moment and produces no interruption. Ghosted onion-skin frames are drawn in a layer that ignores the pointer entirely, so they can never be clicked either.

The one state that does get words is the stuck one: a selection that is off-playhead, which is exactly the case you cannot reason your way out of by clicking somewhere else.

The canvas at one instant: only the clip live at the playhead is painted, so a click lands on it or falls through to whatever is underneathدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں14 paths825 nodes28 groups23 KBThe canvas at one instant: only the clip live at the playhead is painted, so a click lands on it or falls through to whatever is underneathدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں14 paths812 nodes28 groups23 KB

Onion skin

Animators want to see the frame before and the frame after. Onion skin shows the neighbouring clips as ghosts over the live one.

It is off by default and stays off until you turn it on, and the preference is remembered on this device. That is not caution for its own sake. No mainstream video editor ghosts adjacent clips, and the reason is visible the moment you try it: a Lolly scene is usually an opaque, full-frame, brand-coloured composition that entirely replaces its neighbour, so laying two of them over each other at a third opacity produces colour mud and hides the one thing you are judging.

The onion skin options popover: the mode, how many scenes to ghost before and after, and the strengthدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں12 paths~2.3k nodes20 groups1 image50 KBThe onion skin options popover: the mode, how many scenes to ghost before and after, and the strengthدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں12 paths~2.3k nodes20 groups1 image50 KB

Onion skin on: the neighbouring scenes drawn as ghosts over the live one, each carrying a small -1 or +1 chip saying how far away in the sequence it isدستخط کنندہ LollyPNGخود جانچیںدستخط شدہ فائل حاصل کریںپکسلز، اشکال نہیں151 KBOnion skin on: the neighbouring scenes drawn as ghosts over the live one, each carrying a small -1 or +1 chip saying how far away in the sequence it isدستخط کنندہ LollyPNGخود جانچیںدستخط شدہ فائل حاصل کریںپکسلز، اشکال نہیں142 KB

Onion skin cannot reach a file. The ghosts are drawn in the editor's overlay layer, which is a sibling of the exported canvas rather than a part of it, and they are additionally tagged so the export path strips them before any format is written. They never set a class or a style on a real box. An export taken with ghosts on screen is the same bytes as one taken without.

Splitting a clip

Split at playhead cuts one clip into two at the current instant. The blade is in the tool bar, S does it from the keyboard, and it is in a clip's right-click menu.

The button says what it will cut before you press it. It reads Split clip when the playhead is inside one, Split 3 clips when a selection spans it, and Split at playhead - greyed out - when there is nothing to cut. A refusal you can see beforehand beats a refusal announced afterwards.

The split blade naming its own scope before it is pressed: with the playhead inside a clip the tooltip reads Split clipدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں73 paths~5.8k nodes114 groups126 KBThe split blade naming its own scope before it is pressed: with the playhead inside a clip the tooltip reads Split clipدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں73 paths~5.8k nodes114 groups126 KB

The scope resolves in one order, everywhere:

  1. every selected clip the playhead is inside, so a deliberate multi-selection cuts through all of it in one press;
  2. failing that, the sequence clip under the playhead - the "just cut here" case, which should not need selecting anything first;
  3. failing that, nothing is written and the panel says why.

Shift+S (or Shift-clicking the blade) is the wider variant: every timed clip the playhead is inside, on every lane, ignoring the selection. Whichever route you take, the whole cut is a single undo step.

The cut snaps to clip edges and whole seconds like every other timeline gesture, so pressing it twice at the same spot lands exactly on the existing cut and does nothing at all - no write, no undo entry.

Through edits, and Join

A cut you have not acted on yet is a through edit: the two halves still run continuously, and the sequence plays as if the cut were not there. Those seams are marked with a hairline rather than left to look like every other edit, so at a glance you can tell which cuts are decisions and which are just "I cut here and then changed my mind".

A through edit: the two halves of a fresh cut still run continuously, and the seam is marked with a hairline rather than looking like every other editدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں93 paths~7.9k nodes150 groups2 images168 KBA through edit: the two halves of a fresh cut still run continuously, and the seam is marked with a hairline rather than looking like every other editدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں93 paths~7.9k nodes150 groups2 images168 KB

Click the seam and the transition dialog offers Join clips alongside Cut and Crossfade. Join is also in a clip's right-click menu, and it works from either side - select one half, join, and the two become one clip again with the second half's ending restored. It is only offered where it is real: a seam whose sides have been trimmed apart, sped up differently, or given a transition is a decision, and it gets no Join.

The transition dialog opened from a seam: Cut, Crossfade, a length, and Join clips — offered only where the two sides are still continuousدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں12 paths~1.5k nodes14 groups34 KBThe transition dialog opened from a seam: Cut, Crossfade, a length, and Join clips — offered only where the two sides are still continuousدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں12 paths~1.5k nodes14 groups34 KB

Detaching a clip's audio

Detach audio pulls a video clip's sound onto its own overlay lane, where it can be trimmed, moved and mixed on its own. It is in the clip's right-click menu and on Shift+D.

The two halves stay linked, and the link is written on both of them:

This is deliberately not the one-way detach some editors ship, where the only way to resync is Undo. A link that survives being split - split the muted picture and both halves still name the sound - is what makes detaching a safe thing to try.

Detach is only offered where it means something: the tool has to declare the field that stores the link and have an audio clip kind to create, and the clip has to be a video that is not already linked.

A clip’s right-click menu. This clip is a card, so it offers Split at playhead, Make always on and Delete — Detach audio is absent because there is no sound to detachدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں11 paths882 nodes11 groups20 KBA clip’s right-click menu. This clip is a card, so it offers Split at playhead, Make always on and Delete — Detach audio is absent because there is no sound to detachدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں11 paths882 nodes11 groups20 KB

Trimming

Drag either end of a clip to trim it. The grip is a narrow bar, but the area that responds is wider than it looks - and wider again for a finger or a pen, where it is at least the 24px that the accessibility guidelines ask of any target. A clip too narrow to carry two grips without swallowing its own middle offers neither, and says so in its tooltip: zoom in, or use the inspector.

While you drag:

Nothing is written until you let go: one drag is one undo step.

A trim in flight: the dragged edge lit, a readout showing the clip’s new length and the signed change, and a ghost extent showing how much source is still reachable past the edgeدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں89 paths~6.9k nodes163 groups2 images150 KBA trim in flight: the dragged edge lit, a readout showing the clip’s new length and the signed change, and a ghost extent showing how much source is still reachable past the edgeدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں89 paths~6.9k nodes163 groups2 images150 KB

Trimming from the keyboard

Every trim is reachable without a pointer, which is also the fastest route once you know it.

KeyWhat it does
[ / ]Aim at the in edge or the out edge of the selected clip
, / .Nudge that edge one frame earlier or later (hold Shift for ten)
EPull that edge to the playhead
EscLet the edge go (then a live recording, then close the panel)

Each press is one write and one undo step.

Trimming from the keyboard: the in edge of the selected clip is aimed and has been nudged two frames earlierدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں88 paths~6.7k nodes139 groups2 images145 KBTrimming from the keyboard: the in edge of the selected clip is aimed and has been nudged two frames earlierدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں88 paths~6.7k nodes139 groups2 images146 KB

The shortcut sheet

Every shortcut the timeline binds is a bare letter or a punctuation key. That is not a style choice: the familiar editor chords (Ctrl/Cmd+B, Ctrl/Cmd+K) collide with browser bindings that a web page cannot reliably take over, and a shortcut that silently does nothing is worse than one you have to learn.

So the list is printed in the app. Press ? with the timeline focused, or click the keyboard button at the end of the tool bar, and every key the panel handles is listed with what it does. The sheet is generated from the same list the key handler is written against, so it cannot fall out of date. Escape closes it and puts focus back where you were.

The shortcut sheet, printed in the app: every key the timeline binds with what it does, generated from the same list the key handler is written againstدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں37 paths~9.3k nodes76 groups178 KBThe shortcut sheet, printed in the app: every key the timeline binds with what it does, generated from the same list the key handler is written againstدستخط کنندہ Lollyویکٹر SVGخود جانچیںدستخط شدہ فائل حاصل کریں37 paths~9.3k nodes76 groups178 KB