Signature
useTimelineCanvasLayer(canvasRef: RefObject<HTMLCanvasElement | null>, options: UseTimelineCanvasLayerOptions): TimelineCanvasLayerHandleParameters
| Name | Type | Description |
|---|---|---|
| canvasRef | RefObject<HTMLCanvasElement | null> | Ref for the app-owned canvas element to size and draw. |
| options | UseTimelineCanvasLayerOptions | Drawing callback, geometry overrides, and redraw behavior. |
Returns
Imperative handle for manually scheduling redraws.
Examples
import { useRef } from 'react';import { useTimelineCanvasLayer } from '@techsquidtv/canvas-timeline-renderer';
export function WaveformLayer() { const canvasRef = useRef<HTMLCanvasElement>(null);
useTimelineCanvasLayer(canvasRef, { overscanPixels: 240, draw: ({ ctx, visibleClips }) => { ctx.fillStyle = 'rgba(20, 184, 166, 0.35)';
for (const entry of visibleClips) { ctx.fillRect(entry.x, entry.y + entry.height / 2, entry.width, 2); } }, });
return <canvas ref={canvasRef} className="timeline-custom-canvas-layer" />;}