Paul Davis
b6d8f77173
fix bad lifetime mgmt for VerboseCursor class
2025-05-27 08:49:32 -06:00
Robin Gareus
72057395eb
Fix potential use-after-free (when device in use)
...
An instance must not delete itself..
Here ARDOUR::SystemExec::Terminated signal handler deleted the
class that emitted the signal in the same thread.
2025-05-25 00:21:19 +02:00
Paul Davis
958135ff26
adjust help msg text for 21st century
2025-05-24 07:35:13 -06:00
Robin Gareus
6cc175343c
Show actual project name in derivative projects
2025-05-24 12:46:22 +02:00
Paul Davis
49ff88fd75
fix crash when calling toggle-roll with no time selection existing
2025-05-19 16:52:15 -06:00
Robin Gareus
b92fa1d0e4
Use PBD::CCurl for libardour HTTP/S requests
2025-05-20 00:03:21 +02:00
Robin Gareus
7b6ca334df
Use PBD::CCurl for Ardour GUI HTTP/S requests
2025-05-20 00:03:21 +02:00
Robin Gareus
4f300b5474
Migrate SSL-cert setup to libpbd, so the downloader can use it
2025-05-20 00:03:21 +02:00
Paul Davis
6918a8a267
some rationalization to how Editor & CueEditor (Pianoroll) handle ZoomLevel and TimeOrigin changes
2025-05-19 14:57:19 -06:00
Paul Davis
37f318e417
set a minor/micro tick font for Pianoroll BBT ruler
2025-05-19 14:57:19 -06:00
Paul Davis
4a6716e39c
add option for a minor/micro tick font description to ArdourCanvas::Ruler
2025-05-19 14:57:19 -06:00
Robin Gareus
ba7e63f570
Ignore FLAC seek/peak-file read while recording
...
FLAC files are either read-only or write-only.
When recording the GUI may ask for additional data to render.
Depending on zoom level, this may require seeking in the audio
data, which in case of FLAC is not possible, and should fail silently:
ARDOUR::SndFileSource::read_unlocked()
ARDOUR::AudioRegion::read_peaks()
ArdourWaveView::WaveView::process_draw_request()
2025-05-19 22:19:54 +02:00
Robin Gareus
d537cdf60b
Fix windows build (see also e44a66287a)
2025-05-19 18:39:13 +02:00
Robin Gareus
e44a66287a
Correctly detect localtime_r
2025-05-18 20:08:27 +02:00
Paul Davis
c7cc5a1a61
MIDI binding map for Nektar Impact LX, c/o Mike Lupe
2025-05-18 10:38:09 -06:00
Jon Bennett
426107ca20
Add Nektar Impact GXP MIDI Map
...
Just adding the file
2025-05-18 03:51:29 +02:00
Paul Davis
01a087985e
fix set/unset of Pianoroll::ref (trigger reference) when a region is set
...
We do want to reset things like history, but not lose the trigger reference, if any
2025-05-16 16:43:12 -06:00
Paul Davis
72bb24bb1b
remove debug output
2025-05-16 16:43:12 -06:00
Paul Davis
2d79195264
prevent crash when timing issues lead to a playing trigger, no region, during Pianoroll::maybe_update()
2025-05-16 16:43:12 -06:00
Paul Davis
711b12035e
using C++17 auto map iterator syntax when iterating over MidiView::_events
...
Also, call NoteBase::show() and NoteBase::hide() rather than item()->show() or item()->hide()
2025-05-16 16:43:12 -06:00
Paul Davis
0ddb9fa8e2
fix erroneous deletion of notes after MIDI clip recording
...
If an idle data captured callback executed AFTER the code trigger by capture
end, it would call ::begin_write() which would end up calling clear_events()
which would delete all notes in the correctly setup MidiView.
Now, the idle data capture callback no longer does anything of significance if
the TriggerBox is not actively recording. In addition, we do not call
begin_write() in the MidiView if it is not already set up for capture
display (this is triggered by changes in the TriggerBox's record enable state
and the first data captured callback from an RT thread. Further,
::begin_write(), if called, only deletes notes that were in
_active_notes (though this should probably never happen).
2025-05-16 16:43:12 -06:00
Paul Davis
c3a4026ace
pianoroll: update bbt ruler when changing zoom level
2025-05-16 16:43:12 -06:00
Paul Davis
5a0919f2b0
do not construct a useless tempo map when setting samples per pixel in a pianoroll MidiView
2025-05-16 16:43:12 -06:00
Paul Davis
f6b3caad52
do not attempt to compute samples per pixel (zoom level) on EditingContext if _track_canvas_width is still zero
...
This leads to undefined/incorrect arithmetic results
2025-05-16 16:43:12 -06:00
Paul Davis
4732e702ce
use a Glib constant as a better indication of the return value semantics in an idle callback
2025-05-16 16:43:12 -06:00
Paul Davis
5d34dd2f57
change error message when a PortRegistrationFailure exception is thrown, to no longer refer specifically to JACK
2025-05-16 16:43:12 -06:00
Robin Gareus
e81f1464a9
Potential fix for #9932
2025-05-16 18:17:32 +02:00
oxfn
c486289c68
Update ru.po: fix typo
2025-05-16 18:01:09 +02:00
Bill Smith
0f8e941d0d
Roland / Boss GT-8 Midnam
...
Adding a midnam for Boss GT-8 Guitar Effects Processor
2025-05-15 15:34:57 -07:00
Robin Gareus
d6c6c58155
NO-OP: fix alignment after recent code change
2025-05-14 20:28:56 +02:00
Robin Gareus
6c8a2ec05b
Fix false read-only detection of sessions on Windows with OneDrive
...
see https://discourse.ardour.org/t/ardour-8-4-on-win11-amd64-always-opens-session-in-read-only-mode/110063/38?u=x42
2025-05-14 20:21:44 +02:00
Paul Davis
9494ecf6e9
EditorComponent should have a reference, not pointer, to an Editor
...
the value is not allow to be null, and the coding style guide says in such cases to prefer
a reference.
No semantics change here, just the fact that all EditorComponents receive *this instead
of this when the Editor that owns them creates them
2025-05-14 11:50:30 -06:00
Paul Davis
94dbcaa7e2
provide a new EditingContext/Editor method to set the cursor appropriately for section selections
2025-05-14 11:37:01 -06:00
Paul Davis
a8b4345d8f
change API of EditorSections to take an EditingContext& at construction
...
Then use this instead of PublicEditor::instance() in its code, mostly.
2025-05-14 11:35:53 -06:00
Paul Davis
316947f7dc
move trigger rec-enable button above trigger box, for ergonomic reasons
2025-05-13 19:18:32 -06:00
Paul Davis
2b1c1804c5
NO-OP: whitespace
2025-05-13 16:43:20 -06:00
Paul Davis
32ea051fb7
fix PatchChangeTriggerWindow so that if the clip is empty, it shows everything, rather than nothing
2025-05-13 16:43:20 -06:00
Robin Gareus
18e5061b46
Fix race-condition when detecting xjadeo/harvid version
...
Apparently it can happen that waitpid() can return before
the Terminated signal handler is invoked.
2025-05-13 22:44:58 +02:00
Paul Davis
c4da3f2120
when arming triggers for recording, PRIMARY means "unbounded" length; plain means follow-length
2025-05-13 12:16:11 -06:00
Paul Davis
7ce7d2239b
NO-OP: add a couple of comment-placeholders about a post-record action choice
2025-05-13 12:16:11 -06:00
Paul Davis
35c6fdb044
NO-OP: remove "STEP XXX" elements from comments
...
They were inaccurate and out of order anyway.
2025-05-13 12:16:11 -06:00
Paul Davis
bbbedfcd1d
triggerbox: use Trigger::disarm() more consistently
2025-05-13 12:16:11 -06:00
Paul Davis
a9fad0c4f5
remove debug output
2025-05-13 12:16:11 -06:00
Paul Davis
18c4040b77
fix crash/memory mgmt during MIDI clip recording
...
the active notes that are extended by transport rolling are
owned by MidiView::_events, not MidiView::_active_notes, so do not
delete them when cleaning up _active_notes.
2025-05-13 12:16:11 -06:00
Paul Davis
57efff5a1f
NO-OP: fix spelling in a comment
2025-05-13 12:16:11 -06:00
Paul Davis
5b8e3a2ecb
space bar action for clip recording should only take place if transport is rolling
2025-05-13 12:16:11 -06:00
Paul Davis
b6e1846c39
temporal: fix implementation of timepos_t::operator+= (BBT_Offset const &)
...
TempoMap::bbtwalk_to_quarters() converts the distance of the walk into quarters, but
we need the endpoint of the walk
2025-05-13 12:16:11 -06:00
Robin Gareus
998dceb96a
Amend previous commit, fix macOS builds
2025-05-11 17:02:20 +02:00
Robin Gareus
ec5b06e63d
Set executable stack flag when linking
...
This is required on some modern hardneded Linux systems to allow
to dlopen executable objects (load plugins).
https://discourse.ardour.org/t/tls-1295-lea-so-linux-vers-doesnt-work/111778/20?u=x42
2025-05-11 15:58:00 +02:00
Paul Davis
1c0882ba56
PBD::Signal: do not use a StackAllocator for signals with return values
2025-05-09 14:21:05 -06:00