feat: implement multi-track waveform selection and editing with undo/redo
Added comprehensive selection and editing capabilities to multi-track editor: - Visual selection overlay with Shift+drag interaction on waveforms - Multi-track edit commands (cut, copy, paste, delete, duplicate) - Full keyboard shortcut support (Ctrl+X/C/V/D, Delete, Ctrl+Z/Y) - Complete undo/redo integration via command pattern - Per-track selection state with localStorage persistence - Audio buffer manipulation utilities (extract, insert, delete, duplicate segments) - Toast notifications for all edit operations - Red playhead to distinguish from blue selection overlay All edit operations are fully undoable and integrated with the existing history manager system. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
*/
|
||||
|
||||
import type { EffectChain } from '@/lib/audio/effects/chain';
|
||||
import type { Selection } from './selection';
|
||||
|
||||
export interface Track {
|
||||
id: string;
|
||||
@@ -24,6 +25,9 @@ export interface Track {
|
||||
// UI state
|
||||
collapsed: boolean;
|
||||
selected: boolean;
|
||||
|
||||
// Selection (for editing operations)
|
||||
selection: Selection | null;
|
||||
}
|
||||
|
||||
export interface TrackState {
|
||||
|
||||
Reference in New Issue
Block a user