Age | Commit message (Collapse) | Author |
|
avoid hardcoded node name strings in mixer-demo
improve mixer-demo design
split ardour.js client into control and metadata mixins
rename JS client class Ardour to ArdourClient
JS client improve mixin implementation
JS client improve manifest parser
NO-OP whitespace and comments
NO-OP update websurface manifest versions
add Ardour icon in mixer-demo
improve mixer-demo scrolling on touch screens
|
|
focus is set
|
|
|
|
|
|
When Prefs > Editor > Zoom to mouse position... is disabled.
Ctrl + Scroll now allows to override the current zoom-focus,
and zoom in/out at the mouse-cursor position.
|
|
Use nudge clock if snap/grid is disabled; use grid (and grid/4 if "fine" adjustment is chosen)
|
|
|
|
|
|
|
|
|
|
|
|
internal edit mode
Also, activate MIDI editing actions so that they are effective in internal edit mode
|
|
|
|
|
|
a MIDI region
|
|
selection"
1. Alt is still handled to change drag behavior
2. Selection doesn't store notes unless they are part of the cut buffer, which means we should not
be altering the note selection in the editor's selection object most of the time.
|
|
|
|
|
|
and notes
1) Notes are only present in a Selection object if it is being used as a cut buffer. They are never stored
there as part of "normal selection" - that is delegated/left to MidiRegionViews that own the notes.
2) MidiRegionViews are stored in the Selection as "just" RegionViews, so provide a convenience
method to access them. This doesn't actually change much, since even the old MidiRegions object
was actually just a RegionSelection i.e. RegionViews.
|
|
|
|
bindings
We now check from the focus widget (if any) for any widget heirarchy bindings, and try to use them.
Next use the "top level" bindings passed in (top level is quoted because they may be owned by a tab,
rather than a window).
Finally, if the event is still not handled, try the global bindings
This model more closely matches what I think a reasonable programmer with experience of other
GUI toolkits would expect, and allows us to have multiple bindings present (though not
simultaneously used) in a given window
|
|
and return false from Bindings::activate()
This allows "stacking" of bindings by desensitizing the actions associated with a "lower" level
of bindings at certain times (e.g. MIDI editing bindings thare are sensitized in the appropriate
editing modes
|
|
|
|
|
|
Duplicate "the", missing "file"
|
|
|
|
|
|
Add new Mixbus internal processors to well_known list, and ensure that
proc is not nil before invalidation
|
|
|
|
LV2 uses "enabled": -1: inactive, 0: bypassed, 1:enabled
VST3 has "bypass: 0:active, 1: bypassed
|
|
|
|
see also 23baeee8293
|
|
since these are not user errors nor fixable
|
|
Two main problems are addressed by this commit.
First, storage of
parameters was broken because the index for values was set by the
parameter count, not the control port count which set_processor_param()
expects.
Second, the value was not clamped to pd.upper and pd.lower causing some
parameters to fail when set.
This invalidates previous mixer store files.
|
|
Individual mixer-strip already revert to default display when
the send vanishes. This also resets the mixer view.
|
|
|
|
|
|
|
|
Previously MidiNotePressureAutomation was not assumed to be
MIDI automation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ripple editing will be reworked some point after 6.0
|
|
As soon as we ripple drag the selected region out of the original track,
::remove_unselected_from_views() is called and the rippled regions on the
original track are not covered when ::remove_selected_from_views() is called
again in ::finished(). Therefore we need to shift the regions remaining on the
original track back and forth again, in order to have them properly in the undo
history.
|
|
|
|
Menu item was added before name was finalized
but needs to match names used everywhere else
|