Commit Graph

40272 Commits

Author SHA1 Message Date
Paul Davis
22a5113b59 change how mouse mode actions are defined
they now use a lambda for the functor, and the lambda calls
current_editing_context() to pick which EditingContext will
be affected.

this design replaces one where each EditingContext had its
own set of mouse mode actions defined, using its own name
as the action group
2025-01-16 12:30:15 -07:00
Robin Gareus
462c5ad400 Windows multitouch fixes and notes
Properly special case first single touch; fall
back to allow windows to emulate mouse events for it.
Yet let gdk handle any multi-touch events, not allowing gestures.
2025-01-16 18:46:27 +01:00
Paul Davis
f608ad1f27 make escape in pianoroll clear point selection as well as notes 2025-01-15 18:09:18 -07:00
Paul Davis
7ec2bc4edd fix rubber band selection coords so that it works in Editor & Pianoroll 2025-01-15 15:09:58 -07:00
Paul Davis
e4beb5c3d9 remove _note_mode property of MidiTimeAxisView and use MidiStreamView's inherited version
Note that for now, this leaves save/restore of the value to the time axis view, and doesn't alter
the fact that the MidiTrack represented by the axis view continues to have its own note mode too
2025-01-15 13:35:07 -07:00
Paul Davis
5cade315fb redraw (pianoroll) MidiView when note mode changes
This also fixes the position of the percussive mode canvas items
2025-01-15 10:34:46 -07:00
Robin Gareus
5cb6a43eae Amend previous commit (launchkey not pad) 2025-01-15 16:04:49 +01:00
Robin Gareus
c8f17ee0a5 Only build launchpad surfaces if libUSB is available 2025-01-15 16:00:28 +01:00
Robin Gareus
90755045f5 Windows multitouch tweaks
* Fix special case of first single touch. While another touch
is active, any new touch must not get the ID of the (ignored)
first touch.

* reset "last-touch" coordinate on touch-begin.
Previously it was possible that the first motion event was
ignored.

NB: This does not fix missing events when the first touch
coincides with any other finger (gesture?).
2025-01-15 03:32:17 +01:00
Robin Gareus
91fe10165e Linux/X11 grab window when emulating touch button events
The first touch moves the mouse cursor, but X motion events
for the first touch are only sent after a XGrabPointer.
2025-01-15 02:06:45 +01:00
Paul Davis
678ebca032 don't always adjust note range in a MidiView after a model change 2025-01-14 16:49:58 -07:00
Paul Davis
4e8591da99 move cut/copy/delete/paste operations into EditingContext
derived classes (Editor and Pianoroll) provide ::cut_copy() to wrap the
context-specific logic, and then both defer to MidiView for MIDI-specific
operations.

Note that this also changes several action names in ardour.keys.in
2025-01-14 15:31:53 -07:00
Paul Davis
13161a3975 refactor point-selection-changed logic "up" into EditingContext 2025-01-14 15:28:51 -07:00
Paul Davis
c15556568e revert some of the logic of control-points-inherit-line-color for selected CPs 2025-01-14 15:26:38 -07:00
Robin Gareus
f0ffee4a13 NO-OP: fix off by one in comments 2025-01-14 00:37:58 +01:00
Robin Gareus
64078909bb Fix Top-level layout (amend 26527ba608) 2025-01-14 00:23:50 +01:00
Robin Gareus
2a17746af9 Remove UTF-8 digraphs from layout ASCII art 2025-01-14 00:23:50 +01:00
Paul Davis
c0c6a93cba Pianoroll: make automation follow zoom 2025-01-13 15:28:41 -07:00
Paul Davis
74fa86ca19 add a (debug-only) to canvas control point rectangles 2025-01-13 15:28:41 -07:00
Paul Davis
3363d8e9c1 remove debug output 2025-01-13 15:28:41 -07:00
Robin Gareus
6bb3e04e94 Stack Clip properties vertically to reclaim space 2025-01-13 22:58:11 +01:00
Robin Gareus
12454f0e7b Pack monitor-section in full-height box 2025-01-13 22:46:11 +01:00
Robin Gareus
26527ba608 Update Top-Level Layout
* Right sidebar extends to the bottom
* Add additional full height right-side box for monitor-section
2025-01-13 22:45:34 +01:00
Robin Gareus
ca19b803ca content_hbox is about to be removed.. 2025-01-13 22:39:56 +01:00
luzpaz
52f3986cb6 fix typos in share/scripts directory
Found via `codespell -q 3 -S "*.pdf,*.po,./.git,*.tosc,./waf,./share/patchfiles,./libs,./msvc_extra_headers,./share/web_surfaces,*.patch" -L acount,addin,ane,ba,buss,busses,caf,capela,devine,disconnectin,discreet,doubleclick,envolution,filetest,fo,ghandi,homs,hsi,layed,maschine,mis,nd,ontop,pass-thru,removeable,retrn,ro,scrollin,sectionin,seh,siz,sord,sur,te,trough,ue,wth`
2025-01-12 21:11:16 +01:00
luzpaz
f4562a9b4c fix various typos throughout codebase
Found via `codespell -q 3 -S "*.pdf,*.po,./.git,*.tosc,./waf,./share/patchfiles,./libs,./msvc_extra_headers,./share/web_surfaces,*.patch" -L acount,addin,ane,ba,buss,busses,caf,capela,devine,disconnectin,discreet,doubleclick,envolution,filetest,fo,ghandi,homs,hsi,layed,maschine,mis,nd,ontop,pass-thru,removeable,retrn,ro,scrollin,sectionin,seh,siz,sord,sur,te,trough,ue,wth`
2025-01-12 21:08:42 +01:00
Robin Gareus
8bf9aefe10 NO-OP: whitespace 2025-01-11 02:38:22 +01:00
Ben Loftis
8415fa1df0 (backport?) more explicit text in track menu. What does 'remove' do? 2025-01-11 01:37:16 +01:00
Ben Loftis
abd3d49120 Recover mini-timeline playhead triangle 2025-01-11 01:20:11 +01:00
Ben Loftis
577d7230cd Report when tabbable attachments change, and expose the state 2025-01-11 01:15:44 +01:00
Ben Loftis
3ac035c85f Rename member variables (and unpack some items for MB) 2025-01-11 01:09:50 +01:00
Ben Loftis
8dc50ac33c When dragging a new tab, peek at the color it will be assigned 2025-01-11 01:09:44 +01:00
Ben Loftis
be74cf1c9c Use round-robin palette color for new groups 2025-01-11 00:44:35 +01:00
Ben Loftis
b9c531cf7f Allow peeking at the next round-robin color to be used 2025-01-11 00:43:59 +01:00
Ben Loftis
8899ad836e Group tab bg should be theme-able 2025-01-11 00:43:25 +01:00
Ben Loftis
08d3c4260a Add ConfigMenu icon (config gear with an arrow) 2025-01-11 00:18:48 +01:00
Ben Loftis
e93bbccd64 Fix proportion of faders on fader slots 2025-01-11 00:10:01 +01:00
Ben Loftis
5c6ebaea72 Add horizontal rulers to Audio Setup 2025-01-10 23:46:31 +01:00
Ben Loftis
a7290ee661 Application_bar must watch the ui-config to show widgets 2025-01-10 23:41:11 +01:00
Ben Loftis
45265a98ed Allow theming of ardourbutton text so it can be less severe 2025-01-10 23:40:30 +01:00
Ben Loftis
aa04c115c1 Less horizontal padding is better to my eye YMMV 2025-01-10 23:40:10 +01:00
Ben Loftis
524073d855 Use the LiveTrax tabbed session dialog 2025-01-10 23:38:56 +01:00
Robin Gareus
3bfc8c1d4d Add color theme for tab buttons (session dialog) 2025-01-10 23:38:53 +01:00
Paul Davis
d0b643b116 do not use DragManager::current_pointer_x() directly during drags
That ignores a _bounding_item and can give incorrect coordindates for the drag when
that is used (e.g. clip editor)
2025-01-10 11:17:59 -07:00
Paul Davis
e273ec06bb fix note drawing in clip editor by adding MidiView::relative_position() 2025-01-10 10:31:48 -07:00
Robin Gareus
c82afe4cdc Initialize track_output_button state when export channels are empty 2025-01-10 17:53:27 +01:00
Robin Gareus
ec0adbc1a9 Add a hint to disable "apply track/bus processing" for LT stem exports 2025-01-10 17:53:27 +01:00
Paul Davis
baef68b1e6 clean up/improve API used in 5ebf8152e 2025-01-10 09:25:03 -07:00
Paul Davis
5ebf8152ec temporal: tempo changes must be on meter-provided grid, not quarter notes 2025-01-09 22:30:17 -07:00
Paul Davis
207cd9ae5f fix temporal test runner
must abort all write_copy() map operations
2025-01-09 22:30:17 -07:00