13
0
Commit Graph

20068 Commits

Author SHA1 Message Date
671eddb610 deploy all *.colors files in binary bundles 2016-04-26 22:42:28 +02:00
cda5b48b96 initialize output data ports for cases where the plugin is not run
(e.g. load session with inactive track, or instantiate an audio plugin
on a midi track before the synth)
2016-04-26 22:21:00 +02:00
4b8bc84e4a let GMainContext clean up after us.
this fixes a potential crash in
AsyncMIDIPort::~AsyncMIDIPort() -> CrossThreadChannel::~CrossThreadChannel()
2016-04-26 19:45:06 +02:00
43e620504a port 93eac8b0 to ALSA and CoreAudio 2016-04-26 18:19:48 +02:00
59f7df38a2 allow to duplicate tracks with sends or load templates with sends/inserts 2016-04-26 18:16:14 +02:00
09e5730ffd lua snippet to interact with portengine 2016-04-26 18:16:14 +02:00
5227f57f2e implement missing PortManager methods and lua-bind them 2016-04-26 18:16:14 +02:00
7f8c7d8647 #define HAVE_JACK_PORT_RENAME when building with MSVC
This means needing to build against libjack v1.9.11 (or later) although that's probably not a bad thing.
2016-04-26 15:02:20 +01:00
93eac8b068 Use 'const_iterator' to prevent MSVC from complaining 2016-04-26 14:58:16 +01:00
f8e05b6be3 remove the splash-screen when changing sessions
ARDOUR_UI::load_session()'s loading_message() shows the splash in
all cases. But only the initial ARDOUR_UI::starting() does destroy it.

In some cases we got away because the Engine Dialog pops back the
splash and the dialog is never destroyed (only hidden).
It's not until ~Dialog that the splash is displayed again (if it exists).
2016-04-26 13:03:47 +02:00
01286b442e don't show engine dialog when loading a session..
..and the engine is running at the desired samplerate
2016-04-26 12:56:52 +02:00
7cbc6cf8a2 styleguide #10
sigc keeps a reference to the shared_ptr, AsyncMidiPorts were never
unregistered, causing issues when loading a new session w/o Engine
restart.
2016-04-26 04:02:58 +02:00
2169de3975 keep portmap & portindex in sync when renaming ports
Fixes crash on session re-load (introduced in 800c8182 and fde99e68)
2016-04-26 02:26:20 +02:00
11a69068af PortManager lua bindings (to debug lingering ports) 2016-04-26 02:21:09 +02:00
d27f223cd6 tweak location-UI layout (right-align checkboxes & buttons) 2016-04-25 19:55:00 +02:00
e4890b1a85 slightly improved location-UI layout 2016-04-25 19:39:59 +02:00
d1ea5ea22a NO-OP whitespace 2016-04-25 18:49:42 +02:00
674fa50fb8 return of the location GoTo Button
Despite the tooltip, middle-click to locate is not very discoverable,
and tricky to not-available on MacBooks.
2016-04-25 18:17:35 +02:00
77a36d6392 compile-time test for useful ASL API 2016-04-25 09:37:27 -04:00
0e1642f0b4 remove unused code 2016-04-25 09:37:27 -04:00
e984dcec74 fix copy/paste typo in in 5e0f0fc 2016-04-25 14:29:12 +02:00
0e4b3735a5 update luadoc tools 2016-04-25 13:49:43 +02:00
4f3f966276 update [lua bindings] documentation 2016-04-25 13:06:40 +02:00
5e0f0fc9f2 lua action details (button sensitivity, text ellipsis) 2016-04-25 12:56:21 +02:00
f4f9963cdd add missing header for luadoc 2016-04-25 02:35:45 +02:00
9c622e3c99 add optional buttons to trigger lua scripted actions. 2016-04-25 00:16:08 +02:00
55fb20f491 update keyeditor when action label changes 2016-04-24 22:20:44 +02:00
fde99e68f7 ..and CoreAudio. 2016-04-24 20:45:50 +02:00
800c8182c6 O(log(n)) port and connection lookup for ALSA 2016-04-24 20:45:37 +02:00
ce052ba20a now with C++98 compat 2016-04-24 18:34:31 +02:00
a3856d44b2 delayline: use boost::shared_array 2016-04-24 18:26:39 +02:00
d1874d4685 optimize port lookup, adding/removing/reconnecting routes
xxxAudioBackend::connected_to() is called O(N^2) when building the graph.
Mitigate this by using an O(log(N)) lookup.

This duplicates the storage (both set and map and both are kept in sync.
Changing this to a boost:bidirectional might be nice, before updating
other backends.
2016-04-24 18:26:39 +02:00
1321701189 reduce debug-build overhead. 2016-04-24 18:26:39 +02:00
36a928f0ae we need the process lock after all.. 2016-04-24 18:26:39 +02:00
2fabe64bbb restore sending stderr/stdout to the console
This is done unconditionally right now for any ARDOUR_BUNDLED case. Need to
find a conditional, so that we can run from the command line/inside a debugger.
The -psn_XXXX argument will likely work
2016-04-24 11:25:03 -04:00
d2b892a9ae add debug facilities to arlua (valgrind, callgrind) to test libardour 2016-04-24 14:43:18 +02:00
f80c0faa24 some new lua-bindings and session-lua (creating sessions) 2016-04-24 14:43:18 +02:00
f02db9b04e NO-OP whitespace 2016-04-24 14:43:18 +02:00
e025c45cda fix crash when loading a session with non-default clock modes.
set_mode() emits ModeChanged which results in save_extra_xml().
If this happens during session-load, the XML iterator is invalidated.
2016-04-24 14:43:18 +02:00
667a4aafb5 fix mismatched delete/delete[] 2016-04-24 14:43:18 +02:00
f6a621346c some notes on mem-leaks... 2016-04-24 14:43:18 +02:00
e3536fbefe hand over automationlist undo state ownership (mem-leak) 2016-04-24 14:43:18 +02:00
e3607a4c8b plug some memory leaks in libardour 2016-04-24 14:43:18 +02:00
c4c6c38dbd do NOT use Glib::ustring unless you know that the contents are UTF-8 AND that you need to iterate glyph by glyph
This fixes a Glib::ConvertError that occured when using Glib::ustring::operator<<
inside a compose operation. This implicitly uses Glib::locale_from_utf8(), and if the string
is not legal UTF-8, an exception will be thrown.

std::string should be used EVERYWHERE unless glyph-by-glyph iteration is required. This is
very rare in the Ardour codebase, so you really shouldn't see Glib::ustring anywhere. The
main exception is handling user-input for a few specific cases.
2016-04-24 00:38:05 -04:00
4fe7d1ea08 further tweaks to session close 2016-04-24 02:53:01 +02:00
f317451609 lua bindings for track/bus and session creation 2016-04-24 00:25:34 +02:00
f8936ebcb1 Disconnect Signals before dropping ports
significantly speeds up session close
2016-04-24 00:24:43 +02:00
2a7a64a873 delegate port-connections to low priority thread.
This prevents a deadlock with (some versions) jack:
 * add new instrument track with instrument
 * configure processors (takes processor lock)
 * add I/Os (delivery) -> create ports
 * auto-connect ports
 * jack port-connect -> jack graph re-order
 * Ardour graph-re-order
 * needs processor lock (to check sends)
2016-04-23 22:11:48 +02:00
d30b901d8c save-as/snapshot tweaks:
* allow to take snapshots and save-as read-only session.
* change ambiguous "Save as" window title for "Snapshot & Switch"
* start save-as in configured session-dir
2016-04-23 14:45:19 +02:00
e4b2b6477f fix typo in config variable 2016-04-23 00:01:28 +02:00