Paul Davis
567c0e09b8
NO-OP: remove out of date comment
2025-06-24 17:58:08 -06:00
Paul Davis
5e402aa0f9
NO_OP: better code styling
2025-06-24 17:57:47 -06:00
Paul Davis
7cf90f0f54
NO-OP: spaces, please
2025-06-24 17:57:17 -06:00
Paul Davis
e448c3f4aa
allow pianorolls not to show MIDI channel selector/dropdown
...
pianorolls have the visibility channel control. at some point we want the same idea
for the timeline, but it is not there yet
2025-06-23 16:16:12 -06:00
Paul Davis
a17cf3929d
NOOP: whitespace around operators
2025-06-23 16:15:36 -06:00
Paul Davis
bce06b4c07
add region align actions to menus, to aid discovery
2025-06-22 08:06:12 -06:00
Robin Gareus
0bd6c9d39f
Exclusive solo may select track
...
The idea is to show the selected route on the bottom panel
(focus channel) so that one can edit the channel strip settings
of what one hears (currently only useful in Mixbus).
2025-06-20 18:22:52 +02:00
Robin Gareus
e1fc24723a
NO-OP: whitespace
2025-06-19 23:16:30 +02:00
Robin Gareus
521227afe8
Panes should prelight like other widgets (brighter not darker)
2025-06-19 23:16:16 +02:00
Robin Gareus
4100279812
NO-OP: Remove extra parentheses
2025-06-19 22:09:18 +02:00
Paul Davis
66a8776f98
fix InternalSend (and InterntalReturn) to allow fade out/MIDI mute
...
previously, as soon as the Send is disabled, it would short-circuit ::run(),
preventing the fade to zero to take effect. Now, the send will run until the
effective gain reaches zero, and the return will collect data from it until it
is fully deactivated.
2025-06-19 13:50:37 -06:00
Paul Davis
464ea0d31f
fix Amp to send MIDI mute when the gain control is set to zero
...
Do not send MIDI mute from ::apply_gain(), which is too general and can end up
resending MIDI mute messages when the owner is muted.
2025-06-19 13:38:39 -06:00
Paul Davis
6b675bac18
for MIDI mute block in Delivery, add ALL_NOTES_OFF
2025-06-19 13:37:53 -06:00
Paul Davis
fc24c59eb9
refactor midi mute buffer sizing into a separate method for Delivery
2025-06-19 13:37:30 -06:00
Paul Davis
e45c2f616a
modify Delivery::maybe_merge_midi_mute() to allow forcing the merge
...
In an internal send, this may be called with _current_gain not yet
at zero. So provide an extra argument to force the merge.
2025-06-19 13:36:50 -06:00
Paul Davis
4bf1202493
tiny optimization tweak and auto-fication for Amp::apply_simple_gain()
2025-06-19 09:13:25 -06:00
Paul Davis
8b09becf1d
fix the way mute operates for MIDI tracks
...
our policy is that "mute works on outputs", which means that mute should have
no effect on what an instrument plugin does. However, MidiTrack::act_on_mute()
used to inject sustain=0 messages into the data flow, which would affect
the instrument plugin(s) in the track.
now, MidiTrack::act_on_mute() simply notifies all Delivery objects in the track
that a MIDI mute is needed via a channel mask. The Delivery objects notice this
during their ::run() method, and deliver the required MIDI events to their
output ports.
There is still a potential issue that Amp objects which notice they have been
muted also send a similar set of messages. This needs more investigation and
possibly other changes. But this commit allows a sustained note to return after
the track is muted midway through it.
2025-06-19 08:03:43 -06:00
Paul Davis
919ce6309c
auto-ify the main processor loop in process_output_buffers()
2025-06-19 08:03:43 -06:00
Robin Gareus
0d69983a29
Fix comment editor window title
2025-06-19 01:14:48 +02:00
Paul Davis
66f93e70cd
add automation.bindings to fmt-bindings script
2025-06-17 14:03:43 -06:00
Paul Davis
c6a49fdd50
basic implementation of Live-style kbd-driven automation editing
2025-06-17 14:03:43 -06:00
Paul Davis
fc692f5680
Fix for timepos_t::earlier() - superclock_t vs.samplepos_t confusion
2025-06-17 14:03:43 -06:00
Robin Gareus
35851d0cc8
Fix opening links to in prefs notes (e.g. VST spec)
...
gtk's default URL open does not work on recent macOS and
Windows.
2025-06-17 18:40:51 +02:00
John Emmas
b795d36cd3
Avoid using 'boost::aligned_storage' which is known to be problematic in MSVC builds
...
MS initially believed the runtime issues might be fixable in VS2015 but in fact, Boost's alignment strategy and Microsoft's alignment strategy just turned out to be incompatible:-
https://www.boost.org/doc/libs/1_65_0/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html
2025-06-17 09:02:24 +01:00
Paul Davis
73f4378a51
more adjustments to scroomer drag logic
...
1. use an idle callback
2. MidiViewBackground::apply_note_range() now returns true/false
depending on whether or not it was able to make the requested change.
It might fail due to out of bounds note line size, for example.
2025-06-16 23:01:10 -06:00
Paul Davis
b5f5aeafe7
use C++11 style iterator
2025-06-16 23:01:10 -06:00
Robin Gareus
9d17303199
Add auto-input tooltip
2025-06-16 23:42:06 +02:00
Paul Davis
9342886e48
fix thinko in MidiView::pick_visible_channel() ... no data, channel is 0, not 16
2025-06-16 10:47:25 -06:00
Paul Davis
1230e1258d
code refactoring and action name handling to make follow-playhead work in multiple editing contexts (libs)
2025-06-15 21:18:06 -06:00
Paul Davis
ea1695dbc0
code refactoring and action name handling to make follow-playhead work in multiple editing contexts
2025-06-15 21:17:42 -06:00
Paul Davis
f48fe3f740
numerous fix ups to the behavior of button presses in any pianoroll header
2025-06-13 17:20:09 -06:00
Paul Davis
4aedc6f882
make sure Pianoroll background gets the data range set when a region is set
2025-06-13 17:20:09 -06:00
Paul Davis
28eaf90790
if in internal editing mouse mode, MidiRegionView is merely outlined, not filled, with selectionc olor
2025-06-13 17:20:09 -06:00
Paul Davis
796497b355
remove debug output
2025-06-13 17:20:09 -06:00
Paul Davis
49597c6e2c
do no modify data note range in MidiViewBackground based on user requests
2025-06-13 17:20:09 -06:00
Robin Gareus
7573681cff
Backport some of Mixbus' editor-toolbar changes
...
* minimize diff by using abstract space/border constant
* switch nudge clock layout - clock in the middle
* remove Profile->get_mixbus() where no longer needed
2025-06-14 00:08:20 +02:00
Robin Gareus
ee8a2fc970
Fix librubberband API detection #9948
2025-06-13 21:51:49 +02:00
Robin Gareus
238728ffc1
Dissolve the Common Ardour Widows club :)
2025-06-13 21:50:18 +02:00
Robin Gareus
3b3ce7e3ea
Expose RTA in main and context menu
2025-06-13 17:37:34 +02:00
Robin Gareus
86a0bfdeab
Use consistent label for MIDI channel (main toolbar and pianoroll)
2025-06-13 17:16:59 +02:00
Robin Gareus
f64627da48
Fix include order TRACE_SETSESSION_NULL is defined in session_handle.h
2025-06-13 17:01:49 +02:00
Robin Gareus
704241dec2
Fix button corner radius math
2025-06-13 02:42:26 +02:00
Robin Gareus
fcae7c7bb5
Transfer slot_prop_box to selection_properties_box
2025-06-12 22:46:14 +02:00
Robin Gareus
4c5284737d
Use action to toggle follow playhead
2025-06-12 22:19:14 +02:00
Robin Gareus
666a32499c
Move the follow_edits from toolbar to editor context bar
2025-06-12 22:11:33 +02:00
Ben Loftis
be0d79089b
A 'new' user should initialize the NSD to 'New', in Mixbus
2025-06-12 21:35:35 +02:00
Paul Davis
27796ddefb
use new follow playhead icon
2025-06-12 12:52:13 -06:00
Paul Davis
08da5255fe
tweak EditingContext APIs to get context menus in pianoroll working sensibly
...
There is now a separate context menu for note-context clicks and "region" context clicks.
Something similar may be desirable for timeline editing too
2025-06-12 12:09:11 -06:00
Paul Davis
5223cbdc18
add new NSApplicationDelegate method to deal with warning on macOS Sonoma
2025-06-12 12:09:11 -06:00
Ben Loftis
aa5685c585
Add icons for editor toolbar buttons: follow*, show_auto_on_touch
2025-06-12 18:57:56 +02:00