13
0
Commit Graph

14956 Commits

Author SHA1 Message Date
8dde26da7b Gracefully avoid importing audio that somehow has 0 channels. 2014-11-18 02:55:03 -05:00
e5d9fd1aac Fix potential use of uninitialized value. 2014-11-18 02:53:28 -05:00
fed4e8446b Fix NULL pointer dereference on malformed Playlist XML. 2014-11-18 02:53:28 -05:00
afd67800b9 Avoid potential division by zero. 2014-11-18 02:53:28 -05:00
c4c7598adb Fix broken logic and possible NULL pointer dereference for Bundle XML. 2014-11-18 02:53:28 -05:00
26f6f80a53 Fix incredibly unlikely NULL pointer dereference. 2014-11-18 02:53:28 -05:00
9aec0c627d Fix Region::verify_length() so it actually does something. 2014-11-18 02:53:27 -05:00
aabde88de0 Fix incredibly unlikely NULL pointer dereference. 2014-11-18 02:53:27 -05:00
2c85e7acac Fix zoom out limiting logic to actually limit minimum zoom. 2014-11-18 02:53:27 -05:00
adea8ab68f Fix mismatched note resize drag cursor and behaviour. 2014-11-18 02:53:27 -05:00
5799cb8509 Fix edit point selector on Mixbus. 2014-11-18 02:53:27 -05:00
843551d9d8 remove cruft 2014-11-18 06:15:22 +01:00
b6db707989 amend 484e38053 2014-11-18 05:28:27 +01:00
484e380536 silence clang "dead assignment" warnings 2014-11-18 04:46:37 +01:00
37937d9c69 synchronize preferences and monitor-section 2014-11-18 03:49:20 +01:00
5e90b97c42 files should have at least one channel. 2014-11-18 02:15:07 +01:00
bd5713f009 remove cruft (monitor section knobs are cairo now) 2014-11-18 02:15:06 +01:00
f39286f92f NOOP, re-indent and remove trailing whitespace 2014-11-18 02:15:06 +01:00
f2273dc3b6 remove dead assignment 2014-11-18 02:15:06 +01:00
c194e4df18 remove superfluous if-branch (_session is checked a few lines above) 2014-11-18 02:15:06 +01:00
f7ebae85a7 Fix "maybe" rounding bug.
Introduced in d63161426f.
2014-11-17 19:53:30 -05:00
02d735ff00 waves/coreaudio PPC support 2014-11-17 09:07:39 +01:00
dc2de0126a OSX packaging:
* postfix DMG with "-dbg" if not optimized.
* strip binary and libs if optimized
2014-11-17 07:49:16 +01:00
bd46de779f check alsa midi ringbuffer 2014-11-17 06:50:48 +01:00
85cf4b4dbd Fix visibility of MIDI controller automation tracks across saves.
Fix some inaccurate/misleading comments that led to said bug.

Gracefully handle the "impossible" case where we can't figure out a state ID
for an automation track, instead of crashing.
2014-11-17 00:13:53 -05:00
c91b691260 Don't hide selected control points.
There was already code for this, but actually setting the corresponding
visibility flags seems to have been lost at some point.
2014-11-16 22:46:59 -05:00
563f5c11a6 Support cut/copy/paste of MIDI notes and controllers at the same time. 2014-11-16 22:35:45 -05:00
2fa6caad95 Support cut/copy/paste of several regions and lines at once.
The idea here is to do the reasonable thing, and copy objects of some
type (e.g. MIDI region, gain line) to tracks with a matching type.  The user
can override this with a track selection, which will be used straight-up.

Lost: ability to copy/paste lines across types, e.g. gain to pan.  This is
often questionable, but sometimes useful, so we will need to implement some
sort of "greedy mode" to make it possible.  Implementation simple, but not sure
what to do.  Perhaps this should only be possible if one automation track is
explicitly (i.e. via track selection) involved, and the types are at least
compatible-ish?
2014-11-16 22:35:45 -05:00
5393982c80 Don't add spurious points when copy/pasting automation. 2014-11-16 22:35:45 -05:00
9321aedb24 Reset repeated paste state on cut/copy. 2014-11-16 22:35:45 -05:00
b4fcdbb100 Don't add origin value to MIDI controller regions on initial insert.
This should probably hijack the same modifier as the guard points and work the
same on all automation tracks, but I did it this way to not change behaviour of
track automation where a default is much more reasonable.
2014-11-16 22:35:45 -05:00
d63161426f Add "maybe" rounding modes for rounding only if necessary. 2014-11-16 22:35:45 -05:00
fd9ccc7058 Use an enum for RoundMode instead of magic numbers.
No functional changes in this one (for easier auditing), but towards having
round up/down only if necessary modes, rather than kludging around that
situation with a double round as we do currently.
2014-11-16 22:35:45 -05:00
9c5e63bcc6 Make selected control points bright red rather than vice-versa. 2014-11-16 22:35:45 -05:00
9d4f43fa7d Make ControlList::paste const-correct. 2014-11-16 22:35:45 -05:00
8793e60af2 Use symbol for paste operation like everywhere else. 2014-11-16 22:35:45 -05:00
3f8251962f Fix crash when splitting regions in internal edit mode. 2014-11-16 22:35:45 -05:00
df40782b62 prevent segfault if in/out property is missing 2014-11-17 04:05:00 +01:00
55ce10f498 NULL pointer dereference? 2014-11-17 03:58:05 +01:00
ad739cd018 add some assert() messages.
as hints clang static analyzer "Called C++ object pointer is null"
2014-11-17 03:49:19 +01:00
47f4005dbc fix logic (and possible segfault if !editor) 2014-11-17 03:28:33 +01:00
4a17f9e941 round control-scroll offsets towards zero
fixes MCU "Locate called for negative sample position"
2014-11-15 19:41:15 +01:00
0680d0b0ee fix compilation with --no-nls 2014-11-15 19:27:17 +01:00
163dc756e5 Fix selection in automation regions (MIDI controllers).
We shouldn't have to manually drive the drag here, but if the ARV handler
returns false, the event doesn't propagate correctly for some reason and the
drag is not driven by the Editor.
2014-11-15 03:48:40 -05:00
de1ebcc149 Fix entering/editing MIDI region "automation" (controllers).
Two issues:

1) AutomationRegionView not receiving events (CC breakage).

2) Entered values must be rounded to integer for MIDI controllers.  This should
be done more generically with ParameterDescriptor for all controls (also
supporting boolean toggles and such), once ParameterDescriptor becomes more
pervasive and takes over Evoral::Parameter, but this will do for now.
2014-11-15 02:58:39 -05:00
333c776e0e Fix MIDI region keyboard editing (add key handling to canvas). 2014-11-15 02:04:28 -05:00
89a1980818 Only create MIDI regions on click when in draw mode.
It was much too easy to accidentally create MIDI regions in object mode.  If
the user isn't in draw mode anyway, then even after creating a region, they
can't put notes in it, so I don't think we've lost any discoverability here.
2014-11-15 02:03:40 -05:00
b52407043c Fix crash when copying MIDI regions with midi-copy-is-fork is on (#6002). 2014-11-14 23:53:59 -05:00
94954f852e Fix out of order event errors on save with overlapping notes.
Another consequence of fuzzy Sequence timing, but if the difference is less
than a tick this should handle things correctly.  If the difference is more
than a tick, something's wrong, and it might be okay to just bump forward
anyway, but I can't reproduce this and it could lead to corruption so I'm
leaving that case noisy.
2014-11-14 21:19:09 -05:00
31acd96384 Implement "multi-paste" for notes, regions, and automation.
The idea here is that pasting several times to the same location doesn't make
sense.  Instead, the paste is appended past the last paste, snapped to the
grid.  This make it simple to replicate a given section a number of times,
simply by copying once and pasting several times.

This behaviour only appears when successive pastes are done to the same
location (whatever the edit point is).  When the paste point changes, the
"multi-paste" state is reset.

Boots 'n cats 'n boots 'n cats.
2014-11-14 20:04:19 -05:00