13
0
Commit Graph

31382 Commits

Author SHA1 Message Date
650f027a9b
Backport VST3 diagnostic pragma
Fixes excessive warnings when compiling on macOS.

This will be overwritten with the identical upstream fix
https://github.com/steinbergmedia/vst3_pluginterfaces/blob/master/base/falignpush.h
with the next tools/update_vst3.sh run
2021-03-01 22:14:38 +01:00
e3c3109618
Unsubscribe from signals when clearing references
This fixes crashes with plugins calling setDirty() when the
UI is closed. `plugin` has already been reset before
the actual window is closed:

`PluginUIWindow::~PluginUIWindow()` runs, and destroys the window,
here `~VST3NSViewPluginUI ()`. This closes the VST3 view, which
triggers a `VST3PI::setDirty`.
At this point in time `~PlugUIBase()` has not yet run, so all
signals are still connected.

setDirty() ends up calling PlugUIBase::update_preset_modified()
which access `plugin` pointer, which is NULL.
2021-03-01 22:11:15 +01:00
291de1d277
Fix OSX and non GCC builds 2021-03-01 16:20:38 +01:00
0d838355c3
RecorderUI: handle meter lineup level config changes 2021-02-28 20:57:22 +01:00
f8c75914c4
RecorderUI: handle meter-theme changes 2021-02-28 20:03:12 +01:00
b064b3c136 OSC: fix some compiler warnings 2021-02-28 20:01:06 +01:00
0c3eaf188b OSC: liblo compatibility fix
see also 770fd1519c
2021-02-28 20:00:04 +01:00
7195ca20e0
Update weak_libjack - https://github.com/x42/weakjack/
This fixes an issue with recent MSVC causing a compile-error
due to __attribute__((constructor))
2021-02-28 16:27:22 +01:00
b553b67407
Fix curl free() ambiguity - fixes windows issues
curl_free() is to be used for data allocated by
curl_easy_escape() or curl_easy_unescape() in libcurl.

This is unrelated to realloc/free in WriteMemoryCallback().
2021-02-28 15:17:30 +01:00
f8ba27f417
Work around crash #8586
MidiRegionView::select_notes() may call MRV::add_to_selection
which may call editor().get_selection().clear ();
This in turn clears the pending_midi_note_selection, invalidating
iterator.

This bug was introduced in 7cf435a876 (6.5.148)
2021-02-28 14:58:18 +01:00
770fd1519c
Liblo compat fix
Upstream liblo changed the opaque type `lo_message` from void*
to a custom struct {}.

2c1ef1c682/
2021-02-28 02:25:02 +01:00
0f63cba3c7
Fix audition-tool
* Don't set default speed when using audition
* Use actual engine speed, since v6
  Session::transport_speed is {-1, 0, 1}
2021-02-27 23:12:15 +01:00
51cba19eaf
Fix big clock window record-state info
When showing the clock window after starting to record,
the record-state was not correctly indicated.
2021-02-27 19:25:45 +01:00
81d833e938
Fix Windows builds, declare class-keys for bindings 2021-02-27 16:51:37 +01:00
003245654a
Allow auto-start if there is no backend information for the session 2021-02-27 16:41:09 +01:00
835f30e5f5
Consistency: replace "x-run" with "xrun" (2/2) 2021-02-26 22:22:57 +01:00
ace11bd243
Consistency: replace "x-run" with "xrun" (1/2) 2021-02-26 22:22:08 +01:00
355528781d
Fix Bundle Editor: show connected ports
PortGroupList::gather() first adds UserBundle ports to
`system->add_bundle (*i, allow_dups);`

That can include ports that are already associated with the
current bundle. The port in this case has the Bundle's name.
Those ports are later removed in BundleEditorMatrix::setup_ports
`_ports[OTHER].remove_bundle (_bundle);`

However we do need to show physical ports by their name, even
if they're identical to the already associated bundle to allow
disassociating them.
2021-02-26 19:14:57 +01:00
4716f34c28
UserBundle: Allow adding/removing ports
Clean up internal API confusion
- can_add_channels_proxy () -- checks presence of io
- can_add_channel_proxy () -- checks io->can_add_port()

UserBundle don't have a PortGroup::_bundle reference
that can be used to lookup the IO via io_from_bundle().

While BundleEditorMatrix::can_add_channels_proxy() was overriden
to allow adding I/Os, can_add_channel_proxy() later prevented that.

This further prevents removing the last port, preventing empty bundles.
2021-02-26 15:49:07 +01:00
017b272864
Update I/O Button when bundles change
This fixes an issue with the connection button still showing
the name of a Bundle even after deleting it, or displaying an
old name after renaming a bundle.
2021-02-26 15:49:04 +01:00
Cameron
c075d3a026
prevent registering multiple identical file descriptors
fix indentation

fix more indentation
2021-02-26 15:47:40 +01:00
John Emmas
74670d2789 Derive some functions from RecInfoBox::update() (in the derived classes)
For whatever reason, MSVC doesn't like us connecting so many signals to 'RecInfoBox::update()' (crashes the Debug build)
2021-02-26 13:07:35 +00:00
739ee688bf
Fix Bundle I/O direction
With bundles `ports_are_inputs()` indicates inputs that Ardour
can write to (data sinks, for playback).

BundleEditor::input_or_output_changed () set this correctly.
2021-02-26 13:44:04 +01:00
1ae8ebf7c0
Fix OSX/PPC builds
monitor_port.cc:164: error: reference to 'AudioBuffer' is ambiguous
candidates are:
 CoreAudio.framework/Headers/CoreAudioTypes.h:106: typedef struct AudioBuffer AudioBuffer
 ardour/audio_buffer.h:34: error: class ARDOUR::AudioBuffer
2021-02-26 13:38:29 +01:00
d2d268263c
Add Lua Bindings to access Bundles 2021-02-26 13:34:24 +01:00
61b29c5810
Fix track-record-axis cleanup, duplicate self delete
Also hide/delete IOSelector dialogues early on when closing
the session.
2021-02-26 03:08:35 +01:00
ad9e44e92a
RecorderUI: consistent rec-arm button size
The rec-arm circle diameter is given by 0.5 * min (width, height).
For mono tracks the diameter is limited with the height of the
track. When more channel meters are visible the height increases and
the rec-arm circle grows.

The solution here is to constrain the rec-arm button width to its
minimum and not grow to have the same width as other buttons.

This also changes the default meter-height so mono and stereo tracks
have the same height (with default scaling).
2021-02-26 00:02:50 +01:00
611fff21ae
NO-OP: remove unused variables 2021-02-25 23:57:33 +01:00
4ccad6eae4
Fix pasting processors pre-fader #7416
Previously when using index == 0, a hidden processor
(Recorder or Delayline) would be returned instead of the first
actual processor.
2021-02-25 19:54:12 +01:00
a7ce58b995
Fix rec-ruler time display
The calculation to round the distance to seconds has to be performed
using floating point maths, not just the result being cast to double.
The time-granularity must not be zero.
2021-02-25 17:59:53 +01:00
a9192266d0
Only save engine-hints when ardour started the engine 2021-02-25 17:53:45 +01:00
John Emmas
53b90dc0dc Add a cast when using 'ceil' (to keep MSVC happy) 2021-02-25 16:46:19 +00:00
07d04be98d
Potential fix for MSVC builds
The set is defined with custom compare fn:
  std::set<T, cmp> x;
but later iterators used a default constructor:
  std::set<T>::iterator i = x.begin();
2021-02-25 15:55:10 +01:00
d124b3600b
Add a separator between script and window buttons 2021-02-25 14:29:12 +01:00
4521bf9158
Re-arrange Rec/Edit/Mix buttons
* Arrange Edit & Mix to reach the right-edge, stacking
 them the same way, as previous versions for muscle memory.
* Hide preferences window button
2021-02-25 14:00:59 +01:00
8985e50672
Use verbs for the toolbar tab/window buttons 2021-02-25 13:58:27 +01:00
353e9b6843
Remove hardcoded file info box width
This addresses an issue with translations, where some labels
result the box to need a width > 300px.
This also scales the box with the rest of the UI.
2021-02-25 04:11:06 +01:00
49f5df69a1
Reduce Prefs Dialog min-width
* Shorten long labels
  Those increase the x-offset for the data table column on the right.
* Shorten some long ComboBox texts
* Reduce min. slider controller width
* Tag some long labels and dropdowns that are currently the bottleneck
2021-02-24 21:37:16 +01:00
24a4f37aaa
Cont'd Preferences pane re-ordering
* Split "Signal Flow" pages to reduce height requirement
  -> Signal Flow  & -> Solo/Monitoring
  The latter is just control logic, no signal flow changes.
* Group CPU/FPU performance Options
* Move Region-Analysis to Metering (it is not performance related)
2021-02-24 21:37:16 +01:00
6a7cc2a3e9
Work around over-sized ComboBoxes in the Prefs. dialog 2021-02-24 21:37:16 +01:00
John Emmas
d2cb383965 MSVC changes to support the new code modules (Tabbable API stuff) 2021-02-24 14:32:23 +00:00
68d26ffee9
Relax A5 style exclusive In/Disk monitoring
This allows "All In" and "All Disk" to be selected simultaneously.
2021-02-24 00:21:44 +01:00
dfffec9b58
Allow forcing cue-monitoring 2021-02-24 00:20:21 +01:00
7f9dae0078
RecorderUI: add a "+" add route button
This provides consistent look and feel with the mixer-window.
2021-02-23 23:07:22 +01:00
f31e8ede4c
Unconditionally switch Manual->Play when drawing automation 2021-02-23 22:00:27 +01:00
33c596e149
Warn user if the engine device changed
This prevents accidentally auto-starting the engine (most recently
used device) with a session that recently used different hardware.
2021-02-23 19:32:03 +01:00
0b00eabb19
Store recently used backend with session
This is in preparation to warn a user in case the session
is loaded with a different device and connections may be lost.
2021-02-23 19:22:22 +01:00
02ba5a7cd1
Remove unused Tabbable tab_title (3/3) 2021-02-23 17:30:26 +01:00
73fb2ddfed
Remove deprecated tab_title (2/3) 2021-02-23 17:23:08 +01:00
d264cbb21b
Prepare for Tabbable API change (1/3) 2021-02-23 17:22:22 +01:00