Commit Graph

38345 Commits

Author SHA1 Message Date
Paul Davis 558b300177 tweaks to arprof to make it more useful with CALLGRIND_* macros 2023-10-05 08:31:11 -06:00
Paul Davis e23f79a8a9 do not create a Gtk::ColorSelectionDialog for every trigger/slot, create on demand 2023-10-05 08:31:11 -06:00
John Emmas 14973bd894 Simplify the MSVC / superclock change which should now be compatible with all compilers 2023-10-05 14:01:32 +01:00
Paul Davis 91f50b8a06 in insert time, don't differentiate between audio/music time markers 2023-10-04 18:50:42 -06:00
Paul Davis dd556f6ee8 NO-OP: line formattting 2023-10-04 18:50:42 -06:00
Paul Davis 85f0648b6b don't pass unnecessary argument to Playlist::shift() 2023-10-04 18:50:42 -06:00
Paul Davis 62416ee276 remove unnecessary argument from Playlist::shift() 2023-10-04 18:50:42 -06:00
Robin Gareus c3b881327c
Possible fix for MSVC build 2023-10-05 01:50:37 +02:00
Robin Gareus 49cb4a1f33
Revert "Fix superclock init on Windows"
This reverts commit febc345414.
2023-10-05 01:50:36 +02:00
Paul Davis 0ffb9d6c8a following c40f40, make insert/remove time apply to all markers
That is, since there is no "glued-to" concept any more, if markers
are moving, then all markers are moving
2023-10-04 17:07:34 -06:00
Paul Davis 5b038e488c no more "glue to ..." concept in GUI 2023-10-04 17:07:34 -06:00
Paul Davis e363da1f90 NOOP: remove unused variable 2023-10-04 17:07:34 -06:00
Paul Davis 40a0ad2299 tweak shortcut window so that the tree is expanded to actually show search results 2023-10-04 17:07:34 -06:00
Robin Gareus febc345414
Fix superclock init on Windows
Static global symbols on windows (even identical symbols) are
not mapped to the same address when mixing .dll + .exe.

see also d3cd621f7a
2023-10-04 23:34:40 +02:00
Robin Gareus 0e3cf0454c
Yet another plugin parameter automation time-domain fix
see also fded5063d9
2023-10-04 21:45:06 +02:00
Robin Gareus 7f2637fa96
Fix find_next_event return value in case no music-time event is found 2023-10-04 21:45:03 +02:00
Paul Davis 0c3791117c remove much debug output associated with tempo map copy/pasta, et al. 2023-10-04 08:37:26 -06:00
Robin Gareus 9ace3c6d56
Remove debug messages (VST2 bypass feature) 2023-10-04 16:26:24 +02:00
Robin Gareus c7745ffd43
Double check our assumptions when merging MIDI 2023-10-04 15:12:31 +02:00
Robin Gareus 923e6a554e
Fix MIDI combine (#9466)
Initially thew new region has a length of zero (0:0). When
merging Notes from a truncated region (no explicit note-off)
those notes are lost:
"Stuck note resolution - end time @ 0:0 is before note on: @ 0:0"

Truncate (or split) a region so that a note is cut short:
```
  Region [{<--Note-------->}]
```
becomes
```
  Region [{<--Note--]
                    ^ implicit note-off at region boundary
```

When combining this region with an empty Region after gap,
```
  Region [{<--Note--]  [    ]
```
the result should be
```
  Region [{<--Note->}       ]
```

For this reason, even without a gap between the regions,
the original note length must not be restored.
The result MUST NOT be the same as the original:
```
  Region [{<--Note-------->}]
```
2023-10-04 15:10:06 +02:00
Robin Gareus 94562a0238
Fix typo in Lua documentation 2023-10-04 14:34:41 +02:00
Robin Gareus 2b0bb54599
Update LuaState API (4/4)
Now that all calls use explicit parameters, we can remove
the default params, and make ::sandbox() private
2023-10-04 02:50:44 +02:00
Robin Gareus c1be897eed
Explicitly sandbox Lua instances (3/4)
This allows UI scripts (saved in preferences) to access
os.* functions (non-sandboxed), while preventing other
scripts to do so.

Lua scripts that can run os commands can execute arbitrary
code on the system. While this is a nice feature, it can be
equally dangerous.
2023-10-04 02:50:38 +02:00
Robin Gareus 6b3f25eb2a
Update Lua instances (2/4)
This is effectively a NO-OP.
2023-10-04 02:48:26 +02:00
Robin Gareus 7c10a54334
Prepare for explicit Lua Sandboxing (API update) 1/4 2023-10-04 02:46:58 +02:00
Krzysztof Gajdemski 7e7337aa61 Update Polish translation 2023-10-04 01:09:24 +02:00
Paul Davis 945ce377aa tempo mapping (like all other drags) must use button1 only
Without this, Editor::button_release_handler() will handle a button3 press
without checking for an active drag, resulting in two drags, and two reversible
commands, and an abort ...
2023-10-03 16:00:35 -06:00
Paul Davis 364c892c68 remove debug output 2023-10-03 11:13:57 -06:00
Paul Davis b2e168e79e NOOP: whitespace cleanup 2023-10-03 10:16:48 -06:00
Paul Davis 2194ae70da must reset BBT markers in GUI after reset_tempo_marks()
reset_tempo_marks() will have destroyed the tempo marks referenced by any
existing BBT marks
2023-10-03 10:16:36 -06:00
Paul Davis 969dcaa8a6 update all location markers during tempo/meter drags 2023-10-02 16:52:34 -06:00
Paul Davis dd8f5c477f remove debug output 2023-10-02 16:52:34 -06:00
Ben Loftis 4d8a0b3535 add a descriptive tooltip to the Timebase selector (needs translations) 2023-10-02 16:02:06 -05:00
Ben Loftis f53ff625d1 commit to BeatTime as the most likely desired session timebase 2023-10-02 14:48:44 -05:00
Paul Davis e7ced9b855 mergeable line: check callbacks are non-null before calling them 2023-10-02 13:23:52 -06:00
Paul Davis 764ed125a4 region gain line freehand draw: ensure drawn line is above waveform 2023-10-02 12:04:57 -06:00
Alexandre Prokoudine cda1f12845 Update Russian translation 2023-10-02 11:00:05 +02:00
Robin Gareus a1fc671a23
Tweak marker rename dialog title 2023-10-02 03:45:21 +02:00
Robin Gareus dfd44c2ebf
Fix 3-point edit undo/redo #9464
Playlist::split can result in removal of a region
(adding two others instead). In this case the state
of the removed region (if modified) is not saved.
2023-10-02 03:13:31 +02:00
Robin Gareus afa295d4af
Unset playlist's TimeDomain Parent when deleting Track
This fixes a heap-use-after-free, when deleting a Track
and then doing a 3-point edit which iterates over all
playlists.
2023-10-02 01:57:07 +02:00
Paul Davis 1455619e7d revert change in 4bed642d71 that made build_session_from_dialog() do nothing at all 2023-10-01 15:06:29 -06:00
Paul Davis f6d60abda8 remove debug output 2023-10-01 13:26:53 -06:00
Ben Loftis 0709c20adb add a note why preffered-time-domain is NOT editable from rc_option_editor 2023-10-01 14:01:11 -05:00
Ben Loftis 2f4838db68 if user changes session:property:time-domain, switch the rulers
* if the user has explicitly made any ruler settings, they will be found
   and this will not take effect
2023-10-01 13:59:30 -05:00
Ben Loftis df479bf8cd pre-load the session timebase selector with the user pref 2023-10-01 13:58:45 -05:00
Ben Loftis 6c68817b26 add a user config var for preferred time domain (libardour part)
(as opposed to default_time_domain which is the per-session default)
2023-10-01 13:57:28 -05:00
Paul Davis 460b9a24ff add missing file 2023-09-30 12:22:54 -06:00
Paul Davis 18819a48a9 region gain and MIDI CC freehand line drawing
This involved a significant change in event handling for automation region views,
but it brings it into line with how it works for other things. On button press
we initiate a drag, then if no motion occurs, the Drag returns false during
finalization, and only then do we continue through Editor::button_release_handler()
to eventually end up in ::add_automation_event().

Although it is a substantial change, the fact that it now works the same
way for audio regions, automation regions and automation tracks seems
like a definite plus.
2023-09-30 11:09:58 -06:00
Paul Davis 6b64ebdb27 NOOP: do not wrap lines for small screens 2023-09-30 11:09:58 -06:00
Paul Davis b2bb8e9bac move (empty) Drag destructor into source file and add DEBUG_TRACE 2023-09-30 11:09:58 -06:00