if (!rec_active &&
_trackview.session()->record_status() == Session::Recording &&
- _trackview.track()->record_enabled()) {
+ _trackview.track()->rec_enable_control()->get_value()) {
if (UIConfiguration::instance().get_show_waveforms_while_recording() && rec_regions.size() == rec_rects.size()) {
} else if (rec_active &&
(_trackview.session()->record_status() != Session::Recording ||
- !_trackview.track()->record_enabled())) {
+ !_trackview.track()->rec_enable_control()->get_value())) {
screen_update_connection.disconnect();
rec_active = false;
rec_updating = false;
uint8_t
MidiStreamView::y_to_note (double y) const
{
- int const n = ((contents_height() - y - 1) / contents_height() * (double)contents_note_range())
+ int const n = ((contents_height() - y) / contents_height() * (double)contents_note_range())
+ lowest_note();
if (n < 0) {
return 127;
}
- return n;
+ /* min due to rounding and/or off-by-one errors */
+ return min ((uint8_t) n, highest_note());
}
/** Suspend updates to the regions' note ranges and our