13
0
Commit Graph

14049 Commits

Author SHA1 Message Date
29c89cf362 fix tiny typo in a tooltip 2021-05-06 11:42:50 -06:00
05d8545655 preference item for auto-return-after-rewind-ffwd 2021-05-06 11:40:20 -06:00
b75118ee13 a more robust value check for 8cb09ab2cf modification 2021-05-05 18:48:53 -06:00
8cb09ab2cf fix for region-drag to the dropzone (#8672)
The DraggingView's time_axis_view (index) is set to the size of _time_axis_views
in ::motion() near line 1149. This makes it invalid as index into the vector.
2021-05-05 18:33:44 -06:00
5c579ed52d
Remove unused #include<> (1/2)
PBD::stacktrace() is not used nor needed by default.
It should be used sparingly.
2021-05-05 17:43:28 +02:00
f72c2b93c5
Fix video-monitor display when seeking
see also 25c0bd9274

play, locate, play resulted in the video-monitor showing
the target frame shortly, and play a few frames from the old
location.

This was due to locate happening async. Click to locate
directly sends the new location:

```
VideoTimeLine::manual_seek_video_monitor
ARDOUR_UI::update_transport_clocks
CursorDrag::fake_locate
CursorDrag::start_grab
DragManager::start_grab

```

CursorDrag::finished unset _dragging_playhead before the
call to resuest_locate(). Meanwhile playback continues.
2021-05-05 17:11:24 +02:00
9f4189c031 copy over changes to BasicUI::button_varispeed() to ARDOUR_UI::button_varispeed() 2021-05-04 23:14:48 -06:00
f792735672 remove double-tooltip setting (copy-paste error) for a preferences item 2021-05-04 20:54:38 -06:00
7fef16af6f add rewind/ffwd option to transport section of Preferences 2021-05-04 20:52:21 -06:00
9905f6e0a9 copy BasicUI::button_varispeed() into ARDOUR_UI, and use in all the right places
We really must find a way to share code between BasicUI and ARDOUR_UI
2021-05-04 16:56:19 -06:00
b01632356d fix cast warning 2021-05-04 16:55:33 -06:00
981fc6b3cd transition-to-roll should work whether rolling or stopped 2021-05-04 15:57:03 -06:00
8c427279d9 transition-to-roll should not set the default transport speed 2021-05-04 15:37:04 -06:00
1f18b4905d remove assert() that is triggered via multiple selection in region list (now possible for some time) 2021-05-04 11:55:48 -06:00
0aef128207 fix assumption that during dragging, a DraggingView's time_axis_view field is always a positive integer within range 2021-05-04 11:55:23 -06:00
5bfc507cb3 fix out-of-bounds access to a vector.
If the time axis view is not found, i will equal N, and _views[i] is out of bounds
2021-05-04 11:54:50 -06:00
ac53a9bbf8 remove unnecessary 2nd argument from Session::request_locate() calls (default value is identical) 2021-05-03 17:40:41 -06:00
e82b2b48fb
Avoid ambiguity with C++17 enum class std::byte 2021-05-02 16:36:57 +02:00
61885f0284
Explicitly set announce=false when creating regions (2/2)
This is in preparation for to improve consistency of
RegionFactory::create() default parameters (change
default to true).
2021-04-30 18:40:51 +02:00
6a82aa392c
Fix deadlock when duplicating regions w/ripple
This is an initial work-around for signal emission with
Playlist:region_lock held:

Playlist::duplicate() takes RegionWriteLock() and then calls
RegionFactory::create(). The newly created region does NOT have
property-changes suspended, and the RegionFactory can change
region-properties which results in signal-emission.

This in turn can lead to a call Editor::session_gui_extents()
-> ARDOUR::Playlist::get_extent() -> Playlist::RegionReadLock

which deadlocks: https://pastebin.com/84rSbsA3

Eventually we need a mechanism to create regions with
->suspend_property_changes() and add it to the playlist's
thawlist (pass a thawlist to the region-factory).
2021-04-30 03:40:32 +02:00
7a89d56009
Fix insert + ripple undo/redo
Playlist changes do not include region-property changes.
When inserting a region, position(s) of other Regions may
change and those changes have to be recorded explicitly (for now).

see also RegionRippleDrag.
2021-04-29 22:56:09 +02:00
2c64736604
Fix crash when consolidating range with automation
The undo command needs to be started before calling
playlist->add_region() because that may move automation
or include ripple changes. see the following backtrace:

```
UndoTransaction::add_command
ARDOUR::DiskReader::move_processor_automation
ARDOUR::Route::foreach_processor
ARDOUR::DiskReader::playlist_ranges_moved
ARDOUR::Playlist::flush_notifications
ARDOUR::Playlist::RegionWriteLock::~RegionWriteLock
ARDOUR::Playlist::add_region
Editor::bounce_range_selection
```

Except. it seems automation is moved incorrectly in this case..
2021-04-29 21:17:22 +02:00
5014b20c5f
Inform user if there have been dropouts during export 2021-04-29 17:50:46 +02:00
2e7b193988
Support MacVST2 plugins with multiple child views (e.g. UAD) 2021-04-28 00:57:41 +02:00
b6c75ef42a
Fix Mac Plugin re/sizing
Some plugin UIs, particularly those that cannot be resized
unset `autoresizesSubviews`. Since the plugin-view is re-parented,
the host has to directly set the view's size.

However some plugins have multiple child views, apparently
for off-screen pixmaps (e.g. UAD plugins). Those additional
should not be resized (or re-stacked).

e.g.

Reason-Rack
  view 0x7fe27e44e570 @ 0, 33 834 x 804
    view 0x7fe288aa3770 @ 278, 268 278 x 268

UAD Tube-tech
  view 0x7fe270a9cbf0 @ 0, 33 1160 x 374
    view 0x7fe28883d030 @ 0, 0 1160 x 374
    view 0x7fe2888546e0 @ 0, 0 1160 x 24


see also aef366c156
https://discourse.ardour.org/t/uad-plugin-will-not-load-shows-as-expired-when-its-not/105756/5?u=x42
2021-04-27 23:50:59 +02:00
d627e00ff6
NO-OP: whitespace 2021-04-27 23:40:45 +02:00
fc9a4754bc allow <PRIMARY>-w to close the preferences window, just other dialogs
Preferences is a tabbable, a leftover artifact of when it was, in fact, intended to be a tabbable. Rather than
re-engineer this right now, add a key event handler so that Primary-w works for this just like other dialogs
2021-04-26 10:50:30 -06:00
cce41ee15b no need for 2nd argument in OptionEditorContainer constructor call 2021-04-26 10:49:23 -06:00
3f1e4ceaaa remove unused argument to OptionEditorContainer constructor 2021-04-26 10:48:53 -06:00
54c135c8b9 fix "trim to loop" region edit operation so that it applies to any region that intersects the loop, not just those spanning it 2021-04-25 09:42:06 -06:00
4abfcca8b6 rewind/ffwd from GUI needs to start transport, not just set speed 2021-04-23 11:02:54 -06:00
4c1a82a153 fix URL for VST3 plugin locations specs (#8659) 2021-04-21 18:00:41 -06:00
eeadf5087d
Shuttle wheel context-menu: max speed only applies to percentage 2021-04-20 14:26:30 +02:00
80405e41b0
Fix shuttle wheel unit granularity
When switching to Semitones, round speed to nearest semitone.

This fixes an issue when rolling forward at < 25% which is
less that -24st and then scrolling right (increase pitch).
The result may still be < -24st and playback reverses.

When changing max-speed, directly constrain speed.
2021-04-20 14:14:45 +02:00
2c8746eda9
Fix shuttle wheel semi-tone mode
Previously it was not possible to return from reverse playback
since left-scroll decreased pitch, even during reverse playback.

This also fixes an edge-case when quickly scrolling through
zero. use_shuttle_fract() ignores rapid events, map_transport_state()
can round speed to zero and next scroll-event set the default +1st
speed (really should have been 0st).This is solved by starting at
-24st, similar to how percentage does not start at 100%.
2021-04-20 13:53:35 +02:00
81c08b6efb restore sprung shuttle behavior (mistakenly altered in a recent commit 2021-04-19 16:14:08 -06:00
48e5607f7c use Session::request_roll() instead of request_transport_speed (1.0, ...) 2021-04-19 16:14:08 -06:00
52b7e68102 use new Session transport API calls in GUI 2021-04-19 16:14:08 -06:00
0bccc4bffd fix mispelling of actual in shuttle control code 2021-04-19 16:14:08 -06:00
1d97220cff use Session::request_transport_roll() in main GUI call site 2021-04-19 16:13:38 -06:00
7cbecaedff improve GUI behavior of the tempo dialog by preselecting the start bpm text field
most common user action will be: show dialog, type keys, press return. This works now.
2021-04-19 16:13:38 -06:00
905ea49f05
Prevent libXML read error in case file does not exist 2021-04-19 04:55:17 +02:00
dd060b04dc
RecorderUI: Fix monitoring when hot-plugging devices
When there are no input ports at the time the engine starts
running, MonitorInputChanged signal was not subscribed to.
This breaks AFL solo. This happens e.g. when re-starting the
engine with ALSA slave devices.
2021-04-18 19:03:35 +02:00
271860f630
Consistent port-matrix channel name display
Previously the columns always displayed port-names unconditionally,
while rows only showed them if there was one more port per bundle.
2021-04-17 00:27:38 +02:00
209536a967
Option to hide "-none-" from instrument dropdown
This is useful for the audition instrument selector.
2021-04-16 22:25:41 +02:00
32acfbd52c
Fix blurry text in connection manager
Text that that is not on extract pixels will be anti-aliased
leading to blurry rendering.
2021-04-16 21:42:49 +02:00
4abde9972d
Yet another fix for asymetric I/O latencies 2021-04-15 03:44:33 +02:00
37243ce61b
Further tweaks for UTF8 font-issues on Windows 2021-04-13 23:38:54 +02:00
03f63d4463
Fix BPM button text display on Windows 2021-04-13 19:46:47 +02:00
fc4e42662d
UTF8 compatibility with default windows font 2021-04-13 19:46:20 +02:00