13
0
Commit Graph

36596 Commits

Author SHA1 Message Date
d521c2ede6
src-tree cleanup: separate surfaces from libraries
libardourcp and now libardour_midisurface are not control
surfaces, but helper libraries for those.
They need to be deployed to the library folder (shared between
ctrl surfaces) and not scanned as ctrl surfaces at runtime.
2022-11-19 00:09:17 +01:00
22007bf882
Only use playlist-name when bounced region-name is unset 2022-11-18 22:49:15 +01:00
44796e6702 redesign and reimplement save/restore of MIDI learn for triggers (GUI edition) 2022-11-18 14:04:59 -07:00
fc611232d2 redesign and reimplement save/restore of MIDI learn for triggers 2022-11-18 14:04:59 -07:00
58c2b0a848 move midi maps folders and file extension out of control surfaces library 2022-11-18 14:04:59 -07:00
Mads Kiilerich
728e463d01 AudioClock: make last_when public and use it instead of current_time
Having current_time as a public alias of the private last_when did not
add any clarity to the abstraction of last_time. A small step, but still
room for improvement.
2022-11-17 18:04:08 +01:00
Mads Kiilerich
498dac3bc8 AudioClock: fix function name in error message 2022-11-17 18:04:08 +01:00
Mads Kiilerich
96d98ba320 AudioClock: drop unnecessary qualification of set_duration
This setter is not virtual.
2022-11-17 18:04:08 +01:00
Mads Kiilerich
e77965f4e6 AudioClock: drop unused force parameter for private setters 2022-11-17 18:04:08 +01:00
Mads Kiilerich
acf803d310 AudioClock: drop unused ModeChanged and is_transient
Clock settings are now retrieved using the clocks vector.
2022-11-17 18:04:08 +01:00
Mads Kiilerich
8c74099e80 AudioClock: drop unused offset
Recent refactorigns made it dead code. Kill it, even though it seems on
track to something useful ...
2022-11-17 18:04:08 +01:00
Mads Kiilerich
1ca64eb8c1 AudioClock: avoid sscanf to fixed length buffer
Ignored strings were scanned to a buffer that potentially could
overflow. There might be hidden invariants that make actual overflow
impossible, but that seems like a fragile defense.

Instead, just *really* ignore them.
2022-11-17 18:04:08 +01:00
Gon Solo
c3d4453bdf
Remove superfluous wscript lines. 2022-11-17 03:21:29 +01:00
Gon Solo
85a45b2645
Fix missing glib include path 2022-11-17 03:21:25 +01:00
8362e865ee save trigger custom MIDI learn as a binding map 2022-11-16 18:15:55 -07:00
10e004f0ec tweaks to TriggerBox::dump_custom_midi_bindings 2022-11-16 18:15:39 -07:00
5a07da9255 triggers: code to dump MIDI learn-ed bindings as a binding map 2022-11-16 16:25:09 -07:00
93adb3fe1f bindings and actions for trigger stuff owned by trigger page 2022-11-16 14:15:34 -07:00
847f421542 no more trigger UI actions and bindings 2022-11-16 14:15:34 -07:00
ffd089720d ardour UI: provide proxies for BasicUI trigger/cue methods 2022-11-16 14:15:34 -07:00
5330d73c35 ArdourUI HAS-A BasicUI
The idea is to allow some reduction in code duplication
2022-11-16 14:15:34 -07:00
f7149d5ec9
Fix Latency display layout 2022-11-16 21:55:47 +01:00
093da3f349 fix logic reversion during rebase for duplicate regions 2022-11-16 09:36:23 -07:00
570aead3b1 add explanatory comment re: region duplication positioning
This is currently an unsolved problem-that-may-not-be-a-problem.
2022-11-16 08:39:33 -07:00
75a990da8c a start at custom MIDI learn for trigger slots (GUI edition) 2022-11-16 08:37:57 -07:00
730064277d a start at custom MIDI learn for trigger slots 2022-11-16 08:37:57 -07:00
a130041547 use MIDISurface in original Faderport support, plus required changes in MIDISurface & Push 2 2022-11-16 08:37:57 -07:00
e5bbccef28 various changes to get Push 2 surface support functional after inheriting from MIDISurface 2022-11-16 08:37:57 -07:00
99712e7585 surfaces; convert push2 to inherit from MIDISurface 2022-11-16 08:37:57 -07:00
4fbf3028aa basic skeleton for new MIDISurface base class 2022-11-16 08:37:57 -07:00
16ce8b3331
Fix VU meter color in default theme #9090 2022-11-16 00:46:22 +01:00
9093059ba0
Use ArdourSans for symbols cross platform 2022-11-15 21:50:13 +01:00
ef6803abd1
Add API to force ArdourSans font (for UTF8 symbols) 2022-11-15 21:34:27 +01:00
e8a87f31fc
Update ArdourSans font, include UTF-8 symbols used by Ardour 2022-11-15 21:34:19 +01:00
6c3a1d98fe
Towards distinguishing user/factory LV2 presets
See also https://github.com/lv2/lilv/issues/55
2022-11-15 20:08:24 +01:00
11dc651974 Tweak region-bounce naming
* remove "bounced" default
* allow to specify prefix (rather than suffix) for multiple region bounces
* use specified name for clip-library bounces
2022-11-15 03:28:07 +01:00
82d43fa1ee Allow empty text in prompter 2022-11-15 03:24:19 +01:00
d1b462c213 Special case tansient-parent windows on macOS
macOS has its own z-axis stacking (see Manager::set_transient_for) for
dialog and utility windows of a single application. There only case to
set a dedicated transient parent is to keep the child window on top of a
dialog.

Valid use-cases are e.g.
 Plugin Preset Name entry on top of a PluginWindow
 Export Format Settings on top of the Export Dialog

Alternatively one would need to patch gtk to handle
[NSView shouldDelayWindowOrderingForEvent] and explicitly reorder
siblings of a common parent window.

This fixes an issue that plugin windows cannot be re-stacked but were
previously always stacked in the order they were opened.
2022-11-15 03:07:43 +01:00
f107c063e7 Add conveniece API to set trasient-parent for Proxy Windows
On macOS, a transient parant should only be set for a single child
window. sibling windows to a single parent cannot be re-stacked.
2022-11-15 03:03:49 +01:00
4a9e8b5211
Place session-save dialog on-top of everything 2022-11-14 02:56:54 +01:00
cooltehno
7af1d30bf0 Update clear_gray-ardour.colors 2022-11-13 14:08:28 +03:00
cooltehno
3e806e9c1c Update cubasish-ardour.colors 2022-11-13 14:08:12 +03:00
b82900858f
Do not limit stack-size when freezing tracks
This fixes an issue with plugin state save/restore. Some
require excessive stack to do that (looking at you b.oops.lv2).
The main GUI thread has no stack limit, so this is only an issue
when calling state save/restore from background threads.
2022-11-13 03:02:00 +01:00
4f3b8a9776
Allow to override default stack limit for background processes 2022-11-13 03:01:57 +01:00
2ae670055d
Explicitly initialize futex word
This is mainly to silence valgrind warnings, the actual value
is irrelevant here.
2022-11-13 03:01:50 +01:00
949f9e6051
Fix LV2 Atom ringbuffer overflow/corruption
Writing partial messages will lead to undefined behavior.
This does not generally happen (LV2 forge prevents overflow
of the Atom buffer itself), however if the GUI is frozen messages
may accumulate in Ardour's Ringbuffer.
2022-11-13 00:24:05 +01:00
376b50a6ae
Fix concurrency issue when deactivating plugins
Processor::deactivate must not be called concurrently with
processing. e.g. Threading rules https://lv2plug.in/ns/lv2core

This fixes a potential crash when freezing tracks
2022-11-13 00:24:02 +01:00
3fcd8b659d
NO-OP: remove duplicate return 2022-11-13 00:23:58 +01:00
ee51b906ea
Improve bouncing multiple regions
* If 1 region is selected: suggest "Region-name (Bounced)"
* If more than one region is selected and ..
  * all are on different tracks: allow to specify suffix.
  * at least two regions are on the same track: hide the
    "add to trigger-slot" option, allow to specify suffix

see also https://discourse.ardour.org/t/bounce-regions-with-names/107863
2022-11-11 17:56:17 +01:00
e58fddfde7 Add more actual translators and make their list in code more human-readable 2022-11-11 14:52:42 +03:00