From c783062121a4a31ec6ee20c4ca52fd47f4fbdab7 Mon Sep 17 00:00:00 2001 From: Maze Winther Date: Tue, 22 Jul 2025 01:01:54 +0200 Subject: feat: ensure text tracks are always created above media tracks --- apps/web/src/stores/timeline-store.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'apps/web/src/stores') diff --git a/apps/web/src/stores/timeline-store.ts b/apps/web/src/stores/timeline-store.ts index 01ad1635..20e80253 100644 --- a/apps/web/src/stores/timeline-store.ts +++ b/apps/web/src/stores/timeline-store.ts @@ -1317,8 +1317,9 @@ export const useTimelineStore = create((set, get) => { findOrCreateTrack: (trackType) => { // Always create new text track to allow multiple text elements + // Insert text tracks at the top if (trackType === "text") { - return get().addTrack(trackType); + return get().insertTrackAt(trackType, 0); } const existingTrack = get()._tracks.find((t) => t.type === trackType); @@ -1356,7 +1357,7 @@ export const useTimelineStore = create((set, get) => { }, addTextAtTime: (item, currentTime = 0) => { - const targetTrackId = get().addTrack("text"); // Always create new text track to allow multiple text elements + const targetTrackId = get().insertTrackAt("text", 0); // Always create new text track at the top get().addElementToTrack(targetTrackId, { type: "text", @@ -1399,7 +1400,7 @@ export const useTimelineStore = create((set, get) => { }, addTextToNewTrack: (item) => { - const targetTrackId = get().addTrack("text"); // Always create new text track to allow multiple text elements + const targetTrackId = get().insertTrackAt("text", 0); // Always create new text track at the top get().addElementToTrack(targetTrackId, { type: "text", -- cgit v1.3.1