Skip to content

Merge upstream #2263: Add vertical playback auto-scroll and note highlighting - #54

Merged
runit-xze merged 3 commits into
masterfrom
merge/pr-2263-retry
Jul 25, 2026
Merged

Merge upstream #2263: Add vertical playback auto-scroll and note highlighting#54
runit-xze merged 3 commits into
masterfrom
merge/pr-2263-retry

Conversation

@runit-xze

Copy link
Copy Markdown
Owner

Pulls in stakira/OpenUtau#2263.

Previously closed as #42. Conflicts were independent additions colliding at the same insertion points against openutau#2182, openutau#2230, and openutau#2067 (all already merged). Resolved by combining rather than picking a side — see commit message for details, notably the note-brush logic now uses the phoneme-error-aware hasError check together with playback-highlight blending.

Add optional vertical note following during piano roll playback.

Center the active note vertically using frame-rate-independent exponential smoothing, configurable follow margin and damping, and a per-frame movement limit. Prepare scrolling before upcoming notes and ignore isolated melodic outliers to avoid abrupt jumps.

Add the toggle to the piano roll View menu and expose vertical follow settings in Preferences.
Highlight the active piano roll note during playback with configurable fade-in and fade-out speeds.

Add an opt-in View menu toggle, persist the preference, and avoid repainting NotesCanvas on playback tick updates when highlighting is disabled.
@runit-xze
runit-xze merged commit 84e8aaf into master Jul 25, 2026
@runit-xze
runit-xze deleted the merge/pr-2263-retry branch July 25, 2026 19:49
…ghlighting

Cherry-picked from openutau#2263: openutau#2263
Conflicts were independent additions colliding at the same insertion points against already-merged features (openutau#2182's DiffSinger phrase boundary rendering, openutau#2230's detach-pianoroll menu item, openutau#2067's metronome preferences UI):
- NotesCanvas.cs: combined the phoneme-error-aware hasError computation (existing) with this PR's playback-highlight blending, using consistent brush constants; kept both private method blocks (phrase boundary rendering + highlight animation) side by side, no actual overlap.
- PianoRoll.axaml / PreferencesDialog.axaml: concatenated both menu items / settings sections, no overlap.
runit-xze added a commit that referenced this pull request Jul 25, 2026
Merge upstream openutau#2263: Add vertical playback auto-scroll and note highlighting
runit-xze added a commit that referenced this pull request Jul 25, 2026
Merge upstream openutau#2263: Add vertical playback auto-scroll and note highlighting
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants