Robin Gareus [Sat, 11 Mar 2017 01:23:34 +0000 (02:23 +0100)]
Allow to customize color-picker-palette
Robin Gareus [Fri, 10 Mar 2017 23:52:17 +0000 (00:52 +0100)]
Show Stripable name in color-picker dialog.
Robin Gareus [Fri, 10 Mar 2017 23:36:47 +0000 (00:36 +0100)]
NO-OP whitespace
Robin Gareus [Fri, 10 Mar 2017 23:35:26 +0000 (00:35 +0100)]
Remove old modal get_color API.
Robin Gareus [Fri, 10 Mar 2017 22:51:39 +0000 (23:51 +0100)]
Update color stripable color-picker(s)
* consistent behavior (Route, VCA)
* non-modal
* a single color picker for each RouteUI/VCA at most
* fix bug: VCA picker staying around even when VCA was deleted
Robin Gareus [Fri, 10 Mar 2017 20:42:02 +0000 (21:42 +0100)]
Fix solo/mute when loading old (4.x) sessions.
Robin Gareus [Fri, 10 Mar 2017 19:39:46 +0000 (20:39 +0100)]
Save/Restore TimeInfoBox clock modes
The clocks are not transient, so ARDOUR_UI::store_clock_modes takes
care of saving the state and the clock restores itself.
Robin Gareus [Fri, 10 Mar 2017 18:37:02 +0000 (19:37 +0100)]
Fix LocationUI clock-mode save/load & caching
(sidebar uses explicit LocationUI::set_state(), Location Window
implicit set_session)
Robin Gareus [Fri, 10 Mar 2017 16:50:44 +0000 (17:50 +0100)]
Use dedicated "show editor/mixer" actions
Ben Loftis [Fri, 10 Mar 2017 15:46:37 +0000 (09:46 -0600)]
Use Tempo Curve color for measure line beats. Fixes 4930.
Ben Loftis [Fri, 10 Mar 2017 15:09:30 +0000 (09:09 -0600)]
Fix likely thinko in bbt ruler.
This fixes a bug for me:
Measure lines appear & disappear during playback, at certain zoom scales.
I think this is because the unecessary offset was causing beat_density to vary unnecessarily while rolling.
Ben Loftis [Fri, 10 Mar 2017 14:37:26 +0000 (08:37 -0600)]
compute_bbt_ruler_scale should not be necessary for every redraw of the timeline. Works OK here without it...
nick_m [Fri, 10 Mar 2017 14:11:25 +0000 (01:11 +1100)]
fix incorrect property change in AudioRegion::set_fade_out()
- should fix 7283
Tim Mayberry [Fri, 10 Mar 2017 12:59:58 +0000 (22:59 +1000)]
Fix crash when removing time from track with automation
Resolves : #7287
Ben Loftis [Thu, 9 Mar 2017 20:29:08 +0000 (14:29 -0600)]
Faderport uses the Mix and Proj buttons to summon mixer and editor; there is no longer a Toggle.
nick_m [Thu, 9 Mar 2017 16:59:25 +0000 (03:59 +1100)]
fix potential crash in LV2Plugin::connect_and_run() when music starts after 0
Tim Mayberry [Thu, 9 Mar 2017 01:51:00 +0000 (11:51 +1000)]
Allow Edit -> Crop to work with edit point set to mouse
Crop is currently only dependent on having a valid time/range selection.
Resolves : #7278
Tim Mayberry [Thu, 9 Mar 2017 00:10:07 +0000 (10:10 +1000)]
Allow Separate using Loop/Punch range to work with edit point set to mouse
These operations are not dependent on the mouse position.
Resolves: #7276
Robin Gareus [Wed, 8 Mar 2017 22:04:16 +0000 (23:04 +0100)]
fix a-reverb, cut tail on deactivate, plug memory-leak
Robin Gareus [Wed, 8 Mar 2017 21:17:16 +0000 (22:17 +0100)]
Consolidate code
Robin Gareus [Wed, 8 Mar 2017 18:00:04 +0000 (19:00 +0100)]
The return of the Mixbus Send-options (allow aux-feedback override)
Robin Gareus [Wed, 8 Mar 2017 17:37:36 +0000 (18:37 +0100)]
Don't show Group UI for the master-bus
Robin Gareus [Wed, 8 Mar 2017 16:49:01 +0000 (17:49 +0100)]
Prevent adding "master" to a group
Robin Gareus [Wed, 8 Mar 2017 15:22:17 +0000 (16:22 +0100)]
Mixer sidebar: show group context menu on right-click only
Robin Gareus [Wed, 8 Mar 2017 11:15:42 +0000 (12:15 +0100)]
Pop down dialog before re-scanning VSTs
Robin Gareus [Tue, 7 Mar 2017 17:38:01 +0000 (18:38 +0100)]
VST UI sizeing rework
* prefer signal over timer-poll for VST size changes
* properly offset VST window (Windows)
* constrain window size (Windows)
* explicitly notify re-parent'ed child window (Linux)
Robin Gareus [Tue, 7 Mar 2017 02:22:13 +0000 (03:22 +0100)]
Prepare moving to a dedicated x-thread signal for VST UI resizing
(this changes the internal API, pending follow-up GUI update)
Robin Gareus [Tue, 7 Mar 2017 01:55:22 +0000 (02:55 +0100)]
remove cruft
Robin Gareus [Tue, 7 Mar 2017 04:46:21 +0000 (05:46 +0100)]
Fix copy/paste typo -- MacOSX builds
nick_m [Mon, 6 Mar 2017 23:36:48 +0000 (10:36 +1100)]
snapped pencil drawing of new midi regions cannot be zero (7271).
- fixes a couple of other oddities in the behaviour.
Robin Gareus [Mon, 6 Mar 2017 23:32:19 +0000 (00:32 +0100)]
two new action scripts (no icons yet)
Robin Gareus [Mon, 6 Mar 2017 22:49:40 +0000 (23:49 +0100)]
Rework VST initialization:
Set the AEffect* plugin pointer before calling effOpen.
effOpen may call back into the host (masterCallback) and invoke
actions which depend on _plugin (eg. to call back into the plugin again)
nick_m [Mon, 6 Mar 2017 17:00:38 +0000 (04:00 +1100)]
allow setting end bpm in new tempo from tempo dialog.
nick_m [Mon, 6 Mar 2017 16:59:42 +0000 (03:59 +1100)]
rework tempo dialog formatting, add end bpm entry.
nick_m [Mon, 6 Mar 2017 15:30:48 +0000 (02:30 +1100)]
fix crash when dragging region from list.
Robin Gareus [Mon, 6 Mar 2017 14:07:19 +0000 (15:07 +0100)]
Fix save-as progress dialog.
ScopedConnection and label,bar went out of scope.
nick_m [Mon, 6 Mar 2017 14:21:45 +0000 (01:21 +1100)]
announce what changed correctly in MidiRegion::model_shifted()
nick_m [Mon, 6 Mar 2017 04:51:53 +0000 (15:51 +1100)]
more linked midi region trim drag fixes.
- freeze the correct playlists on fiorst move.
- only update the start offset of linked regions once the drag
has finished.
Robin Gareus [Mon, 6 Mar 2017 00:48:46 +0000 (01:48 +0100)]
More fun with LinuxVSTs & threading
Robin Gareus [Mon, 6 Mar 2017 00:38:49 +0000 (01:38 +0100)]
Add support for VST effSetBypass #7266
This mechanism re-uses internal abstraction (plugin-enable).
Other plugin-specs designate a control-port, for VST we 'emulate'
a control-port.
There is still debug-output to stderr, here while testing.
Robin Gareus [Sun, 5 Mar 2017 21:15:30 +0000 (22:15 +0100)]
Close the LXVST X11 connection for good measure
Robin Gareus [Sun, 5 Mar 2017 21:14:49 +0000 (22:14 +0100)]
Work around a crash at exit for Linux VST UIs abusing pthread-keys.
Robin Gareus [Sun, 5 Mar 2017 20:18:18 +0000 (21:18 +0100)]
Fix AFL/PFL from MIDI tracks without audio (zero buffers)
Robin Gareus [Sun, 5 Mar 2017 16:01:17 +0000 (17:01 +0100)]
Revert "some further debugging, just in case"
This reverts commit
04ed05ecc4629d85d8f1fd3d6756669a42fb762b.
Robin Gareus [Sun, 5 Mar 2017 15:45:34 +0000 (16:45 +0100)]
some further debugging, just in case
Robin Gareus [Sun, 5 Mar 2017 15:42:40 +0000 (16:42 +0100)]
Prevent duplicate self-delete.
debug-prints indicat it was at least possible for the same Window to
receive FloatingTextEntry::entry_focus_out twice (without idle)
Robin Gareus [Sun, 5 Mar 2017 15:35:16 +0000 (16:35 +0100)]
NO-OP: whitespace
nick_m [Sun, 5 Mar 2017 14:57:12 +0000 (01:57 +1100)]
ensure no movement when draggin regions with x constrained.
- should fix 7260
nick_m [Sun, 5 Mar 2017 14:01:37 +0000 (01:01 +1100)]
fix undo if a midi region start trim changed the source offset.
- this diffs all playlists that use the same source.
- the secons part hould be a no-op, but needs testing
(trim drag undo on audio and midi regions)
Len Ovens [Sat, 4 Mar 2017 20:33:22 +0000 (12:33 -0800)]
Remove space between _ and (
nick_m [Sat, 4 Mar 2017 18:38:47 +0000 (05:38 +1100)]
fix uninitialised variable (fixes linked midi region negative start oatch)
nick_m [Sat, 4 Mar 2017 18:34:41 +0000 (05:34 +1100)]
no-op - comment/whitespace fixes.
nick_m [Sat, 4 Mar 2017 18:21:56 +0000 (05:21 +1100)]
tempo editing updates
- a tempo marker may now be set to always continue (clamped)
this means that the end tempo of the previous section will
track the start tempo during tempo ops.
it mimics the behaviour in 5.8, with the gui indicating
the curves to be changed.
Robin Gareus [Sat, 4 Mar 2017 17:25:37 +0000 (18:25 +0100)]
Notify UI when plugin state is copied/replaced
Robin Gareus [Sat, 4 Mar 2017 16:47:57 +0000 (17:47 +0100)]
Don't allow GMCP to override loading_state_version
- GMPC does not use it directly
- when GMPC was enabled Stateful::loading_state_version was set to 1000
(the protocol is at 1.0.0)
- it messes up session-loading, particularly various plugin states and
templates (e.g Processor::set_state_2X was used)
nick_m [Sat, 4 Mar 2017 15:06:49 +0000 (02:06 +1100)]
undoing a create note drag restores screen position.
nick_m [Sat, 4 Mar 2017 14:57:10 +0000 (01:57 +1100)]
rework percussive hit spraying.
- the spray is limited to the first entered note.
- all new notes are selected (requires a selection change to
MRV::create_note_at()
nick_m [Sat, 4 Mar 2017 14:50:04 +0000 (01:50 +1100)]
spraying percussive hits has one undo step per drag.
- should fix 7134
nick_m [Sat, 4 Mar 2017 14:23:12 +0000 (01:23 +1100)]
remove bogus variable from last commit
Tim Mayberry [Sat, 4 Mar 2017 05:20:56 +0000 (15:20 +1000)]
Add reset region gain action for selected regions
nick_m [Sat, 4 Mar 2017 00:28:49 +0000 (11:28 +1100)]
offset linked regions to compensate for negative start after trim drag.
- should fix 7105
Robin Gareus [Fri, 3 Mar 2017 19:07:26 +0000 (20:07 +0100)]
Add 7890 aka tom- to contributor list
Robin Gareus [Thu, 2 Mar 2017 20:20:09 +0000 (21:20 +0100)]
Fix crash when inserting time with split intersected regions
Robin Gareus [Thu, 2 Mar 2017 19:00:15 +0000 (20:00 +0100)]
Don't try to auto-start engine for new sessions
Work around logic-flow in EngineDialog which should already have
done that, but may no longer heed this special-case if sample-rate
dropdown is refreshed to only devices supported ones.
Robin Gareus [Thu, 2 Mar 2017 18:39:35 +0000 (19:39 +0100)]
Ship system_config with bundles again.
This partially reverts commit
ac40945ff96f27606ff5d3600cf06b0ba663a5e1.
re-add system_config, but not instant.xml
Robin Gareus [Thu, 2 Mar 2017 18:37:36 +0000 (19:37 +0100)]
Empty system_config (pre-seed XML nodes, use built-in settings)
Hotfix work around:
1) Launch without existing user-config and no system_config
2) Load or create session. save/quit.
3) re-load session. save. user-config file is corrupted in <Extra>
Paul Davis [Wed, 1 Mar 2017 21:29:54 +0000 (22:29 +0100)]
ArdourButton: if _act_on_release is true, only trigger actions/signal clicks on key release, and vice versa
This should really be split in separate semantics for key and button events.
Fixes a subtle but nasty bug in the EngineDialog where the change of the default focus
widget from a Gtk::Button (acts on press) to an ArdourButton (acts on release) caused
events occuring after a dialog has grabbed focus to trigger button clicks
Robin Gareus [Wed, 1 Mar 2017 17:52:40 +0000 (18:52 +0100)]
Fix crash when adding a plugin immediately after re-order (via script)
The re-order is queued to be performed click-free in realtime-context.
Meanwhile adding plugins will result in a race-condition.
Robin Gareus [Wed, 1 Mar 2017 16:17:27 +0000 (17:17 +0100)]
Don't automatically open generic UIs for plugins w/o controls
Robin Gareus [Wed, 1 Mar 2017 16:08:44 +0000 (17:08 +0100)]
Don't display "channel-selector" for plugins only pretending to be instruments
If a plugin has 0 audio-outputs, and has the meta-data "InstrumentPlugin",
Ardour would interpret is as "variable number of output synth.
Robin Gareus [Wed, 1 Mar 2017 12:04:39 +0000 (13:04 +0100)]
Fix audition with monitor-section.
When a monitor-section is added, the auditioner automatically connects to
its input. However on session-reload, the connection is explicit
(by saved port-name) and Auditioner::needs_monitor() was not set.
Session::process_audition() didn't run the monitor-route. Silence.
Robin Gareus [Wed, 1 Mar 2017 10:54:52 +0000 (11:54 +0100)]
Fix implicit selection when operating track-header ctrl buttons
Stop event propagation. Otherwise, on release the event is passed
up and handled by the TAV which scrolls the editor viewpoint
and the button is no longer under the mouse.
Robin Gareus [Tue, 28 Feb 2017 20:33:13 +0000 (21:33 +0100)]
c89 compat (gcc4, mingw..)
Robin Gareus [Tue, 28 Feb 2017 19:08:03 +0000 (20:08 +0100)]
Tweak/optimize VST callback:
The audioMasterAutomate callback from plugin to host does include
the parameter-value.
Previously there was a redundant call
Plugin::parameter_changed_externally() -> get_parameter
-> VSTPlugin::get_parameter() back into the plugin to query the value.
calling back into the plugin from the callback, may explain
oddities and/or crashes with some VSTs.
Paul Davis [Tue, 28 Feb 2017 16:27:21 +0000 (17:27 +0100)]
when destroying a MidiSource, invalidate any existing MidiCursors
(such as those held in a MidiPlaylist's RegionTrackers
Robin Gareus [Tue, 28 Feb 2017 15:28:44 +0000 (16:28 +0100)]
initialize some uninitialized vars
Robin Gareus [Tue, 28 Feb 2017 15:24:07 +0000 (16:24 +0100)]
Fix loading SMF meta-data > 127 bytes (no more g_critical abort)
nick_m [Tue, 28 Feb 2017 14:58:53 +0000 (01:58 +1100)]
allow continuation of tempo via right-click 'Continue' where appropriate.
- this is the opposite of 'Ramp to Next'.
it removes discontinuities between the
last end tempo and the current by altering the current one.
Robin Gareus [Tue, 28 Feb 2017 04:00:34 +0000 (05:00 +0100)]
Update GUI when playing mute-automation
Robin Gareus [Tue, 28 Feb 2017 03:59:45 +0000 (04:59 +0100)]
Fix touching mute automation (mostly)
controllable->set_value() from GUI context will eventually queue
a session-rt command. By the time the realtime command runs, the
controllable needs to be in "touch" mode.
The AutomationController "toggle" UI worked around this by directly using
the underlying API (ignoring slaved-controls and ignoring groups).
The RouteUI's GUI wasn't able to write mute-automation at all.
This commit is a compromise: press + hold (touch) + release button.
(it may need further special-casing for _desc.toggled in
AutomationControl::actually_set_value(), also undoing automation-writes
is currently not working correctly)
Ben Loftis [Tue, 28 Feb 2017 02:51:04 +0000 (20:51 -0600)]
Likely fix for bug: cannot change track colors in older 4.x sessions.
nick_m [Mon, 27 Feb 2017 16:11:22 +0000 (03:11 +1100)]
probable fix for importing tempo maps that use non-quarter note pulse.
- actually i'm not certain that this is correct,
but it works ok Beethoven's fifth.
nick_m [Mon, 27 Feb 2017 14:05:39 +0000 (01:05 +1100)]
_group, group.. who cares?
nick_m [Mon, 27 Feb 2017 08:20:50 +0000 (19:20 +1100)]
clicking on curve text does the right thing.
nick_m [Mon, 27 Feb 2017 06:53:31 +0000 (17:53 +1100)]
initial rework of tempo text display (numbers are curve items)
- move tempo numbers to a layer above the curve.
- the offset of the text box in Marker is horrible here.
what to do?
nick_m [Mon, 27 Feb 2017 06:40:20 +0000 (17:40 +1100)]
fix crash in pinch drag
nick_m [Mon, 27 Feb 2017 02:44:23 +0000 (13:44 +1100)]
remove scroll wheel editing nonsense (tempo)
nick_m [Mon, 27 Feb 2017 02:14:53 +0000 (13:14 +1100)]
fix compilation
nick_m [Mon, 27 Feb 2017 01:29:55 +0000 (12:29 +1100)]
remove 'mouse:' verbose cursor when shift-dragging a curve.
nick_m [Mon, 27 Feb 2017 01:00:25 +0000 (12:00 +1100)]
only allow 'ramp to next' if the next tempo is actually different.
nick_m [Mon, 27 Feb 2017 00:59:16 +0000 (11:59 +1100)]
poor man's display of end tempo for ramps.
nick_m [Mon, 27 Feb 2017 00:41:48 +0000 (11:41 +1100)]
harden TempoMap::next_tempo_section () a bit.
nick_m [Mon, 27 Feb 2017 00:10:47 +0000 (11:10 +1100)]
Tempo Marks : set point colour by discontinuity, display non-quarter pulse if we are non-quarter.
- a jump in tempo by more than 1 ntpm results in a red
tempo mark pointer.
- ignore UIConfiguration::get_allow_non_quarter_pulse()
when displaying note type in the marker text (only display
note type if we are non-quarter).
nick_m [Sun, 26 Feb 2017 17:36:48 +0000 (04:36 +1100)]
remove commented line
nick_m [Sun, 26 Feb 2017 17:22:45 +0000 (04:22 +1100)]
fix tempo marker ramp to next.
nick_m [Sun, 26 Feb 2017 17:12:13 +0000 (04:12 +1100)]
amend last commit (don't depend on 0.0)
nick_m [Sun, 26 Feb 2017 17:01:11 +0000 (04:01 +1100)]
hopefully fix legacy session loading (tempo)
nick_m [Sun, 26 Feb 2017 16:03:55 +0000 (03:03 +1100)]
add right-click 'Ramp to Next' tempo marker menu item.
nick_m [Sun, 26 Feb 2017 15:26:08 +0000 (02:26 +1100)]
back to using shift-ctrl for pinch drag. set colours of affected curves.
nick_m [Sun, 26 Feb 2017 15:21:05 +0000 (02:21 +1100)]
add TempoMap::next_tempo_section()