From 3656ff4ecf0f9d17bae40243a3235f0675de66b6 Mon Sep 17 00:00:00 2001 From: smcga Date: Wed, 29 Apr 2026 12:50:13 +0100 Subject: [PATCH] Add mobile layout mode for timeline editor --- README.md | 1 + index.html | 7 +++++++ src/editor/EditorRoot.test.ts | 11 ++++++++++- src/editor/EditorRoot.ts | 6 ++++++ src/main.ts | 20 ++++++++++++++++++-- src/style.css | 22 ++++++++++++++++++++++ 6 files changed, 64 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 55d17c5..13c55e4 100644 --- a/README.md +++ b/README.md @@ -367,6 +367,7 @@ npm run preview - Effect idea moderation uses `EFFECT_MODERATION_TOKEN` (falls back to `DOODLE_MODERATION_TOKEN` / `DOODLE_ADMIN_TOKEN`). Each submission now gets a signed review page at `/effect-review.html?id=...&token=...` with live preview + submitted code, approve/reject links still use `/api/effects?action=approve|reject&id=...&token=...`, and pending queue inspection stays at `/api/effects?includePending=1&token=...`. - Run `npm run test:integration` in an environment with the DB2 secrets set to verify the live Upstash database exists and can be read/written. If the DB2 URL is malformed, the APIs now fail closed instead of crashing with a 500 during Redis client creation. The serverless API modules also use explicit `.js` ESM imports so Vercel can resolve the emitted files correctly. - Append `?editor=1` in dev builds to open the Scene + Timeline Editor (or toggle "Editor mode" in the debug overlay). The editor shows a live preview, edits hot-apply to the running demo, and changes persist to localStorage. +- Mobile-first editing mode: choose **Editor layout → Mobile** in the debug overlay (or use `?editor=1&editorLayout=mobile`) to switch to a stacked touch-friendly layout while keeping the existing desktop editor intact. - The timeline editor layout uses a narrow Scenes sidebar, a center workspace with Preview plus a single accordion stack for Basic/Main Slots/Transition, and a right Inspector for scene/layer/cue editing. The Generate Text Cues tool opens from a bottom-left button as a modal. - The timeline area now dedicates at least half the editor height, renders all scenes on the main track, and adds extra rows for selected-scene layers and scene automation entries. - Automation clip editing foundations now treat automation as point-driven envelopes (per-segment curve type + tension metadata), with helpers for snapped point add/remove/move, slide-mode temporal shifting, and segment-level curve/tension updates for timeline UI integration. diff --git a/index.html b/index.html index 8bfebe0..93b2120 100644 --- a/index.html +++ b/index.html @@ -240,6 +240,13 @@ Editor mode +