13
0
Commit Graph

23424 Commits

Author SHA1 Message Date
c6a7c9417e Plug some mixer memory leaks 2017-01-20 13:53:45 +01:00
1d2a76f239 Free some one time alloc of the UI (cleaner valgrind output)
No incremental leaks here..
* downcase (const char*) uses strdup, caller needs to free
* free allocated cursors when the editor is destroyed
* drop static editor lua-instance & bindings
* delete allocated gtk image/icons
2017-01-20 13:53:37 +01:00
a8afe7faab Remove cruft 2017-01-20 11:43:42 +01:00
f05a07837b MIDI leaks -- the Controllergate conspiracy debunked 2017-01-20 11:40:53 +01:00
02d484de8a Plug some libardour memory leaks 2017-01-20 11:32:55 +01:00
6b5dce2c66 Yet another pane pain: allow deleting children using forall_vfunc
We not only need to make sure the iterator remains valid, but also
the object pointed to.

Valgrind trace:
Invalid read of size 8
 Gtkmm2ext::Pane::forall_vfunc(int, void (*)(_GtkWidget*, void*), void*) (pane.cc:617)
 Gtk::Container_Class::forall_vfunc_callback(_GtkContainer*, int, void (*)(_GtkWidget*, void*), void*)
 gtk_container_destroy (gtkcontainer.c:1073)
 g_closure_invoke (gclosure.c:804)
...
 g_object_run_dispose (gobject.c:1084)
2017-01-20 03:13:41 +01:00
4ee8a0e9fc Plug a memory leak (recent session list, session info) 2017-01-20 01:49:23 +01:00
7e766be2cb Add a note. 2017-01-20 00:50:29 +01:00
b084036c87 Fix oddities when replacing VST-presets.
VST used the count of available of presets as URI:
 - add 2 presets (1,2)
 - remove first, add another one -> two presets with same URI (2,2)

PluginInfo::get_presets() simply lists all (name only) in a vector.
Plugin::find_presets() uses the URI in a map (unique by URI).

..various ensuing bugs: eg. Plugin::remove_preset() looked up by name,
but didn't check for NULL.
2017-01-20 00:50:14 +01:00
7617477609 Scale default Atom Ringbuffer size with samplerate
This increases the safe-margin for plugins producing more messages
sent to the plugin GUI (usually fixed ~25Hz updates)
2017-01-19 21:35:22 +01:00
5d7b6fdd62 ancillary change related to removal of boost::optional<Rect> 2017-01-19 20:55:38 +01:00
4fa4b9a135 remove use of boost::optional to define "undefined" Canvas::Rect, and use Rect::empty instead.
This commit includes Rect::operator bool() which might be a candidate for removal in a future commit, in an attempt
to make the meaning clearer
2017-01-19 20:54:54 +01:00
758f183b99 add delete x-run marker script 2017-01-19 19:35:55 +01:00
aaf441d18f Fix metronome level preference display
click-level fader is not a component added to the top-level, the page
intercepts the parameter_changed signal
2017-01-19 19:27:44 +01:00
e35f11e515 Allow to change metronome level via mouse-wheel 2017-01-19 19:12:25 +01:00
dc11651694 Relax monitor-section processor channel restriction 2017-01-19 18:32:45 +01:00
92115dc3ea Update monitor section controls when channelcount changes 2017-01-19 16:29:29 +01:00
425cdb7e48 GUI: use new preroll-rec + trim mode 2017-01-19 13:05:54 +01:00
8fba1cacd7 Add some comment 2017-01-19 13:05:54 +01:00
9c08a403c4 Add alternative preroll record mode:
* Start recording at preroll, trim region to skip preroll at rec-stop
* Keep old punch-in rec-at-preroll API for tape-tracks (later)
2017-01-19 13:05:54 +01:00
e959a762b5 Rework preroll-rec API:
* rename: indicate that recording happens after preroll, punch-in
* move API into libardour: rec+roll (no separate setup, seek, roll APIs)
2017-01-19 13:05:54 +01:00
ebdf3de598 Remove rec-with-preroll, prepare for rework 2017-01-19 13:05:54 +01:00
22eae69078 Remove Editor API to calc preroll duration 2017-01-19 13:05:54 +01:00
0f020e59b8 Move preroll duration calc into libardour 2017-01-19 13:05:54 +01:00
7939c2211c Add comment regarding themeable boxes 2017-01-18 18:28:21 -06:00
09e15909e0 Tweak some tooltip text. 2017-01-18 18:25:25 -06:00
45622aff48 Allow editor toolbar and background to be themeable. 2017-01-18 18:25:25 -06:00
b4cf8cfc49 fix up Canvas::Grid child layout 2017-01-19 00:24:54 +01:00
73acd5b413 correct translation matrix for Canvas::Widget 2017-01-19 00:24:54 +01:00
f6061b32b2 fix code for ArdourButton so that an existing translation component to the cairo transformation matrix is honored correctly 2017-01-19 00:24:54 +01:00
c91c028c37 do not add items twice to their canvas parent! 2017-01-19 00:24:54 +01:00
ef64c7ba19 Promote the preroll_seconds config option to include musical time:
Interpret negative preroll time as bars
2017-01-18 23:47:50 +01:00
d650b3c292 prepare for musical-time preroll 2017-01-18 17:31:42 +01:00
6a486c0bf5 tweak table packing for more consistent spacing between buttons. 2017-01-18 10:33:38 -06:00
bc9b2f01f3 Shuffle the layout of new monitor section, so it is recognizably different than punch section; Standardize the button heights. 2017-01-18 10:33:38 -06:00
645402bc42 Add GUI action to record with preroll 2017-01-18 15:16:05 +01:00
efd10abdfb Implement record with preroll 2017-01-18 15:15:48 +01:00
cf31233cd1 Cleanup global monitor options:
- rely on parameter-changed signal emission to update buttons
- use dedicated button/style names
- improve tooltip
2017-01-18 12:25:02 +01:00
48da03e301 push sorted Stripable order back to PI (for control surfaces) 2017-01-18 05:14:48 +01:00
e8a4fe49b9 Add session option to enable count-in 2017-01-17 20:44:50 +01:00
a6e02c0d71 Implement Count-In (before recording), fixed BPM, up to 2 bars 2017-01-17 20:43:55 +01:00
fcbed9c1dc Split metronome methods into re-usable parts (for count-in) 2017-01-17 20:20:34 +01:00
b4ecb2525c Fix a -Wreorder 2017-01-16 22:30:39 +01:00
a9f0e218f5 Prepare generic spill ([mix]busses) 2017-01-16 22:30:26 +01:00
17d54a0d1c Configurable toolbar rec/punch & monitoring buttons 2017-01-16 21:58:53 +01:00
cf5a0de709 Add initial GUI support for global monitor states 2017-01-16 19:54:42 +01:00
88d797bd64 Prepare session-wide implicit monitoring overrides 2017-01-16 19:54:42 +01:00
88b3aa926a Accommodate newly introduced source(s) in our MSVC project (cairocanvas) 2017-01-16 15:21:47 +00:00
1e03ad7336 setlocale(LC_MESSAGES) isn't valid when building with MSVC
In fact AFAICT it isn't supported by MinGW either (I've a feeling it probably isn't valid on Windows at all).
2017-01-16 13:44:23 +00:00
09a8ec534f canvas::grid: get padding and margin to work; remove some debug output 2017-01-15 21:40:42 +00:00