13
0
Commit Graph

17051 Commits

Author SHA1 Message Date
f7d022e38c Update Russian translation 2024-01-15 00:28:16 +01:00
3d752fc770
Fix snap to triplet 2024-01-14 15:32:02 +01:00
a6ea40552c
Don't show automation of hidden plugins 2024-01-13 17:56:47 +01:00
83e4b49a9e
Retain first-selected-stripable when removing ATAV
This allows ctrl surfaces (notably Faderport) to keep
editing plugin settings, when some unrelated plugin is removed.

Route::processors_changed calls RouteTimeAxisView::processors_changed,
and if a plugin automation line vanishes ~AutomationTimeAxisView
deselected the track. This triggered a control surface update.
2024-01-13 17:56:33 +01:00
ee6d46d403 Ardour repo should not distinguish between Mixbus variants 2024-01-08 08:25:18 -06:00
Nicolas Petton
aac7f82bc8
Add a new color theme inspired by Adwaita (GNOME desktop) 2024-01-07 14:18:26 +01:00
cbf38408c9
Fix crash when using Ripple with a RegionMoveDrag
See also 1a2fff932f
2024-01-07 14:15:36 +01:00
ad51c7c2ba
Localize stripped down gtk2
This is intended mainly for GNU/Linux distros who will remove
GTK2 support in the near future.
2024-01-06 21:52:48 +01:00
2a928dae19
Vapor: Simple Export GUI 2024-01-06 20:28:42 +01:00
7228144d6e
Vapor: GUI support to add Surround Bus 2024-01-06 20:27:03 +01:00
9cc966120c
Consolidate internal bus checks (2/2) 2024-01-06 20:21:54 +01:00
46a2b45443
Tweak translatable strings
* add spaces around "->"
* consistently use "time domain" (instead of "timebase")
* remove "Edit ->" from "Preferences" (on macOS Prefs
  are not in the edit menu
2023-12-17 20:58:11 +01:00
Edgar Aichinger
eeadd04b14 update german translation (this time for real) 2023-12-17 11:45:15 +01:00
1434c624ff
Fix ffmpeg-5+ encoding drop-frame framerates 2023-12-13 17:41:44 +01:00
e7cc096d19
Fix location list order (amend 7ee5a3f24) 2023-12-11 15:54:30 +01:00
fa0d1d98f9
Update Section list (once) in the background
This can accumulate multiple signal emissions into a
single idle update.
2023-12-10 04:10:01 +01:00
bdfee53d1f
Fix signal emission for Locations::ripple (2/2) 2023-12-10 04:08:55 +01:00
fe3827b1d8
Fix crash when session range is created (bug introduced in 7ee5a3f) 2023-12-10 01:48:13 +01:00
f407d4e3b7 ensure that MidiStreamView calls a color handler for each region
This allows MIDI regions to auto-update during theme editing
2023-12-09 14:07:58 -07:00
7ee5a3f24d
Keep location lists ordered by start-time 2023-12-09 02:26:49 +01:00
1da5c7f389
Fix ordering of locations
There are two lists, one for ranges, and one for
everything else.
2023-12-09 01:43:40 +01:00
62f20d126f
Another speedup when multiple locations change
This is mainly relevant for redo, and ripple
when all multiple locations are changed and static signals
are emitted by each Location.
2023-12-08 23:03:38 +01:00
857d8096a9
Revert "Keep Location List ordered by start-time"
This reverts commit 67f6363dcd.

This VERY slow when there are many locations in the session
e.g. with #9568 it can take seconds.
2023-12-08 22:14:04 +01:00
67f6363dcd
Keep Location List ordered by start-time
Now that Location signal(s) are only emitted when the
drag ended, the list can be kept in sync.

This also adds a further optimization to only update the
list once, even when multiple locations have been changed.
2023-12-08 22:03:22 +01:00
067a124fd1
Suspend signal emission of Locations during Drag
This significantly speeds up Location Drag/motion
2023-12-08 21:48:23 +01:00
7b1997ffda
Speed up Location changes #9568
Section Markers only need to be updated when an actual
section-marker is modified OR flags change.

This also removes duplicate signal subscriptions and
caches sorted Location list when iterating over section markers.
2023-12-08 17:22:32 +01:00
87181710b2
Drop UI shared_ptr references to Transport Masters
This allows ARDOUR::cleanup to unregister ports before
destroying the Audio Engine. This fixes a crash at exist
with JACK since 0786be8.
2023-12-05 04:37:39 +01:00
8576db5642
Fix buffer-overflow in power range spectral analysis (#9560) 2023-11-30 19:43:27 +01:00
de7d0a986b
Foldback: fix memory leak 2023-11-29 02:20:09 +01:00
jujudusud
5138d174cb French translations 2023-11-28 01:07:08 +01:00
e3128e932c
Compile and install libAAF 2023-11-27 23:25:04 +01:00
3355e753bf
Keep track of LV2 externalUI visibility
This allows Ardour to re-open previously shown plugins,
and toggle externalUI.

This worked in the distant past, before Ardour 3.3 introduced
the Ardour Window Manager.
2023-11-26 20:07:00 +01:00
04be971238
Properly stop message emission when closing external UI 2023-11-26 20:06:07 +01:00
Nils Philippsen
e995daa375 Fix failure to build with libxml2 version 2.12
This declared some xmlError pointers const, which probably was always
assumed, but not made explicit.

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2023-11-25 00:30:04 +01:00
253dcb312b make note joining code a bit cleaner and preserve note velocities 2023-11-24 09:29:31 -07:00
d6beba67dc note joining should occur per-channel 2023-11-24 08:32:28 -07:00
f95e94bc29 note tupling tweaks, and note join added
bindings moved to s/S and j, no need to use split-by-grid first

split-by-grid still needs work for non-grid aligned notes
2023-11-23 22:42:04 -07:00
438bd7a720
Import Dialog: clean up MIDI information 2023-11-23 18:35:56 +01:00
b92b2389fd make note-tupling work on multiple notes 2023-11-22 19:37:46 -07:00
fb930e8f47 add invalidator() calls to MixerStrip as it connects to ParameterChanged
when the surround bus is removed, it (probably erroneously) causes
changes to the I/O routing for the auditioner, which will be
delivered to anyone who cares via an RCConfiguration ParameterChanged
signal. This will be emitted from a non-GUI thread, and so will not
be handled synchronously. The GUI thread will first handle the notification
that the surround bus was deleted, and that will include deleting the
MixerStrip for the surround bus. But another call_slot() request will
be pending to notify the now-deleted MixerStrip about the auditioner change.

Adding invalidator() calls ensures that the deletion of the MixerStrip removes
all of these pending call_slot() requests.
2023-11-22 17:24:26 -07:00
c3d14b1169 basic note-tupling functionality implemented 2023-11-21 17:07:42 -07:00
7f779bb934 define new MIDI note splitting actions 2023-11-21 17:07:42 -07:00
3792bf86e4 MidiRegionView: stubs for new methods 2023-11-21 17:07:42 -07:00
0f170ec87b MidiRegionView: initialize new members 2023-11-21 17:07:42 -07:00
e39709863a add new state and methods to MidiRegionView for note splitting 2023-11-21 17:07:42 -07:00
71e049202c
Fix crash when clicking on region boundary box to start Drag
The box outlines a given region, the grab position may be earlier
than the region's position.

Previously this caused a crash (uncaught exception):

```gdb
__cxa_throw () at /lib/x86_64-linux-gnu/libstdc++.so.6
Temporal::timecnt_t::timecnt_t(Temporal::timecnt_t const&, Temporal::timepos_t const&) at ../libs/temporal/timeline.cc:79
RegionMoveDrag::setup_pointer_offset() at ../gtk2_ardour/editor_drag.cc:2226
```
2023-11-21 20:17:20 +01:00
4647dd6b41 fix crash when freezing a track with > 1 region (#9539)
deleting regionviews changed the region selection, but the regionview
ptr had not been removed from the RegionViewList. The selection change signal
caused an iteration over the list, and manipulated the deleted regionview.
2023-11-20 19:13:22 -07:00
Mate Pušić
e010cf91b9
Fixed a typo 2023-11-20 20:04:27 +01:00
bea9215a0e
Remove noop include (deprecated, unused gtk header) 2023-11-19 20:28:48 +01:00
da175cc2e8 temporal: remove TempoMap::insert_time() and use shift() instead
The former was incorrectly implemented, and the latter has already been tested more
in real life.

We should likely remove ::remove_time also and use shift() there too, but that
requires testing negative shifts more broadly.
2023-11-19 12:14:10 -07:00
b76c3b11d9 when importing SMF tempo map, use copy&paste to keep position 2023-11-17 10:02:34 -07:00
e0d9970056 remove mistakenly retained stacktrace() call 2023-11-14 19:47:17 -07:00
7762fa47ea make an attempt to show note length with verbose cursor
Likely much more intelligent string formatting is needed to make this
actually useful to most people
2023-11-14 11:05:13 -07:00
f5af821aba startup: in the usual weird logic, mark startupFSM complete from startup_done()
this disconnects the startupFSM from signals it should no longer
handle, even if its existence continues as a leak (noted
elsewhere in the code).
2023-11-14 11:03:09 -07:00
729eb60de3 startupFSM: move definition of ::set_complete into source file
and also disconnect from Keyboard signal when called.
2023-11-14 11:02:08 -07:00
8e583f4c4c startup FSM: save connection to Keyboard::HideMightMeanQuit signal 2023-11-14 11:01:39 -07:00
7be61b0909
Fix typo in 69c7db8595 2023-11-13 22:19:03 +01:00
69c7db8595
Add Mute button to recorder view 2023-11-13 00:08:38 +01:00
adb508b189 no-strobe behavior for varispeed blink 2023-11-11 10:11:30 -07:00
a5ac6e097e switch no-strobe from cmdline to UI config preference 2023-11-10 15:50:44 -07:00
cc5bd6c63a provide a (visible) UI preferences option for no-strobe 2023-11-10 14:33:39 -07:00
863ad01a90 no strobe for rec-enable buttons (all of them) 2023-11-10 11:18:17 -07:00
1b35d5824b remove non-existent method decl 2023-11-10 11:17:53 -07:00
9c5600ad87 no strobe for mixer ui meters 2023-11-10 10:56:03 -07:00
5e087864f6 no strobe for editor-visible meters 2023-11-10 10:55:44 -07:00
08af0fe04a no strobe for the transport peak meter 2023-11-10 10:54:54 -07:00
036596ba3f no-strobe changes for clocks 2023-11-10 10:37:07 -07:00
6b5b63240b fix missing inclusion of 's' in opts list 2023-11-10 10:21:28 -07:00
d60dae8cbe new command line flag to control strobe-like effects in the GUI 2023-11-10 10:18:58 -07:00
6b3eb55ff6
Fix Lua 1Hz timer signal (#9529) 2023-11-10 14:27:19 +01:00
db9e11d973
Hide internal plugins from users in the GUI 2023-11-09 02:02:43 +01:00
e658056cd7 length (& position) of the region added for step entry shouuld use in beat time 2023-11-06 20:38:08 -07:00
7cd681ec9e
Retain Region layering when duplicating Regions
Editor::duplicate copies regions one at a time. This lead
to region layeres not being retained, particularly since
Playlist::duplicate() puts the duplicated layer at the top.
2023-11-07 00:57:22 +01:00
673e41434e add image for launchpad mini 2023-11-04 15:13:01 -06:00
9240b96bea reduce default size of lollis and make them scale with the UI scale factor 2023-11-04 12:27:55 -06:00
cd29e03c05 selection dragging: use time domain given to drag, not editor default 2023-11-03 15:11:38 -06:00
1b76e90246 when drawing range selection rect, use exclusive end semantics 2023-11-03 15:11:38 -06:00
7664b15617
Fix build, amend previous commit 2023-10-31 20:25:18 +01:00
c162aa7aca
Consistently use context-menu button action
This fixes an issue where brining up a menu can directly activate an
action in the menu. Notably on macOS.

Nathan reports that this may also address #9515

Note: mac touchpads are not affected since right-click there is
effectively a "press and hold".
2023-10-31 20:16:23 +01:00
49abbe5777
RhythmFerret: fix heap-use-after-free
After splitting regions, the AudioRegionView of the original
Region no longer exists when the RhythmFerret calls
`clear_transients()` at the end.
2023-10-31 04:31:08 +01:00
560885b7da
Do not automatically set font-size on macOS
freetype on macOS does not scale fonts, font-scale and ui_scale
have to remain at 100% otherwise other UI elements change size
while the font does not.
2023-10-30 21:52:43 +01:00
Martin Vlk
562a6335de
Czech translation updates. 2023-10-29 02:41:18 +02:00
d5a7e5f289 pass vectors for velocities by reference 2023-10-28 17:48:33 -06:00
e22415f0ce
Disambiguate In/Out for translations (1/2) #9512 2023-10-28 14:45:33 +02:00
4ea676b855 lollipops: try to make sure we use the right velocity when setting lolli heights (dragging vs. not dragging 2023-10-27 14:11:47 -06:00
ef0938a16d more improvements to velocity drawing (including straight line) 2023-10-27 11:50:15 -06:00
91fbb1c65b first steps towards improving straight line drags for velocity 2023-10-27 11:50:15 -06:00
b8551eed7e
Properly unload VST3 plugins
The InstrumentSelector keeps a PluginPtr reference to all
instruments. By default Ardour does not destroy the editor
at exit, So 3 instances of Instrument Selector can remain

 * TriggerClipPicker in the editor sidebar (owned by _editor)
 * TriggerClipPicker on the TriggerPage (owned by trigger_page)
 * SoundFileOmega (sfbrowser owned by Editor)

If a shared_ptr reference is retained, VST3 Module is not
unloaded at exit. This leads to issues with various plugins.
eg. Reason Rack does not terminate, Ardour hangs at exit.
2023-10-27 00:39:03 +02:00
830910c787
Region list columns do not use property_markup
This fixes an issue with frozen region "<F1>Foo" being
displayed as "&lt;F1&lt;Foo" in the sidebar.
2023-10-26 05:46:11 +02:00
d5c62fe2b9 Add Alexander Mitchell to the list of authors 2023-10-26 03:48:07 +02:00
a5a1caf9fa NOOP: whitespace changes 2023-10-22 17:15:20 -06:00
8f405f3657 provide preference for scrolling-adjusts-note-velocity 2023-10-22 17:15:20 -06:00
711668267a
Clarify toolbar widget preference
PDC toolbar widget is not just showing information,
but also interactive.
2023-10-21 18:08:52 +02:00
b0871f50b8 an icon image for the launchpad x 2023-10-19 23:41:57 -06:00
98ff1307bf ardev and waf tweaks for launchpad X 2023-10-19 22:19:23 -06:00
2e4ceaf34d conform to platform expectations for scroomer select mouse ops 2023-10-18 10:14:34 -06:00
71ba96aa3b improve/fix mouse click logic on piano roll header
ctrl-click now toggles that note row's selected status, as intended
2023-10-18 09:29:39 -06:00
4974369787 fix logic in MidiRegionView::select_matching_notes() to not add notes when asked not to 2023-10-18 09:05:48 -06:00
b7b2189d95 fix copy-paste but in MidiTimeAxisView::set_note_selection() - use set, not add 2023-10-18 09:05:10 -06:00
d88b9d36ca freehand draw for velocity only affects selected notes, if any are selected (#9491) 2023-10-18 08:26:42 -06:00