13
0
Commit Graph

16793 Commits

Author SHA1 Message Date
727b666c18 NOOP: reformat comment 2023-09-18 19:57:37 -06:00
5122036054 startup: fix use-after free of startup FSM object
In some startup flows, the entire loading process happens inside
StartupFSM::start(). In others, that call gets things moving but
we return from it and loading is not complete until later.

Deleting the StartupFSM while still inside the ::start() call
led to a use-after-free error. This new code will leak the StartupFSM
in some startup flows.
2023-09-18 16:27:11 -06:00
bc91ea3c42 startup: fix logic/design error that led to deep errors
The old state in this commit would lead to an existing session
being loaded with the claim that it was a new session. This went
unnoticed until 4bed642d71, where newness impacted the time
domain of the session (and actually led to it being set to a random memory
value).
2023-09-18 16:27:11 -06:00
9dd50d4536 provide an easy way to get core dumps with address sanitizer
The options to make this work are quite long and hard to remember. So just set
ASAN_COREDUMP and adev_common.sh.in will take care of it for you
2023-09-18 16:27:11 -06:00
Mads Kiilerich
f1bb18ae53 wscript: drop unused path_prefix
It is not referenced anywhere, and also not set consistently.
2023-09-17 07:34:55 -06:00
Mads Kiilerich
d220f477ed wscript: drop unused "mandatory variables" 'top' and 'out' in libs
Variables by these names are only used from the local wscript and when
running "waf configure", which already for other reasons only can run at
the top-level.

These variables are thus not mandatory and not used.
2023-09-17 07:34:55 -06:00
Mads Kiilerich
69e987909e wscript: inline top = '.' for build_i18n
'top' was a constant that was set to '.', even when inside
subdirectories. It is thus not really top.

I don't know if the intent was to use the actual top (which is available
as bld.top_dir), but for now we make it explicit what we have and do.
2023-09-17 07:34:55 -06:00
Mads Kiilerich
5d5aa61e0f wscript: drop unused gtk2_ardour wscript functions
This gets rid of an odd use of "out".
2023-09-17 07:34:55 -06:00
Mads Kiilerich
6bf9fd4ffb wscript: drop unused base_font variable 2023-09-17 07:34:55 -06:00
Mads Kiilerich
aa3f6e3a5c wscript: drop unused local VERSION variables
pyflakes correctly points out problems like:
  gtk2_ardour/wscript:537:5 local variable 'VERSION' is assigned to but never used
2023-09-17 07:34:55 -06:00
Mads Kiilerich
7737c17d52 wscript: drop unused imports, scripted
Done with ad hoc scripting hacks processing unused imports found by pyflakes:

for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Logs.* but unused' | cut -d: -f1 | while read f; do sed -i 's/^import waflib.Logs as Logs,/import/g' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i 's/import waflib.Options as Options, /import /g' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i 's/^from waflib import Options,/from waflib import/g' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep ' imported but unused$' | sed "s/^\([^:]*\):[0-9]*:[0-9]* '\(.*\)'.*/\1 \2/g" | while read f lib; do sed -i "/^import $lib$/d" $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i '/from waflib import Options$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.TaskGen.* but unused' | cut -d: -f1 | while read f; do sed -i '/from waflib import TaskGen$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Task.Task.* but unused' | cut -d: -f1 | while read f; do sed -i '/^from waflib.Task import Task$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Tools.winres.* but unused' | cut -d: -f1 | while read f; do sed -i '/^from waflib.Tools import winres$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Utils.* but unused' | cut -d: -f1 | while read f; do sed -i '/^import waflib.Utils as Utils$/d' $f; done
2023-09-17 07:34:55 -06:00
Edgar Aichinger
9aaf5d2c8c
update german translation 2023-09-17 14:20:33 +02:00
f11a5880af more thematically correct scroomer color. TODO: prelight it 2023-09-15 19:13:54 -05:00
376246f0fc markers should snap when created by context-menu 2023-09-15 19:05:23 -05:00
aaff07f2c9 editor cursors: fix position computation
The cairo 0.5 pixel offset for odd-width lines is handled by Canvas::Line and is not
needed in the EditorCursor code
2023-09-15 17:34:30 -06:00
55b862832a Stretch Markers -> Adjust Markers 2023-09-15 18:05:14 -05:00
12f02a685e tweak section-marker height so they fill the whole ruler 2023-09-15 18:04:59 -05:00
e49005d0e4 implement color themes for piano roll keyboard and text 2023-09-15 17:41:24 -05:00
53ccede4fb make piano-keyboard colors theme-able 2023-09-15 17:40:56 -05:00
6716f64032 tone down selection-rect fill 2023-09-15 17:40:32 -05:00
98f926d6f5 'midi meter' is not an appropriate alias color for a widget 2023-09-15 17:32:29 -05:00
cc0c00f807
Snap cursor for section_rect ctx menu, just like popup_ruler_menu 2023-09-15 14:49:33 +02:00
8da5d49e54
Add a checkbox for 'stretch markers' and show it when MouseGrid is active
Also, de-sensitize the checkbox if the session is AudioTime
2023-09-14 23:13:14 +02:00
b03f6d8616
Set the default ruler visibility based on the new session's time domain 2023-09-14 23:13:08 +02:00
4bed642d71
Allow user to choose the session time-domain 2023-09-14 23:13:05 +02:00
d7345d7d4d
Remove marker 'Hide' item from context menu.
It is accessible in sidebar.
In the sidebar you can both Hide and Show, so less prone to error
2023-09-14 23:12:50 +02:00
214a2a962f
Fix grid off-by one, complete removal of Playhead grid
See also 503e6249f4
2023-09-14 20:42:04 +02:00
1cc0870725 tweak scroomer colors and alpha to work better with most themes
Blueberry Milk is a problem, but cooltehno will need to take a look
2023-09-14 08:22:06 -06:00
f5d3b1c79f use new user-immediate API in GUI 2023-09-13 23:58:31 -06:00
a2656d6612 when the "draw channel" is set to auto, consider the midnam display channel
This has higher priority than the playback mask
2023-09-13 23:58:31 -06:00
31f45a488a
Add menu items to set/cycle marker click behavior 2023-09-13 20:44:07 +02:00
5644c8587e only show scroomer note names in draw/internal edit modes (if at all) 2023-09-13 11:53:18 -06:00
36f8d48e93
Add editing mode to select marker click behavior
So far this only adds actions, not a GUI dropdown or
context menu. See also f9a121ce9c
2023-09-13 03:16:24 +02:00
94b7ed8d4c partially revert 218fb. TODO: menu actions need to operate on the clicked section 2023-09-12 08:40:07 -05:00
218fbda6e7
Arrangement Ruler: overhaul context menu, do not select on RMB 2023-09-12 05:39:02 +02:00
0a316f7566
Remove GridTypePlayhead (fix -Wswitch) 2023-09-11 23:34:38 +02:00
b00b80ec7e
Mixbus: cut/copy section always pastes at playhead 2023-09-11 23:18:52 +02:00
964600b9bd
Remove tempo-map cut/copy section warning 2023-09-11 23:18:52 +02:00
d064a2ead1 keep highlighted note in correct place when scrolling 2023-09-11 14:29:03 -06:00
85375397ed fix semi-random MIDI note separator line vanishing 2023-09-11 14:04:59 -06:00
4b15f94ccf add theme color names for scroomer 2023-09-11 13:56:22 -06:00
de45fc3882 make scroomer color & opacity themeable 2023-09-11 13:52:31 -06:00
d1caa2401f the return of double-click on scroomer zooms to data-based note range 2023-09-11 13:16:27 -06:00
e52d9a41da NO-OP: whitespace/indent 2023-09-11 13:16:27 -06:00
9194dc9843 fix for incorrect text appearing in MIDNAM model selector
I do not understand why this works, but all of this code related to MIDNAM
model names is just a total mess in terms of rational design (caused, in turn,
by MIDNAM's design, which might possibly reflect the real world).
2023-09-11 13:16:27 -06:00
885fd2caff Y is the shortcut key for MouseGrid 2023-09-11 13:22:37 -05:00
25daebbaf2 remove snap-to-grid option (subsumed by SnapTarget preference) 2023-09-11 12:18:16 -05:00
082c009e1b take Snap Target preference into account when snapping with grid enabled 2023-09-11 12:18:16 -05:00
7672ea9cfe add a ui_pref to store the users Snap Target preference 2023-09-11 12:18:16 -05:00
28af3c2024 i like nullptr 2023-09-11 10:26:54 -06:00