summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-14rework locking (fa07233a, 112fba182)Robin Gareus
For now: use a single lock, which should fix all related crashes. optimize (with less contended partial locks) if this works.
2016-12-14GUI changes to allow user to specify how/if to use SMF track/instrument ↵Paul Davis
names during import
2016-12-14change ordering of options for multichannel importPaul Davis
2016-12-14temporary default value for ImportStatus.midi_track_name_sourcePaul Davis
2016-12-14use SMF track or instrument names in imported MIDI track names, if requestedPaul Davis
2016-12-14add new member to ImportStatus object to allow specifying how to name new ↵Paul Davis
MIDI tracks
2016-12-14add a new enum to identify how SMF data should be used when naming imported ↵Paul Davis
MIDI tracks
2016-12-14add API to Evoral::SMF to retrieve all track/instrument names for use when ↵Paul Davis
importing
2016-12-14extract track and instrument names from SMF while loadingPaul Davis
2016-12-14add braces and warning for unlikely errorPaul Davis
2016-12-14fix incorrect test for textual meta events in libsmfPaul Davis
2016-12-14braces pleasePaul Davis
2016-12-14braces, pleasePaul Davis
2016-12-14free track name/instrument string memory when necessaryPaul Davis
2016-12-14add track and instrument name members to smf_track_tPaul Davis
2016-12-14improving logic/flow for SMF type 1 files part 1:Paul Davis
check num tracks for type1 and offer multichannel option if appropriate
2016-12-14release locks before deleting recordRobin Gareus
2016-12-14amend prev commitRobin Gareus
2016-12-13mutex 'er upRobin Gareus
Some overzealous locking to track down RequestObject related crashes. bc0fa4d689a4 wrongly locked the current event loop's request_invalidation_lock instead of the invalidation's list lock. Also Abstract UI is able to delete requests concurrently with with EventLoop invalidation. e.g. PortManager::PortRegisteredOrUnregistered and GlobalPortMatrixWindow so the lock needs to be exposed. If this solves various issues, mutexes should to be consolidated (request_buffer_map_lock + request_invalidation_lock) and be chosen such that there is as little contention as possible.
2016-12-14test diff for patch change performance when caching colours.nick_m
2016-12-14when dragging or copying multiple regions, respect position lock style.nick_m
- music-locked regions are moved by drag beat distance (will conform to tempo changes over the drag distance) audio-locked regions are moved by frame distance.
2016-12-13changes to adapt to modified version of GTK/Quartz which uses only MOD2 for ↵Paul Davis
Command, everywhere. The default version of GTK2/Quartz uses MOD2+META for keys and MOD2 for scroll, which is basically insane
2016-12-13Further fixes to non-cxx11 enabled buildsTim Mayberry
Hopefully all that is necessary this time
2016-12-13Fix for non-cxx11 enabled buildsTim Mayberry
2016-12-13Add option to Zoom to Selection on double clickTim Mayberry
Currently implemented for Region and Range selections. The new option is false/off by default to maintain existing behaviour. I'm not sure it should require another option, perhaps Zoom to Selection should be the default and accessing the region properties dialog can be via Modifier+double click, but further changes can be made on user feedback etc. Related: #7112
2016-12-13Change Zoom to Selection action (Z key) to zoom on both axesTim Mayberry
Add Zoom to Selection (Horizontal) action to access previous behavior. Remove Editor::temporal_zoom_region as it was duplicate code and broken for both_axes Should Resolve: #7112
2016-12-13Fix layered-record undo, include changes to existing region(s)Robin Gareus
2016-12-12Fix possible crash when removing ports with jack1Robin Gareus
2016-12-12Add Slavable::AssignmentChanged signal to notify when a slavable is ↵Paul Davis
assigned/unassigned to/from a master
2016-12-12UI tweak for the spacer at the bottom of the master bus.Ben Loftis
2016-12-13only update MidiRegion length_beats in partial copy ctor if there is an offset.nick_m
2016-12-13only set the exact musical position of the primary region for move/copy drag.nick_m
2016-12-13only recalculate MidiRegion start_beats if there is an offset in the ↵nick_m
'part-of' ctor. - when drag-copying MIDI regions, a partial region ctor is used which can lead to _start_beats being off by a sample. this in turn leads to 7168 happening, but only if magnetic snap is used and the regions are copied as a group. this should fix 7168, but the magnetic snap part is not yet addressed.
2016-12-12Towards making tape-tracks work again..Robin Gareus
2016-12-12Fix a potential deadlock/crash (here tape-track peak-file)Robin Gareus
read_peaks_with_fpp() already holds _lock, build_peaks_from_scratch() takes the _lock again. Depending on glib[mm] and the threading lib it may either result in a deadlock, or with EDEADLK in undefined behavior when a non-recursive lock is released twice.
2016-12-12Fix potential deadlock on session-loadRobin Gareus
2016-12-12disallow placement of audio-locked tempi within a frame of any other.nick_m
2016-12-12sort tempo curves initially as well.nick_m
2016-12-12fix loop/crash when dragging an audio-locked tempo over a music-locked one ↵nick_m
while snapped to grid.
2016-12-12no-op - rename TempoMap::set_active_tempos -> TempoMap::set_active_tempinick_m
2016-12-12clean up some odd logic.nick_m
2016-12-12amend previous commitnick_m
2016-12-12rename MetricSection movable -> initial, but of course initial is !movable..nick_m
2016-12-11Add support for MacVST hidden/favoritesRobin Gareus
2016-12-11Add a small tool to experiment with libcanvasRobin Gareus
2016-12-11there is no need to do a full set_colors() in MidiGhostRegion ctor.nick_m
2016-12-11tempo curve fiddling.nick_m
2016-12-11go back to always interpolating framed curve points.nick_m
2016-12-11make TempoMap::dump slightly more readable.nick_m
2016-12-11fix incorrect audio-locked tempo position when setting bbt via tempo dialog.nick_m