Commit Graph

38315 Commits

Author SHA1 Message Date
Paul Davis 0a6ac2678a canvas: if LineSet does the 0.5 pixel shift, make it the right direction 2023-09-25 20:01:21 -06:00
Paul Davis 5fa5c5d202 canvas: NOOP fix comment about docs on single pixel lines 2023-09-25 19:52:10 -06:00
Paul Davis bc78694a1a canvas: fix bounding box of a LineSet (lower edge was not lower enough) 2023-09-25 19:51:33 -06:00
Paul Davis 6f802015d7 scroomer should follow UIConfiguration's max note height setting 2023-09-25 18:40:12 -06:00
Robin Gareus 3cf1227421
Revert "in draw mode, mouse drags in automation tracks are always freehand drawing"
This reverts commit c578695a64.

When hovering over a control point there is still the "Fader"
cursor shown. It is also handy to be able to directly modify
a control-point right after adding it.

A freehand draw operation can be still be initiated above,
below, or left/right of a given control point.
2023-09-26 01:10:16 +02:00
Robin Gareus eed79f45d7
Fix layering when copy/pasting regions (2/2) 2023-09-25 22:36:28 +02:00
Robin Gareus 496957efdf
Fix layering when copy/pasting regions (1/2)
Playlist::add_region, Playlist::add_region_internal always
adds the region to the top of the playlist, ignoring the
region's layer.

Note that there is also difference between
Region::layer and Region::layering_index.
2023-09-25 22:36:27 +02:00
Robin Gareus 5fe127eb49
Keep preset message dialog on top of export dialog 2023-09-25 22:36:27 +02:00
Robin Gareus ccef22f998
ArdourMessageDialog allow for NULL parent window
This is handy on Windows, where Widget::get_toplevel() may
return NULL or not-a Gtk::Window.
2023-09-25 22:36:27 +02:00
Robin Gareus 300de26b3e
Fix XML read error when creating new export profiles
Previously creating a new preset first attempted to load
it from disk, before creating it. This resulted in a
`XML error: failed to load external entity`.
2023-09-25 22:36:24 +02:00
Paul Davis b711da9153 scroomer prelight and handles 2023-09-25 11:01:22 -06:00
Paul Davis d892614742 fix DEBUG_TRACE message about a drag 2023-09-25 11:01:22 -06:00
JungHee Lee f9da85639d
Update ko.po 2023-09-25 18:56:56 +02:00
Robin Gareus ed60ef40b0
Fix arrangement rectangle prelight
This follows the general rule to lighten a widget on hover
(like ArdourButton, Triggermaster etc)
2023-09-25 18:55:04 +02:00
Robin Gareus 5082dc62a4
Copy more old config files from v7 to v8 2023-09-25 17:21:10 +02:00
Robin Gareus d7c611e025
Guess UI scale for copy-config dialog
This dialog shows before the new user wizard,
where a user would configure HDPI/UI scaling.
2023-09-25 17:07:15 +02:00
Paul Davis 9f475d5427 avoid double call to ::model_changed() during set up of a MidiRegionView
There is a DisplaySuspender in MidiRegionView::init(), and another invoked
during the addition of a RegionView to a StreamView. Before this change, both
suspenders were created to invoke a full "model-changed" redisplay. Since every
RegionView must be added to a StreamView to be visible, we only need the second
suspender to invoke the model-change. The first one can be just a view
change (and probably isn't necessary at all, but I did not want to change that
much at this point in time).
2023-09-24 18:41:51 -06:00
Paul Davis 1f13b311fd midi display: ensure that lollipops are visible right after import
VelocityGhostRegion used the visibility of the "parent" note canvas item of a
lollipop canvas item to determine the lolli's visibility. But during the
construction of the MidiRegionView, the note's container is not yet visible, so
this fails.

In addition this logic would hide lollis for notes that are outside the current
visible note range of the track (because the parent note item was not visible).

This change adds a method to MidiRegionView to decide if a note is within the
region's time range, and if so, we show the lollipop item. This means that
lollis for notes outside the note-range will still be visible, which seems more
correct. In addition, the nascent condition of the parent note's container no
longer affects lolli visibility.
2023-09-24 18:38:20 -06:00
Paul Davis 61d8ceaa85 change API of Editor::get_quantize_op() and fix flaky UX when using quantize-notes 2023-09-24 15:01:04 -06:00
Paul Davis 6db28ef08d remove debug output 2023-09-24 15:01:04 -06:00
Paul Davis 318af69057 do not grab magic widget focus for MIDI editing purposes
The bindings use will all work just fine without this focus grab; the focus
grab in turn confuses the use of some/all global bindings (such as the spacebar
to toggle tranport state)
2023-09-24 15:01:04 -06:00
Robin Gareus 39595244e8
Credit where credit is due 2023-09-24 19:58:59 +02:00
Martin Vlk 2c7806835b
Update translation howto 2023-09-24 19:58:25 +02:00
Martin Vlk 5ec2c9ed4d
Czech translation updated for the 8.0 release. 2023-09-24 19:57:25 +02:00
JungHee Lee 8a0efbed7a
Update ko.po 2023-09-25 00:07:24 +09:00
Krzysztof Gajdemski b745a463df
Update Polish translation
This is a major update as previous translation was very dated.
2023-09-24 16:39:02 +02:00
Paul Davis a38a4954a7 add a few new configuration params/preferences to the metadata list
Technically this breaks our string freeze, but only for searching preferences, not
for text displayed in the GUI
2023-09-24 07:52:18 -06:00
Robin Gareus 32efd92360
Add missing #include for NoteType 2023-09-24 14:27:29 +02:00
Robin Gareus 184bd500f7
NO-OP: clang-format 2023-09-24 14:25:14 +02:00
Robin Gareus ad24d397f5
Fix various MIDI List editor issues (#9457)
* Fix crash when inserting note to empty region
* Consistently use fine-grained modifier
* Don't allow to edit BBT as text field
  This is currently not supported.
* Fix GTK_IS_CELL_EDITABLE assertions (Tab to next)
2023-09-24 14:15:45 +02:00
Robin Gareus 1386a96af0
MIDI List editor: fix off by one with scroll duration 2023-09-24 13:11:07 +02:00
Robin Gareus 82fdd08953
MIDI list editor: fix note position scroll 2023-09-24 12:56:44 +02:00
Robin Gareus 2d24a5fe88
MIDI list editor: fix note-length dropdown (#9457) 2023-09-24 12:55:10 +02:00
Violet Purcell 6e24a409f4
Use <atomic> instead of <stdatomic.h> in libc++ fix
The definitions from <stdatomic.h> conflict with <atomic>, which causes
a build failure since <atomic> is included previously.

Signed-off-by: Violet Purcell <vimproved@inventati.org>
2023-09-23 23:53:05 +02:00
Paul Davis 1dc70e792f upgrade waf to 2.0.26 (includes new autowaf.py version) 2023-09-23 12:09:52 -06:00
Paul Davis 769d9632b7 remove unused function from autowaf.py (it no longer worked with python 3.12) 2023-09-23 12:09:52 -06:00
Krzysztof Gajdemski 82d03607b8
PortGroup: fix missing "_" in "Tracks"
This small typo prevented (a rather important) noun "Tracks" from being
translated.
2023-09-23 14:10:54 +02:00
Robin Gareus e40000e90c
MacOS/Intel build compat with OS 10.11 2023-09-23 14:10:54 +02:00
Paul Davis 616273cfab temporal: slightly tweak DEBUG_TRACE output 2023-09-22 22:54:53 -06:00
Paul Davis 14e7f62891 fix BBT_Time::round_up_to_beat_div() (partially)
Math is now correct for cases where "beats" in BBT are quarters.
Incorrect for others
2023-09-22 22:54:37 -06:00
Paul Davis 44d32d6325 move MIDI note draw actions from Editor tab to MIDI tab, and rename
Sorry translators, this is a small string freeze breakage.
2023-09-22 22:45:28 -06:00
Paul Davis 1c2cd78f41 Revert "temporal: fix superclock time used to find relevant tempo & meter"
This reverts commit b192eea65a.
2023-09-22 15:35:40 -06:00
Paul Davis e2f6241dd6 temporal: NOOP whitespace 2023-09-22 15:35:39 -06:00
Paul Davis 1cdfe2aa2f temporal: actually iterate 2023-09-22 15:30:31 -06:00
Paul Davis b192eea65a temporal: fix superclock time used to find relevant tempo & meter 2023-09-22 15:30:20 -06:00
Paul Davis d6565cce77 temporal: NOOP whitespace 2023-09-22 15:18:27 -06:00
Paul Davis d282c317d0 temporal: use new BBT variant of get_tempo_and_meter() 2023-09-22 15:18:27 -06:00
Paul Davis a89108c9af temporal: removed #if 0'ed old code 2023-09-22 15:18:27 -06:00
Paul Davis 374283cc3f temporal: provide a new variant of ::get_tempo_and_meter() for BBT time
This one is more complex than the Beats or superclock variants, because
we cannot just start from the front of the map. Instead, we have to
first iterate through the map so that we start the code in
_get_tempo_and_meter<...> from the TempoPoint and MeterPoint
in effect at the BBT_Argument's reference time.
2023-09-22 15:18:27 -06:00
Paul Davis 3aacbc453e temporal::remove version of get_tempo_and_meter() that was never used 2023-09-22 15:18:27 -06:00