87b5849a7b
kbd bindings: fix issues with delete & backspace bindings in draw/i-edit mode
...
We now use the same actions in all modes, and the logic is:
1. is there a selected mixer strip and are we in it: if so, delete selected
processors
2. are we in draw or internal mode? if so ..
2a. if there are selected control points, delete them
2b. if not, attempt to delete MIDI notes
2c. done
3. continue with delete operation as before
2023-04-25 11:38:16 -06:00
c16ee928de
fix ruler dialog
2023-04-22 17:58:28 -06:00
9625d22c0d
Add Lua bindings for TempoEditBehavior
...
See also 8fbf2c3f52
2023-04-22 22:15:00 +02:00
65c81feb5e
fix consistency and accuracy of tempo edit behavior setting
2023-04-22 11:12:21 -06:00
3364fdd9f3
Update context menu for subgroup bus creation
...
Rather than hiding options that are not available,
all options are shown and the sensitivity is
set accordingly.
2023-04-21 00:41:30 +02:00
bedca7b5ef
Amend prev commit, pick different max channels for custom config
2023-04-20 19:08:29 +02:00
24986b1f17
Add dialog to configure custom number of chnnels
2023-04-20 19:04:39 +02:00
b4d8a3f933
get initial display for tempo ruler more correct
2023-04-18 14:37:46 -06:00
be73956f4c
add GUI option for controlling default tempo edit behavior
2023-04-18 14:30:59 -06:00
8f95cfd995
different default tempo edit behaviors for mixbus vs ardour
2023-04-18 13:57:14 -06:00
1a2fff932f
prevent crash during ripple-mode dragging a region with copy enabled (weird crash but this stops it)
2023-04-18 13:48:59 -06:00
4d5bce3568
ardev and its cousins should have ARDOUR_MIDI_PATCH_PATH set to be in-tree
2023-04-18 13:48:59 -06:00
3ddf99df08
Fix color-palette preference tooltips
2023-04-18 02:20:26 +02:00
c228d05c47
Clarify round-robin color palette API name
2023-04-18 02:18:02 +02:00
9e35a9da66
Add option to use a neutral color for new routes
2023-04-18 01:07:54 +02:00
23a9ce4651
more debug information
2023-04-16 10:33:48 -06:00
6313a61f15
more improvements to text position in tempo mapping bar
2023-04-16 10:32:50 -06:00
88e4b40857
remove concept/implementation of a mapping stretch drag (aka "half twist")
...
This concept proved to be impossible.
2023-04-13 17:50:41 -06:00
c10b265333
tempo mapping: various tweaks and improvements to workflow/Ux
2023-04-13 17:47:34 -06:00
9d2c1232c5
tweak position of tempo text in mapping bar
2023-04-13 14:36:21 -06:00
040dae9b0d
tempo mapping: adjust BPM delta during a twist to reflect zoom level
2023-04-13 10:57:12 -06:00
89c7159bc5
prefer auto const & as an amendment to b4291cfb32
2023-04-12 12:45:11 -06:00
73f41a4d3b
remove debug output
2023-04-12 10:38:57 -06:00
36525a1ada
rippling - use a list and ::push_front() to avoid having to reverse
2023-04-12 10:38:27 -06:00
b4291cfb32
some more C++11 loop-auto-fication
2023-04-12 10:16:09 -06:00
117c751293
fix undo for multi-non-contiguous region cut/delete ( #9295 )
...
Defer all ripples till after cut/delete. Then perform them
from the latest to the earliest.
2023-04-12 10:16:09 -06:00
e575d5c6dc
remove crash-causing reference to non-existent action
2023-04-12 10:16:09 -06:00
f7f3c1a920
tempo mapping: fix lifetime management of mapping bar text
2023-04-10 09:18:45 -06:00
caa42c8b4d
remove debug output
2023-04-10 09:18:44 -06:00
53a98a64fa
tempo mapping: when not close to a beat line, revert cursor to grabber
2023-04-10 09:18:44 -06:00
15a018a59d
remove reference to non-existent ruler menu item
2023-04-10 09:18:44 -06:00
a0dc539d70
Set thread-local tempo-map to write-copy
...
Use the new map that is being edited for lookups while changing
the map in the in the GUI. This can changes directly visible
as the map is being edited.
This used to be done directly with the fetch_writable() API
2023-04-10 10:03:21 +02:00
518fc7754f
tempo mapping: half-way towards working drags again
...
For some reason, mid-drag changes are not visible
2023-04-09 14:36:03 -06:00
4f87506e5c
do not sort lineset every time a coord is added; use RAII to create scope and sort at end
2023-04-09 14:36:03 -06:00
d4bca18108
slightly improve efficiency of drawing grid lines by passing by reference, not value
2023-04-09 14:36:03 -06:00
13d814f87c
fix a few canvas thinkos related to mapping bar
2023-04-08 14:12:41 -06:00
786f71f7f1
fix GUI enum registration so that UIConfiguration can load with variables that use some of them
2023-04-08 13:58:25 -06:00
13311b7a32
tempo mapping: tempo group and mapping group are now only ever visible one at a time
...
Currently, the "switch" is in Edit > Tempo
2023-04-08 11:44:21 -06:00
a37d4dbacf
define actions for changing tempo edit behavior and expand menu
2023-04-08 11:44:21 -06:00
8fbf2c3f52
add enum and member var for controlling what kind of tempo editing we are doing
...
note: this was much harder than it ought to be
2023-04-08 11:44:21 -06:00
295dbd8e1e
Make RCU reader return a const pointer (omnibus commit)
2023-04-08 00:15:37 +02:00
57398b1e5e
tempo mappoing: use actual mouse cursors not canvas item cursors
...
Also some changes to attempt to do "half-twist" that will be removed soon.
2023-04-07 12:56:57 -06:00
f57a9d84df
Do not incrementally ripple during cut/delete #9295
...
When cutting multiple regions with Ripple-ALL, removing
the first region ripples the remaining tracks which includes
selected regions on those tracks which are to be cut later.
2023-04-06 02:18:42 +02:00
dd542b8f4d
Use ARDOUR::PlaylistSet instead of local typedefs
2023-04-06 02:13:51 +02:00
7302aefbee
Guard set_transient_for for NULL windows
...
While there should always be a top-level, backtraces
provided by some [windows] users show that it can be NULL
in some scenarios.
2023-04-04 01:38:33 +02:00
a0286f2e6f
Expose cut-copy-section in the editor
...
This is still a bit of an experiment, there may need to be a dedicated
ruler for sections, or a side-bar that allows arranging.
2023-03-31 23:13:20 +02:00
91c0f143ec
Set sensitvity of "Insert Selected Region"
2023-03-31 22:06:41 +02:00
c362a5af8f
Allow compilation with MSVC and sigc++ 2.3 (revert this at some point)
...
libsigc++ before 2.5.1 could not determine the return type
of a value unless SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE
was specified.
2023-03-31 18:12:10 +02:00
4d940ce5a2
Fix shuttle info sizing text
2023-03-31 18:07:02 +02:00
c11f62fd51
Fix VCA button event propagation
...
This prevents double-click on the VCA spill button from
to showing the add route dialog.
2023-03-30 19:04:36 +02:00
3a6e3c2c13
Add audition volume control to clip-picker
2023-03-29 01:48:25 +02:00
7ecbdd27a9
hide invisible plugin-control properties in generic ctrl UI
2023-03-29 01:08:36 +02:00
Edgar Aichinger
3f209c2ab4
update german translation
2023-03-28 01:44:49 +02:00
9725685416
Fix metadata in the Catalan translation
2023-03-28 01:42:20 +02:00
Xavi Ivars
a3d6b16e5c
gtk2_ardour appdata Catalan po
2023-03-28 01:39:36 +02:00
f2c309d7de
Use std pointers in objective C files
2023-03-25 00:07:56 +01:00
9232f41176
Remove debug output
2023-03-24 23:20:50 +01:00
47416743fb
license info: add clarification re: plugins to About dialog
...
Also, it's "pointer-to-const-char"
2023-03-24 14:19:16 -06:00
0aea2a2ef8
tempo twisting: GUI improvements, including undo/redo logic
2023-03-24 14:19:16 -06:00
0cf199ac48
remove another ancient binding set
2023-03-24 14:19:16 -06:00
565fb90ccb
remove old SAE keybindings
2023-03-24 14:19:16 -06:00
10b845b1ca
fix mapping begin/commit/abort logic in editor
2023-03-24 14:19:16 -06:00
77cefd7721
new tempo mapping drag objects (API and implementation)
2023-03-24 14:19:16 -06:00
6d5273e514
tempo marker drag: change type of stored bpm
2023-03-24 14:19:16 -06:00
20349d868e
fix various aspects of display of mapping cursor
...
This might all change in the future, or even go away.
2023-03-24 14:19:16 -06:00
74225f07de
nominally handle popup menu for mapping cursor item (unfinished)
2023-03-24 14:19:16 -06:00
ca8127c458
add canvas item type for mapping cursor
2023-03-24 14:19:16 -06:00
ab3fe29afd
no need for a temporary ptr-to-tempo map
2023-03-24 14:19:16 -06:00
f96a0d0ddf
editor: adding handling of mid-mapping tempo redisplay
2023-03-24 14:19:16 -06:00
604984ae6f
enums: add new enum for MappingCursorItem type
2023-03-24 14:19:16 -06:00
aa3cbd8791
editor: expand handling of tempo-redisplay in middle of drag
2023-03-24 14:19:16 -06:00
ece438d73d
editor: refactor snap to bbt to allow specifying non-grid-setting grid type
2023-03-24 14:19:16 -06:00
49439d2acf
ensure that the ask-about-quit dialog is shown at mouse-position
2023-03-24 14:19:16 -06:00
868d606d16
track mouse motion in the mapping bar
...
This does not yet snap to BBT positions
2023-03-24 14:19:16 -06:00
5e01503a56
add a new canvas-based cursor for mapping
2023-03-24 14:19:16 -06:00
d61a741e4b
mapping bar: some mouse handling
2023-03-24 14:19:16 -06:00
e9b83e0f1d
it's only debug info but let's get it right
2023-03-24 14:19:16 -06:00
18249f7395
ardour has a new ruler
...
The mapping bar is where tempo mapping operations will take place
2023-03-24 14:19:16 -06:00
38bb89c110
more functional tempo mapping
...
TempoMarker drag modifies tempo (and thus beat-time positions
and durations).
BBTRuler drag modifies the map but not positions/durations
2023-03-24 14:19:16 -06:00
21074b189a
remove unnecessary virtual (no default value involved)
2023-03-24 14:19:15 -06:00
d25a615e20
API development for time domain flipping (GUI edition)
2023-03-24 14:19:15 -06:00
28d244bd0a
use cstdint instead of stdint.h
2023-03-24 14:19:15 -06:00
c304edd253
switch from glib atomic to std::atomic (gui edition)
2023-03-24 14:19:15 -06:00
b35518e212
switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
...
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
39ed528e25
std-ize: convert all boost shared/weak ptr includes to <memory>
...
Also fix stdint.h -> cstdint and alphabetically order std includes
2023-03-24 14:19:15 -06:00
6dadac73ab
Add context-menu options to disconnect plugin-pins
2023-03-20 23:14:06 +01:00
2ea0bb5f37
try to prevent a crash when handling a freesound sample with a non-UTF8 filename
2023-03-17 14:24:08 -06:00
48ee85ea0c
decrease the default opacity of "dragged region" (in all themes)
2023-03-17 11:56:08 -05:00
4de53fa600
make regions transparent during fade-handle drags
...
* during drag and trim operations, we use "dragging region" transparency
so you can see the audio data beneath your region(s)
* we already do this for region-end-trim fade drags, which is a special
kind of trim operation, accessed from the 'lower' drag handle
* now we also trigger transparency for regular fade trims.
see discussion at:
https://discourse.ardour.org/t/regions-transparency-in-7-2/108060/31
2023-03-17 11:56:08 -05:00
6ff8fb7c5e
Fix silence at start/end of export
...
Previously that caused an assert() in audio_clock.cc:1964
current_duration(): Assertion `is_duration' failed.
Optimized builds always returned zero duration.
2023-03-14 00:35:13 +01:00
JungHee Lee
9dc523710c
Update ko.po
2023-03-13 21:52:31 +01:00
44bfaa9235
Fix Korean translation
...
Remove duplicated entries
2023-03-08 03:44:11 +01:00
f8d85a2f85
Fix the French translation
...
Remove a copy of itself appended to the end, as well as an extra '\n'
2023-03-08 03:19:33 +01:00
Olivier HUMBERT
bc1ed2e256
Update French translation for 7.3.0
2023-03-03 17:17:49 +01:00
JungHee Lee
3b0a19d30e
Update Korean translation
2023-02-24 02:00:10 +01:00
ef14fec4ec
MIDI trace window: enable printing of new-ish MIDI tick message
2023-02-23 15:34:27 -07:00
df577d79d4
Clarify scale-slider, label is not the current value
2023-02-23 22:52:56 +01:00
adb6467427
midi clock: move incoming BPM quantize option and add tooltip
2023-02-23 12:15:51 -07:00
dbd779bf85
NOOP: remove commented debug output
2023-02-23 12:14:39 -07:00
a7458d308b
midi clock: allow user to "quantize" MIDI clock resolution (GUI edition)
2023-02-23 10:17:54 -07:00
luzpaz
44a869732c
Fix various typos
...
Found via `codespell`
2023-02-20 17:35:24 -07:00
9df3058cd8
Add Graphics Acceleration heading to prefs on macOS
2023-02-17 15:57:32 +01:00
2c7bfa9ead
require use of BBT_Argument as both parameter and return type from most methods (GUI edition)
2023-02-15 16:02:56 -07:00
8f248bd0ba
update C++ preferences metadata object
2023-02-14 10:15:18 -07:00
9107c6d70c
lots more preferences metadata
2023-02-14 10:15:06 -07:00
3dd9b2c201
rationalize single call to TempoMap::use() in AudioClock::set_bbt()
2023-02-14 10:14:39 -07:00
72bc6ac43d
some edits for preferences metadata
2023-02-14 10:13:26 -07:00
8a23015ffb
Update Russian translation
2023-02-13 04:56:58 +03:00
b8c4034af5
Fix a user-visible typo
2023-02-13 03:05:38 +03:00
168344a3f9
Indicate sample-rate mismatch in the status-bar
2023-02-12 16:23:42 +01:00
adf1eb34fb
Fix drawing percussive hits ( #9234 )
...
* HitCreateDrag::start_grab does not need to do anything
a hit cannot be past end of region. Drawing at or past
the end of a region will create a new region (not an event)
* HitCreateDrag::finished now calculates the position like
NoteCreateDrag::finished.
* the selection does not need to be cleared. Creating new
notes/hits selectes the newly created ones.
2023-02-11 20:27:43 +01:00
f1d784afbb
deep fix to the way automation control point drags are handled/computed
...
The old code could not snap to the grid, because it had a lot of confusion about pixels vs. time,
and between line-origin-relative time and absolute time
2023-02-10 11:11:51 -07:00
03b32cb4a0
remove unused "beats" variable and computation from Editor::metric_get_bbt()
2023-02-10 11:11:51 -07:00
907b0bbfa0
Fix time-stretch dialog clock
...
This broke in 45e21de209
, the clock is not yet visible,
so the value has to be forced.
2023-02-09 00:35:27 +01:00
cd6d7a8074
Fix another -Wabsolute-value
2023-02-08 03:50:21 +01:00
ae66304194
missing API change from e883c39e7
2023-02-06 21:51:28 -07:00
fe64ab9d31
control point drag: set time domain to match the list being modified
...
Previously this used the editor's default time domain
2023-02-06 21:04:17 -07:00
c41de90abd
drags: add API to set time domain of a drag
...
This can slightly improve efficiency of temporal computation
during the drag.
2023-02-06 21:04:17 -07:00
e883c39e7a
control point drag: fix the way bounding-to-region is computed
2023-02-06 21:04:17 -07:00
2de76147d2
automation line: fix pos/distance confusion that misplaces dragged control points
2023-02-06 21:04:17 -07:00
3d96a318ac
automation line: add dump() method to inspect GUI control points
2023-02-06 21:04:17 -07:00
8c6fa19bcf
use C++11 auto iterator
2023-02-06 21:04:17 -07:00
12ad052d98
Fix another class/struct mismatch
2023-02-07 03:07:22 +01:00
65d5d8162f
Add missing includes to satisfy linter
2023-02-07 03:06:51 +01:00
48efbb4cc5
One drag at a time ( #9217 )
...
When a drag is already active, do not allow to start
another one. e.g. start a middle-click (fixed time drag),
then left-click.
2023-02-07 02:57:58 +01:00
2b64c4afe4
Allow to move edit-cursor and PH in dropzone ( #9222 )
2023-02-07 02:14:38 +01:00
8c561b19a6
DisplaySuspender is a struct (not a class)
2023-02-07 01:50:04 +01:00
e74cb666ed
Allow to set transparency to 100%
...
Despite what the docs say Gtk::HScale(0,1,s) with a step-size
s > 0 has a range [0, 1 - s]. GTKMM does allow for a step-size
of zero, which also works around this issue.
This works because gtkmm sidesteps gtk_hscale_new_with_range() which
would fail with g_return_val_if_fail (step != 0.0, NULL);
The reason for this is that gtkmm creates an Adjustment with a
page-size = step-size:
```
Adjustment* adjustment = manage(new Adjustment(min, min, max, step, 10 * step, step));
```
and `gtk_adjustment_configure` limits the range:
```
value = MIN (value, upper - page_size);
```
2023-02-06 01:27:24 +01:00
3cb1410318
update preferences metadata object
2023-02-05 12:25:04 -07:00
7c07c87088
add MIDI max note height to preferences GUI
2023-02-05 12:25:01 -07:00
a365a7ebf3
respond to MIDI max note height changes
2023-02-05 12:24:12 -07:00
2756be4b62
add an option to control the maximum MIDI note height (not yet GUI exposed)
2023-02-05 11:36:24 -07:00
0bce5d24de
update preferences metadata object
2023-02-05 10:58:11 -07:00
38b3e88582
more preferences metadata
2023-02-05 10:57:47 -07:00
e446e4c501
more preferences metadata
2023-02-05 10:41:03 -07:00
3105dcfbbc
Tweak new-plugins-active tooltip
2023-02-05 16:07:52 +01:00
be1462357b
Expose preference to create sidechain ports by default
2023-02-05 16:07:13 +01:00
f035a0baed
Remove prefs-search test-code
2023-02-05 15:36:43 +01:00
3cb89b7c6e
List custom resampler quality settings in prefernces
2023-02-05 03:38:35 +01:00
cooltehno
b4169a0391
Update blueberry_milk-ardour.colors
2023-02-04 23:43:53 +01:00
380005f50f
Update preference to set macOS render performance
2023-02-04 22:34:12 +01:00
c707b056af
Add some preference search tags
2023-02-04 06:58:02 +01:00
51e93399ba
Update vari-speed availability, depending on port-resampler
2023-02-04 03:21:27 +01:00
19b8069720
Add preference to set port-resampler-quality
2023-02-04 03:20:47 +01:00
5316ac38e7
Export Dialog: remove redundant calls
2023-02-04 00:24:19 +01:00
b421cd26bb
Export Dialog: correctly init export channels
...
The state has to be pushed to the manager during initialization,
otherwise channel_config remains unset.
This fixes an issue with files using the same filename
(missing channel name) during stem export.
2023-02-04 00:24:07 +01:00
14606ac655
Rec-stop only writes a pending (recovery) file ( #9215 )
...
This is consistent, since after handling the
`SaveSessionRequested` signal the session remains dirty
(which may be a bug). However since the signal is handled
by the GUI, rec-stop only saves the session if there is a GUI.
It is however somewhat dangerous. Record, quit + no-save (or
changing snapshots w/o saving first) will loose any references
to the recorded data (even though it is still on disk).
Note that "remove last capture" still saves the session
(to prevent references to non-existent sources).
2023-02-03 07:56:49 +01:00
160ed4d056
tweak generation process for preferences metadata and start adding some
2023-02-01 18:14:33 -07:00
1333f39621
searchable prefs: fix behavior after find failure
2023-02-01 18:10:56 -07:00
ee151ee36e
fix track scrolling by using API to reset controls_layout, not doing it directly
2023-02-01 13:10:43 -07:00