3dtours
9237d01f35
fix: auto-scroll continuous + batch CC velocity for selected notes
2026-07-26 10:09:55 +07:00
3dtours
a7417b9bfa
fix: đã sửa lỗi bị mất không hiển thị midi piano grid
2026-07-26 10:05:23 +07:00
3dtours
a765998455
feat: piano roll 4 features - SNAP, velocity selected, auto-scroll, synth button
2026-07-26 09:43:19 +07:00
3dtours
bd55d035de
fix: đã sửa lỗi MIDI loop
2026-07-26 07:16:17 +07:00
3dtours
8516961d80
fix: đã sửa lỗi chọn range tự do
2026-07-25 22:52:54 +07:00
3dtours
c917db200e
fix: ruler doc-level drag, remove onMouseMove/onMouseLeave from element, comma fix
2026-07-25 22:50:16 +07:00
3dtours
e5196e79c8
fix: use refs for selectionMarquee and notes in doc-level drag handler to avoid stale closure
2026-07-25 22:37:30 +07:00
3dtours
ce30289f46
fix: loop reschedule midi, note select in doc-level handler, ctrl+click ruler clear loop
2026-07-25 22:35:23 +07:00
3dtours
5bd92ee186
fix: đã sửa lỗi chọn range trong MIDI marquee và chọn note
2026-07-25 22:34:34 +07:00
3dtours
89f2fed1d9
fix: blue marquee for note select on grid, green loop overlay from ruler drag, notes play once
2026-07-25 22:31:42 +07:00
3dtours
4306ff302a
fix: marquee survive mouseleave, loop reschedule midi notes, separate leave/up handlers
2026-07-25 22:20:58 +07:00
3dtours
790a5823f6
fix: đã sửa lỗi chọn range trong MIDI marquee
2026-07-25 22:18:44 +07:00
3dtours
fccdb15ad7
fix: piano roll selection marquee green full-height, edge resize, body move, playback min 16 beats, doc-level drag
2026-07-25 22:13:50 +07:00
3dtours
a181f7a24d
fix: đã sửa lỗi chọn range trong MIDI tab
2026-07-25 21:30:17 +07:00
3dtours
1a5c1eff43
fix: doc-level ruler drag, min 16bars playback, selection overlay, edge/center handles
2026-07-25 21:28:26 +07:00
3dtours
9bfcd1870c
fix: loop range playback via st.selectionStart/End + isLooping
2026-07-25 21:21:03 +07:00
3dtours
39680cb95c
fix: ruler close needed 4 parens (was 3), closing parent div properly
2026-07-25 21:14:44 +07:00
3dtours
2ce731e6a9
fix: Ctrl+S piano roll + ruler drag selection + paren balance
2026-07-25 21:09:34 +07:00
3dtours
025aba3265
fix: Ctrl+S in piano roll + ruler range selection via drag
2026-07-25 21:04:19 +07:00
3dtours
57fd110fe3
fix: add capture flag to Ctrl+S keydown handler to prevent browser save
2026-07-25 20:57:43 +07:00
3dtours
c1a3d3a6dd
feat: Ctrl+S saves current tab (piano roll, section, audio) or project + all dirty tabs
2026-07-25 20:54:23 +07:00
3dtours
fde9a91c9b
fix: đã sửa lỗi MIDI note bị flicker
2026-07-25 20:46:53 +07:00
3dtours
f2d02a358f
fix: skip st.notes sync when draggedNote active (prevents brush flicker)
2026-07-25 20:45:24 +07:00
3dtours
ce319573ab
fix: move Ctrl+A useEffect after selectedNoteIds declaration
2026-07-25 20:39:54 +07:00
3dtours
29b682e3ba
fix: move Ctrl+A useEffect after notes declaration to avoid TDZ error
2026-07-25 20:38:53 +07:00
3dtours
f4ec769650
fix: restore useEffect sync for st.notes, remove render-phase TDZ error
2026-07-25 20:36:21 +07:00
3dtours
966e673fae
fix: replace sync useEffect with render-phase guard to prevent flicker
2026-07-25 20:31:17 +07:00
3dtours
a9f56d0fcd
fix: drag clamp, pitch anchor, Ctrl+A, marquee dir, resize snap
2026-07-25 20:30:01 +07:00
3dtours
8d83a46e08
fix: MIDI item playback respects visual duration + scale flicker guard
2026-07-25 20:14:53 +07:00
3dtours
8fdf93f5d1
fix: đã sửa lỗi MIDI note ghi âm xuất hiện realtime
2026-07-25 20:04:42 +07:00
3dtours
8849f33d07
fix: extend piano roll playhead duration to 10min during recording
2026-07-25 20:03:09 +07:00
3dtours
97855f47d1
fix: add try-catch + nextMetronomeBeatRef init to startPianoRollRecording
2026-07-25 19:56:19 +07:00
3dtours
d858628a8f
fix: sync notes from st.notes + set isPlaying for playhead + metronome count-in
2026-07-25 19:53:45 +07:00
3dtours
f3ad111376
fix: set subTab buffer + fix double stop() call + realtime playhead
2026-07-25 19:48:00 +07:00
3dtours
7f681f23c1
fix: không ghi âm và ghi note MIDI và khong xuất hiện realtime
2026-07-25 19:47:17 +07:00
3dtours
6cc3ae6ab8
fix: use startSubTabPlayback for piano roll recording + pass recTempMidiNotes prop
2026-07-25 19:39:55 +07:00
3dtours
432dec635a
fix: không ghi âm và ghi note MIDI
2026-07-25 19:36:56 +07:00
3dtours
e6dd7ff13c
fix: realtime note display + MIDI key sound via refs
2026-07-25 18:58:30 +07:00
3dtours
da760dbb86
fix: MIDI record + key highlight on MIDI key press
2026-07-25 18:55:31 +07:00
3dtours
c3edda5c81
fix: call midiRec.start() so MIDI recorder receives messages
2026-07-25 18:44:33 +07:00
3dtours
68eb6d5261
fix: replace stale snapToScale ref with st.snapToScale
2026-07-25 18:39:47 +07:00
3dtours
513a6b082c
fix: record midi - setSelectedMidiInputId, snapToScale persist, space stops recording
2026-07-25 18:37:02 +07:00
3dtours
1151f1afa0
feat: bật tính năng ghi midi note trong piano roll tab
2026-07-25 18:36:11 +07:00
3dtours
5af8536e53
fix: add recTempMidiNotes to PianoRollTabEditor props
2026-07-25 18:31:35 +07:00
3dtours
dffb8562df
fix: piano roll recording - playhead, realtime notes, recording display
2026-07-25 18:30:16 +07:00
3dtours
9498a0d4b0
fix: piano roll record via ARM + INPUT routes to piano roll tab
2026-07-25 18:25:29 +07:00
3dtours
2c91c0156a
feat: add Omni MIDI option in piano roll INPUT select
2026-07-25 18:20:42 +07:00
3dtours
cdff404437
fix: lỗi không mở được piano roll và thêm các tính năng cho AI
2026-07-25 17:29:35 +07:00
3dtours
1b711ef014
feat: piano roll transport, ARM/INPUT, AI bar range, MIDI recording
...
- Transport: play/stop/back/next/record buttons in piano roll toolbar
- ARM toggle + MIDI input device selector next to Snap to Scale
- AI bar range selector (bar X to bar Y) for Copilot MIDI generation
- handleAISend detects active piano roll tab and routes MIDI prompt
- Added selectedMidiInputId state + handleMidiInputSelect for MIDI input
2026-07-25 17:22:24 +07:00
3dtours
1a97a4b33b
fix: quy định kết quả AI copilot trả về đúng tab đang mở
2026-07-25 16:35:54 +07:00