From 0ea994fb2f433a99595213c43ed5df2ea8c945f5 Mon Sep 17 00:00:00 2001 From: 3dtours Date: Fri, 31 Jul 2026 09:48:42 +0700 Subject: [PATCH] =?UTF-8?q?FIX:=20active=20t=E1=BA=A5t=20c=E1=BA=A3=20c?= =?UTF-8?q?=C3=A1c=20note=20c=E1=BB=A7a=20c=C3=A1c=20MIDI=20item=20c=C3=B9?= =?UTF-8?q?ng=20track?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- wiki.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/wiki.md b/wiki.md index dfe9228..11a5121 100644 --- a/wiki.md +++ b/wiki.md @@ -979,3 +979,8 @@ - **Tóm tắt thay đổi:** Thêm `handleDropMidiToNewTracks(file)` — drop file .mid/.midi vào vùng track container → parse MIDI → tạo track mới cho từng MIDI track và append MIDI item. Container có `onDrop` xử lý MIDI (hoặc audio → load vào selected track); lane drop cũng route MIDI sang hàm mới. - **Các file ảnh hưởng:** `app/static/js/app.jsx`, `app/static/js/app.precompiled.js` - **Ghi chú/Test (nếu có):** Hard reload. Kéo file .mid vào vùng track → track mới xuất hiện với MIDI. + +### [2026-07-31 09:48] Task: Piano roll shows all same-track MIDI items notes as active +- **Tóm tắt thay đổi:** `ghostNoteExtractor.js`: bỏ filter time-overlap cho các MIDI items cùng track (`isSameTrack`) → tất cả notes của mọi MIDI item trong cùng track đều được gộp vào ghost layer. Render: same-track layers vẽ nổi bật (amber, alpha 0.65 + border) = trạng thái active. Effect sync: same-track layers luôn được đưa vào `ghostPlayLayers` → play đủ cả track; cross-track vẫn theo `activePlayTrackIds`. +- **Các file ảnh hưởng:** `app/static/js/app.jsx`, `app/static/js/app.precompiled.js`, `app/static/js/services/ghostNoteExtractor.js` +- **Ghi chú/Test (nếu có):** Hard reload. Mở MIDI item của track → thấy tất cả notes của các MIDI item cùng track hiển thị amber nổi bật; play → nghe đủ track.