fix: click empty on track to move playhead

This commit is contained in:
Maze Winther 2026-02-02 19:44:27 +01:00
parent 5120e2efa6
commit 9ca32e5e39
2 changed files with 10 additions and 2 deletions

View File

@ -423,7 +423,11 @@ export function Timeline() {
onResizeStateChange={handleResizeStateChange} onResizeStateChange={handleResizeStateChange}
onElementMouseDown={handleElementMouseDown} onElementMouseDown={handleElementMouseDown}
onElementClick={handleElementClick} onElementClick={handleElementClick}
onTrackMouseDown={handleSelectionMouseDown} onTrackMouseDown={(event) => {
handleSelectionMouseDown(event);
handleTracksMouseDown(event);
}}
onTrackClick={handleTracksClick}
shouldIgnoreClick={shouldIgnoreClick} shouldIgnoreClick={shouldIgnoreClick}
/> />
</div> </div>

View File

@ -31,6 +31,7 @@ interface TimelineTrackContentProps {
track: TimelineTrack; track: TimelineTrack;
}) => void; }) => void;
onTrackMouseDown?: (event: React.MouseEvent) => void; onTrackMouseDown?: (event: React.MouseEvent) => void;
onTrackClick?: (event: React.MouseEvent) => void;
shouldIgnoreClick?: () => boolean; shouldIgnoreClick?: () => boolean;
} }
@ -46,6 +47,7 @@ export function TimelineTrackContent({
onElementMouseDown, onElementMouseDown,
onElementClick, onElementClick,
onTrackMouseDown, onTrackMouseDown,
onTrackClick,
shouldIgnoreClick, shouldIgnoreClick,
}: TimelineTrackContentProps) { }: TimelineTrackContentProps) {
const editor = useEditor(); const editor = useEditor();
@ -68,11 +70,13 @@ export function TimelineTrackContent({
return ( return (
<button <button
className={cn("size-full", hasSelectedElements && "bg-panel-accent/35")} className={cn("size-full", hasSelectedElements && "bg-panel-accent/35")}
onClick={() => { onClick={(event) => {
if (shouldIgnoreClick?.()) return; if (shouldIgnoreClick?.()) return;
clearElementSelection(); clearElementSelection();
onTrackClick?.(event);
}} }}
onMouseDown={(event) => { onMouseDown={(event) => {
event.preventDefault();
onTrackMouseDown?.(event); onTrackMouseDown?.(event);
}} }}
type="button" type="button"