ardour.git
7 years agoPlug a memory leak (recent session list, session info)
Robin Gareus [Fri, 20 Jan 2017 00:49:23 +0000 (01:49 +0100)]
Plug a memory leak (recent session list, session info)

7 years agoAdd a note.
Robin Gareus [Thu, 19 Jan 2017 23:50:29 +0000 (00:50 +0100)]
Add a note.

7 years agoFix oddities when replacing VST-presets.
Robin Gareus [Thu, 19 Jan 2017 23:33:44 +0000 (00:33 +0100)]
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.

7 years agoScale default Atom Ringbuffer size with samplerate
Robin Gareus [Thu, 19 Jan 2017 20:07:22 +0000 (21:07 +0100)]
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)

7 years agoancillary change related to removal of boost::optional<Rect>
Paul Davis [Thu, 19 Jan 2017 19:55:38 +0000 (20:55 +0100)]
ancillary change related to removal of boost::optional<Rect>

7 years agoremove use of boost::optional to define "undefined" Canvas::Rect, and use Rect::empty...
Paul Davis [Thu, 19 Jan 2017 19:54:24 +0000 (20:54 +0100)]
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

7 years agoadd delete x-run marker script
Robin Gareus [Thu, 19 Jan 2017 18:35:55 +0000 (19:35 +0100)]
add delete x-run marker script

7 years agoFix metronome level preference display
Robin Gareus [Thu, 19 Jan 2017 18:27:26 +0000 (19:27 +0100)]
Fix metronome level preference display

click-level fader is not a component added to the top-level, the page
intercepts the parameter_changed signal

7 years agoAllow to change metronome level via mouse-wheel
Robin Gareus [Thu, 19 Jan 2017 18:12:25 +0000 (19:12 +0100)]
Allow to change metronome level via mouse-wheel

7 years agoRelax monitor-section processor channel restriction
Robin Gareus [Thu, 19 Jan 2017 17:32:45 +0000 (18:32 +0100)]
Relax monitor-section processor channel restriction

7 years agoUpdate monitor section controls when channelcount changes
Robin Gareus [Thu, 19 Jan 2017 14:42:27 +0000 (15:42 +0100)]
Update monitor section controls when channelcount changes

7 years agoGUI: use new preroll-rec + trim mode
Robin Gareus [Thu, 19 Jan 2017 12:04:41 +0000 (13:04 +0100)]
GUI: use new preroll-rec + trim mode

7 years agoAdd some comment
Robin Gareus [Thu, 19 Jan 2017 12:04:07 +0000 (13:04 +0100)]
Add some comment

7 years agoAdd alternative preroll record mode:
Robin Gareus [Thu, 19 Jan 2017 12:03:57 +0000 (13:03 +0100)]
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)

7 years agoRework preroll-rec API:
Robin Gareus [Thu, 19 Jan 2017 11:57:47 +0000 (12:57 +0100)]
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)

7 years agoRemove rec-with-preroll, prepare for rework
Robin Gareus [Thu, 19 Jan 2017 11:41:48 +0000 (12:41 +0100)]
Remove rec-with-preroll, prepare for rework

7 years agoRemove Editor API to calc preroll duration
Robin Gareus [Thu, 19 Jan 2017 11:40:34 +0000 (12:40 +0100)]
Remove Editor API to calc preroll duration

7 years agoMove preroll duration calc into libardour
Robin Gareus [Thu, 19 Jan 2017 11:39:15 +0000 (12:39 +0100)]
Move preroll duration calc into libardour

7 years agoAdd comment regarding themeable boxes
Ben Loftis [Thu, 19 Jan 2017 00:28:21 +0000 (18:28 -0600)]
Add comment regarding themeable boxes

7 years agoTweak some tooltip text.
Ben Loftis [Thu, 19 Jan 2017 00:25:13 +0000 (18:25 -0600)]
Tweak some tooltip text.

7 years agoAllow editor toolbar and background to be themeable.
Ben Loftis [Thu, 19 Jan 2017 00:21:48 +0000 (18:21 -0600)]
Allow editor toolbar and background to be themeable.

7 years agofix up Canvas::Grid child layout
Paul Davis [Wed, 18 Jan 2017 23:23:29 +0000 (00:23 +0100)]
fix up Canvas::Grid child layout

7 years agocorrect translation matrix for Canvas::Widget
Paul Davis [Wed, 18 Jan 2017 23:23:10 +0000 (00:23 +0100)]
correct translation matrix for Canvas::Widget

7 years agofix code for ArdourButton so that an existing translation component to the cairo...
Paul Davis [Wed, 18 Jan 2017 23:22:05 +0000 (00:22 +0100)]
fix code for ArdourButton so that an existing translation component to the cairo transformation matrix is honored correctly

7 years agodo not add items twice to their canvas parent!
Paul Davis [Wed, 18 Jan 2017 09:21:58 +0000 (10:21 +0100)]
do not add items twice to their canvas parent!

7 years agoPromote the preroll_seconds config option to include musical time:
Robin Gareus [Wed, 18 Jan 2017 22:47:50 +0000 (23:47 +0100)]
Promote the preroll_seconds config option to include musical time:

Interpret negative preroll time as bars

7 years agoprepare for musical-time preroll
Robin Gareus [Wed, 18 Jan 2017 16:30:55 +0000 (17:30 +0100)]
prepare for musical-time preroll

7 years agotweak table packing for more consistent spacing between buttons.
Ben Loftis [Wed, 18 Jan 2017 16:21:11 +0000 (10:21 -0600)]
tweak table packing for more consistent spacing between buttons.

7 years agoShuffle the layout of new monitor section, so it is recognizably different than punch...
Ben Loftis [Wed, 18 Jan 2017 14:28:25 +0000 (08:28 -0600)]
Shuffle the layout of new monitor section, so it is recognizably different than punch section; Standardize the button heights.

7 years agoAdd GUI action to record with preroll
Robin Gareus [Wed, 18 Jan 2017 14:16:05 +0000 (15:16 +0100)]
Add GUI action to record with preroll

7 years agoImplement record with preroll
Robin Gareus [Wed, 18 Jan 2017 14:15:48 +0000 (15:15 +0100)]
Implement record with preroll

7 years agoCleanup global monitor options:
Robin Gareus [Wed, 18 Jan 2017 11:25:02 +0000 (12:25 +0100)]
Cleanup global monitor options:

- rely on parameter-changed signal emission to update buttons
- use dedicated button/style names
- improve tooltip

7 years agopush sorted Stripable order back to PI (for control surfaces)
Robin Gareus [Wed, 18 Jan 2017 04:14:48 +0000 (05:14 +0100)]
push sorted Stripable order back to PI (for control surfaces)

7 years agoAdd session option to enable count-in
Robin Gareus [Tue, 17 Jan 2017 19:44:50 +0000 (20:44 +0100)]
Add session option to enable count-in

7 years agoImplement Count-In (before recording), fixed BPM, up to 2 bars
Robin Gareus [Tue, 17 Jan 2017 19:43:55 +0000 (20:43 +0100)]
Implement Count-In (before recording), fixed BPM, up to 2 bars

7 years agoSplit metronome methods into re-usable parts (for count-in)
Robin Gareus [Tue, 17 Jan 2017 19:20:34 +0000 (20:20 +0100)]
Split metronome methods into re-usable parts (for count-in)

7 years agoFix a -Wreorder
Robin Gareus [Mon, 16 Jan 2017 21:30:39 +0000 (22:30 +0100)]
Fix a -Wreorder

7 years agoPrepare generic spill ([mix]busses)
Robin Gareus [Mon, 16 Jan 2017 21:30:26 +0000 (22:30 +0100)]
Prepare generic spill ([mix]busses)

7 years agoConfigurable toolbar rec/punch & monitoring buttons
Robin Gareus [Mon, 16 Jan 2017 20:58:53 +0000 (21:58 +0100)]
Configurable toolbar rec/punch & monitoring buttons

7 years agoAdd initial GUI support for global monitor states
Robin Gareus [Mon, 16 Jan 2017 18:54:20 +0000 (19:54 +0100)]
Add initial GUI support for global monitor states

7 years agoPrepare session-wide implicit monitoring overrides
Robin Gareus [Mon, 16 Jan 2017 18:42:04 +0000 (19:42 +0100)]
Prepare session-wide implicit monitoring overrides

7 years agoAccommodate newly introduced source(s) in our MSVC project (cairocanvas)
John Emmas [Mon, 16 Jan 2017 15:21:47 +0000 (15:21 +0000)]
Accommodate newly introduced source(s) in our MSVC project (cairocanvas)

7 years agosetlocale(LC_MESSAGES) isn't valid when building with MSVC
John Emmas [Mon, 16 Jan 2017 13:44:23 +0000 (13:44 +0000)]
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).

7 years agocanvas::grid: get padding and margin to work; remove some debug output
Paul Davis [Sun, 15 Jan 2017 21:40:23 +0000 (21:40 +0000)]
canvas::grid: get padding and margin to work; remove some debug output

7 years agoAdd Japanese translation
Hiroki Inagaki [Sat, 14 Jan 2017 16:32:51 +0000 (08:32 -0800)]
Add Japanese translation

7 years agoget grid layout working
Paul Davis [Sun, 15 Jan 2017 12:11:25 +0000 (12:11 +0000)]
get grid layout working

7 years agotweak Grid repositioning code to be a little more O(N)
Paul Davis [Sat, 14 Jan 2017 13:15:48 +0000 (13:15 +0000)]
tweak Grid repositioning code to be a little more O(N)

7 years agobasic (and probably wrong) Canvas::Grid child placement
Paul Davis [Sat, 14 Jan 2017 12:56:26 +0000 (12:56 +0000)]
basic (and probably wrong) Canvas::Grid child placement

7 years agoinclude Canvas::Grid in build script
Paul Davis [Sat, 14 Jan 2017 12:56:04 +0000 (12:56 +0000)]
include Canvas::Grid in build script

7 years agoinitial skeleton for a Grid canvas item
Paul Davis [Sat, 14 Jan 2017 11:45:47 +0000 (11:45 +0000)]
initial skeleton for a Grid canvas item

7 years agoconsolidate --help text, allow to generate man page.
Robin Gareus [Sat, 14 Jan 2017 22:07:44 +0000 (23:07 +0100)]
consolidate --help text, allow to generate man page.

7 years agoupdate path to lua-doc in manual
Robin Gareus [Sat, 14 Jan 2017 18:33:25 +0000 (19:33 +0100)]
update path to lua-doc in manual

7 years agoSet rate and blocksize for multi-instance VSTs
Robin Gareus [Fri, 13 Jan 2017 10:29:10 +0000 (11:29 +0100)]
Set rate and blocksize for multi-instance VSTs

7 years agoAccommodate newly introduced source(s) in our MSVC project (ardour_osc)
John Emmas [Fri, 13 Jan 2017 10:18:38 +0000 (10:18 +0000)]
Accommodate newly introduced source(s) in our MSVC project (ardour_osc)

7 years agoFix editor-mixer update when deleting a Route before a VCA
Robin Gareus [Fri, 13 Jan 2017 07:43:18 +0000 (08:43 +0100)]
Fix editor-mixer update when deleting a Route before a VCA

When deleting the last track before a VCA, on-delete the editor-mixer
switches to display the next TAV.  If that turns out to be a VCATAV,
the editor-mixer will ignore it and keep displaying the deleted route,
holding a shared pointer reference (ports won't be dropped, etc etc).

7 years agoupdate alternate themes with automation-line-fill opacity
Ben Loftis [Thu, 12 Jan 2017 21:13:31 +0000 (15:13 -0600)]
update alternate themes with automation-line-fill opacity

7 years agoallow automation line fill opacity to be theme-able
Ben Loftis [Thu, 12 Jan 2017 21:07:30 +0000 (15:07 -0600)]
allow automation line fill opacity to be theme-able

7 years agoMinor tweak to bindings editor layout
Robin Gareus [Thu, 12 Jan 2017 19:52:21 +0000 (20:52 +0100)]
Minor tweak to bindings editor layout

7 years agoDisplay name of conflicting keyboard binding
Robin Gareus [Thu, 12 Jan 2017 19:51:29 +0000 (20:51 +0100)]
Display name of conflicting keyboard binding

7 years agoadd API to query name of bound action
Robin Gareus [Thu, 12 Jan 2017 19:50:42 +0000 (20:50 +0100)]
add API to query name of bound action

7 years agorename Bindings -> Keyboard Shortcuts
Ben Loftis [Thu, 12 Jan 2017 16:08:50 +0000 (10:08 -0600)]
rename  Bindings -> Keyboard Shortcuts

7 years agoSupport repeated jump-backward-to-mark while playing.
Ben Loftis [Thu, 12 Jan 2017 15:33:57 +0000 (09:33 -0600)]
Support repeated jump-backward-to-mark while playing.

7 years agoAdd some explanatory text to the Quirks settings
Ben Loftis [Thu, 12 Jan 2017 14:46:22 +0000 (08:46 -0600)]
Add some explanatory text to the Quirks settings

7 years agoShow plugin format in menu lists. Particularly important on Mac, where you might...
Ben Loftis [Wed, 11 Jan 2017 22:51:39 +0000 (16:51 -0600)]
Show plugin format in menu lists.  Particularly important on Mac, where you might have both AU and VST formats of a plugin

7 years agoMove some actions into the global group:
Robin Gareus [Thu, 12 Jan 2017 17:22:56 +0000 (18:22 +0100)]
Move some actions into the global group:

This allows common keyboard shortcuts from any Tab (Editor, Mixer).
Discuss: should those actions/methods also be moved to ArdourUI instead of
PublicEditor?

7 years agoOSC: We want to see aux buses even if the gui has them hidden
Len Ovens [Thu, 12 Jan 2017 03:57:19 +0000 (19:57 -0800)]
OSC: We want to see aux buses even if the gui has them hidden

7 years agocoverage frames must still be deleted when switching back to Overlay mode
Paul Davis [Wed, 11 Jan 2017 11:42:37 +0000 (11:42 +0000)]
coverage frames must still be deleted when switching back to Overlay mode

7 years agoOSC: Fix aux mute to check stripable exists first
Len Ovens [Wed, 11 Jan 2017 06:09:30 +0000 (22:09 -0800)]
OSC: Fix aux mute to check stripable exists first

7 years agoWindows/Videotimeline: support all drives (no fixed docroot/drive-letter)
Robin Gareus [Wed, 11 Jan 2017 02:55:04 +0000 (03:55 +0100)]
Windows/Videotimeline: support all drives (no fixed docroot/drive-letter)

7 years agoPrepare for windows video support on all drive-letters.
Robin Gareus [Tue, 10 Jan 2017 21:38:43 +0000 (22:38 +0100)]
Prepare for windows video support on all drive-letters.

* add harvid version detection (>= 0.8.2 is needed)
* special case empty docroot (for windows, pass drive-letter)

7 years agoTweak TMM tooltip
Robin Gareus [Tue, 10 Jan 2017 17:24:52 +0000 (18:24 +0100)]
Tweak TMM tooltip

7 years agoShrink preferences window when detached
Robin Gareus [Tue, 10 Jan 2017 17:24:34 +0000 (18:24 +0100)]
Shrink preferences window when detached

7 years agonever remove tracks from selection during a range drag
Paul Davis [Tue, 10 Jan 2017 15:18:00 +0000 (15:18 +0000)]
never remove tracks from selection during a range drag

7 years agocorrectly display region sync points in the editor region list, when they change
Paul Davis [Tue, 10 Jan 2017 10:26:23 +0000 (10:26 +0000)]
correctly display region sync points in the editor region list, when they change

7 years agofix nested templates for ye ancient compilers of the worlde
Paul Davis [Tue, 10 Jan 2017 09:58:26 +0000 (09:58 +0000)]
fix nested templates for ye ancient compilers of the worlde

7 years agoavoid locate when clicking in region fade handles in smart mode+follow edits
Paul Davis [Tue, 10 Jan 2017 09:53:10 +0000 (09:53 +0000)]
avoid locate when clicking in region fade handles in smart mode+follow edits

7 years agoadd some preference tooltips and related code consolidation
Robin Gareus [Tue, 10 Jan 2017 09:38:39 +0000 (10:38 +0100)]
add some preference tooltips and related code consolidation

7 years agoFix MTC slave implicit return on transport-stop
Robin Gareus [Tue, 10 Jan 2017 09:38:00 +0000 (10:38 +0100)]
Fix MTC slave implicit return on transport-stop

MTC returns not-locked (no flywheel) when the signal is lost, in which case
Session::follow_slave() jumps to no_roll and ignores the slave-position.
The MTC slave does explicitly request a transport-locate and transport-stop.

Yet, Session::realtime_stop() honors _requested_return_frame for whatever
reason

7 years agoFix spacing for TC display
Robin Gareus [Tue, 10 Jan 2017 09:26:23 +0000 (10:26 +0100)]
Fix spacing for TC display

7 years agoOSC: Fix cue observer stop to zero controls
Len Ovens [Tue, 10 Jan 2017 03:05:38 +0000 (19:05 -0800)]
OSC: Fix cue observer stop to zero controls

7 years agoOSC: Add Talent individual monitor controls
Len Ovens [Tue, 10 Jan 2017 02:56:22 +0000 (18:56 -0800)]
OSC: Add Talent individual monitor controls

7 years agoBetter fix for widgets that do not apply to master bus: leave them in place, but...
Ben Loftis [Tue, 10 Jan 2017 01:41:31 +0000 (19:41 -0600)]
Better fix for widgets that do not apply to master bus: leave them in place, but insensitive, to retain layout

7 years agoRevert "Remove the Solo+Iso buttons in the Master bus."
Ben Loftis [Tue, 10 Jan 2017 01:07:17 +0000 (19:07 -0600)]
Revert "Remove the Solo+Iso buttons in the Master bus."

This reverts commit 7f280e2bed51cfa56fedeaf08f28b6040c93b5b1.

7 years agoFix mixer scrolling
Robin Gareus [Mon, 9 Jan 2017 19:14:27 +0000 (20:14 +0100)]
Fix mixer scrolling

7 years agoadd XML names/handling for additional Parameter types.
Paul Davis [Mon, 9 Jan 2017 15:01:34 +0000 (15:01 +0000)]
add XML names/handling for additional Parameter types.

This is still incomplete and really not generic. Ought to be revisited, but has backwards compatibility issues that make it more complex

7 years agosave state of an automation list, even if empty, because it might exist in the histor...
Paul Davis [Mon, 9 Jan 2017 14:07:15 +0000 (14:07 +0000)]
save state of an automation list, even if empty, because it might exist in the history state

7 years agoRemove the Solo+Iso buttons in the Master bus.
Ben Loftis [Mon, 9 Jan 2017 14:17:38 +0000 (08:17 -0600)]
Remove the Solo+Iso buttons in the Master bus.

7 years agoadd clamp for adding points to a ControlList from a (G)UI
Paul Davis [Mon, 9 Jan 2017 12:42:08 +0000 (12:42 +0000)]
add clamp for adding points to a ControlList from a (G)UI

7 years agoclamp values appropriately in AutomationLine::view_to_model_y()
Paul Davis [Mon, 9 Jan 2017 12:41:49 +0000 (12:41 +0000)]
clamp values appropriately in AutomationLine::view_to_model_y()

Before this, drags from one automation track to another could add illegal/stupid values to an automation line. Presumably there needs to be another bounds check in ControlList

7 years agouse reduced height for automation lines when firrst added, not just after a resizing
Paul Davis [Mon, 9 Jan 2017 12:29:24 +0000 (12:29 +0000)]
use reduced height for automation lines when firrst added, not just after a resizing

7 years agotweak previous commit to make desc.max_unbound "more correct"
Paul Davis [Mon, 9 Jan 2017 12:29:04 +0000 (12:29 +0000)]
tweak previous commit to make desc.max_unbound "more correct"

7 years agofix ranges for LADSPA unbounded toggle parameters.
Paul Davis [Mon, 9 Jan 2017 11:58:39 +0000 (11:58 +0000)]
fix ranges for LADSPA unbounded toggle parameters.

Used to be 0..4, now 0..1. The 4 is still used as an arbitrary
upper bound for non-toggled parameters

7 years agoTweak Preference label
Robin Gareus [Sun, 8 Jan 2017 16:45:37 +0000 (17:45 +0100)]
Tweak Preference label

7 years agoNO-OP: whitespace
Robin Gareus [Sun, 8 Jan 2017 16:45:21 +0000 (17:45 +0100)]
NO-OP: whitespace

7 years agoFix Pane size allocation:
Robin Gareus [Sun, 8 Jan 2017 16:44:40 +0000 (17:44 +0100)]
Fix Pane size allocation:

* Skip calling allocate on recently hidden children.
* Don't [temporarily] call size_allocate with negative sizes

7 years agoFix crash when changing Pane widgets -- #7198
Robin Gareus [Sun, 8 Jan 2017 11:29:30 +0000 (12:29 +0100)]
Fix crash when changing Pane widgets -- #7198

Gtkmm2Ext::Pane::on_add() uses a pointer to a std::vector<> element
in the destroy notify callback. If the vector is modified, that pointer
becomes invalid.

Add 2 widgets "A", "B". remove "B", add another one "C".
Now if A is destroyed, notify_child_destroyed(PTR) points to
invalid memory and not to "A".

7 years agoprototype track/bus sharing: state-export
Robin Gareus [Sun, 8 Jan 2017 00:23:01 +0000 (01:23 +0100)]
prototype track/bus sharing: state-export

7 years agoFix shared-pointer list creation from Lua
Robin Gareus [Sat, 7 Jan 2017 23:30:41 +0000 (00:30 +0100)]
Fix shared-pointer list creation from Lua

7 years agoamend massive thinko in last commit (actually works).
nick_m [Fri, 6 Jan 2017 18:28:56 +0000 (05:28 +1100)]
amend massive thinko in last commit (actually works).

7 years agofix incorrect _start after a split.
nick_m [Fri, 6 Jan 2017 18:18:45 +0000 (05:18 +1100)]
fix incorrect _start after a split.

- when splitting a region where quantized notes start on the
  split point, the notes would sometimes vanish due to us deriving
  an exact quarter-note from the supplied frame.
  this only affects midi regions, as other region types
  have contents which are completely frame-based.