Commit graph

40523 commits

Author SHA1 Message Date
Robin Gareus
a83f28231f
Show properties of most recently selected strip 2025-03-14 23:29:45 +01:00
Robin Gareus
c2df0bd236
Fix layout of selection property box w/pianoroll
Shrink properties IFF pianroll is visible, expand pianroll
whenever it is visible.
2025-03-14 23:29:45 +01:00
Paul Davis
179fd25715 some fixes for sigc::connection mgmt and lifetime mgmt for EditingContext 2025-03-14 15:56:21 -06:00
Paul Davis
c509de6814 work on fixing/improving MIDI region/track scrolling behavior 2025-03-14 13:24:49 -06:00
Paul Davis
367800830d in internal edit mode, a rubber-band select with no motion (i.e. click) selects region 2025-03-14 13:24:49 -06:00
Robin Gareus
f4b29e0efa
Use a shared route comment editor for all RouteUIs 2025-03-14 00:21:37 +01:00
Robin Gareus
d8b77aa719
Prepare for single comment-editor per route
Previously every RouteUI would create their own (Editor-mixer,
Mixer, Cue,..). Compare to StripableColorDialog.
2025-03-13 21:30:47 +01:00
Robin Gareus
b46f83a46a
Tweak clearlooks shadow-less frame border to 1px 2025-03-13 20:52:35 +01:00
Robin Gareus
24103bd7ab
Route name verification does not require a Route 2025-03-13 19:24:33 +01:00
Paul Davis
7e8286d9fb zoom-to-selection is Editor-only 2025-03-13 09:08:14 -06:00
Robin Gareus
41f0fd20f1
Allow bypassed aux-panners of multi-channel sends 2025-03-13 13:32:46 +01:00
Paul Davis
49d9701aaf cleanup a virtual method that is no longer relevant after the prior commit 2025-03-12 21:15:32 -06:00
Paul Davis
252be10a73 fix action group used for Editor/set-mouse-mode-object-range 2025-03-12 21:10:44 -06:00
Paul Davis
b403f7b8ed fix typo in a DEBUG_TRACE message 2025-03-12 21:10:24 -06:00
Paul Davis
399e5bac9e manual fixup after failed rebase merge 2025-03-12 17:59:56 -06:00
Paul Davis
56e587476e continuing work managing bindings, actions and action groups 2025-03-12 17:59:24 -06:00
Paul Davis
0a918692c8 fix keybindings definitions to work with continually evolving Editor/Editing split 2025-03-12 17:58:35 -06:00
Paul Davis
90d5c82886 do not run ::associate() for bindings used as templates
This needs a better solution than this hack
2025-03-12 17:58:35 -06:00
Paul Davis
bfa39cd57a change the renaming process in Bindings::relativize()
We used to strip the group name from an action name, then prepend the
Bindings object name.

Now we simply prepend the Bindings object name.

So if the named action was Zoom/temporal-zoom-in it becomes, for example,
MidiCueEditorZoom/temporal-zoom-in
2025-03-12 17:58:35 -06:00
Robin Gareus
3aaff8ff14
Delete region-editor of Pianoroll Window
This fixes `SessionHandleRef exists across session deletion! Dynamic type: ARDOUR::MidiRegion`
2025-03-12 23:20:35 +01:00
Robin Gareus
ba7fa1b33f
NO-OP: indent and fix linter warning 2025-03-12 23:19:01 +01:00
Robin Gareus
29a51abd28
Remove redundant item::remove call from previous commit 2025-03-12 22:50:39 +01:00
Robin Gareus
5cd7c1d6e5
Cleanup Pianoroll canvas 2025-03-12 22:30:16 +01:00
Paul Davis
83d2adfd67 remove current_editing_context concept
All bindings, actions and members of an EditingContext are now per-EditingContext,
and have no impact on others (other than cursors).
2025-03-12 12:36:34 -06:00
John Emmas
a4ee85c4a1 Some new gtkmm2ext functions need to be visible outside of gtkmm2ext 2025-03-12 11:10:47 +00:00
Paul Davis
a9c1619410 since Pianoroll objects may be created at any time, ::associate() them
Bindings owned by objects created earlier in program instantiation
get associated during ARDOUR_UI::we_have_dependents().
2025-03-11 13:51:32 -06:00
Paul Davis
261b5b3732 fix spelling error in EditingContext name for in-editor pianoroll 2025-03-11 13:48:12 -06:00
Paul Davis
9405f807ec avoid crash if get_bindings_from_widget_heiarchy() moves to top of tree 2025-03-11 13:47:36 -06:00
Paul Davis
619927d68c avoid a dangling use of "ardour-bindings" (use ARDOUR_BINDING_KEY instead) 2025-03-11 13:47:02 -06:00
Paul Davis
7d1886b22d provide a copy-constructor for Gtkmm2ext::Bindings
This copies all the binding information for an existing Bindings object,
but then mutates all the action names from foo/bar to name/bar where name
is the given name for the new Bindings object.
2025-03-11 13:45:29 -06:00
Paul Davis
e9d0085c5c pianoroll does not have its own bindings 2025-03-11 13:44:40 -06:00
Paul Davis
ef55ff0ee7 correct behavior for Pianoroll::bindings_changed()
may need some attention to lifetime here.
2025-03-11 13:43:55 -06:00
Paul Davis
203f26c861 do not setup bindings twice in a Pianoroll 2025-03-11 13:42:59 -06:00
Paul Davis
b659a1e7ae there are no pianoroll bindings 2025-03-11 13:42:42 -06:00
Paul Davis
6333b3bd3a mouse-mode-object-range and zoom-to-selection are editor bindings
They do not exist for all EditingContexts and thus should not be in
the Editing namespace/group.
2025-03-11 13:41:18 -06:00
Paul Davis
50d2fbc548 add comment indicating format of group defuns in keybindings 2025-03-11 13:40:47 -06:00
Paul Davis
801099e057 use Gtkmm2ext::BindingSet for the GUI 2025-03-10 18:49:02 -06:00
Paul Davis
effe0bd879 use Gtkmm2ext::BindingSet inside libgtkmm2ext 2025-03-10 18:48:49 -06:00
Paul Davis
9472ca1a14 introduce API to set widget bindings as a vector of Bindings 2025-03-10 13:02:25 -06:00
Robin Gareus
8ac84c3ffd
Cont'd work on Editor/ing contexts 2025-03-10 17:37:35 +01:00
Robin Gareus
037d54b17f
Set mouse-object mode is for the Editor (not piano-roll) 2025-03-10 17:29:33 +01:00
Robin Gareus
769e61ee4c
Update keybindings (fix missing actions, episode 1) 2025-03-10 17:29:33 +01:00
Paul Davis
c14a8e91a7 fix start and end trim of timeline regions in a pianoroll 2025-03-10 09:42:27 -06:00
Paul Davis
53ffd61dd9 for pianoroll MidiViews, set _visible_channel to the lowest MIDI channel with notes present 2025-03-08 18:27:20 -07:00
Paul Davis
fd890b4891 evoral: add Sequence::channels_present() 2025-03-08 17:56:44 -07:00
Paul Davis
cee0b498e9 NO-OP: braces, please 2025-03-08 17:30:29 -07:00
Paul Davis
c0ed2fd9f5 fix vanishing notes during drag in a pianoroll 2025-03-08 12:14:17 -07:00
Paul Davis
881ae4b23a use correct name for main Editor as EditingContext
Bindings rely on this being correct
2025-03-07 19:14:57 -07:00
Robin Gareus
9f4f684d62
Update markers when DPI changes 2025-03-07 17:23:58 +01:00
Ayan Shafqat
19e00c575a
Add optimized NEON implementations for Aarch64
Introduce optimized NEON implementations for audio peak detection,
buffer mixing, scaling, and copy functions on AArch64.

For benchmark results, see ardour-neon-functions [1].

Provide a dedicated `aarch64_neon_functions.cc` for Aarch64 target.
provide backwards compatibility with armhf targets with
`arm_neon_fuctions.cc`.

[1] https://github.com/ashafq/ardour-neon-functions
2025-03-07 02:52:52 +01:00