13
0
Commit Graph

18864 Commits

Author SHA1 Message Date
3cf8cb3c3e fix call to consolidate image cache to use the information held in the request 2015-06-19 08:29:05 -04:00
9f0012aaaa various tweaks to the height/sizing of audioregion views and their waveforms 2015-06-19 08:15:25 -04:00
8491a015e3 stop pixel jitter when changing waveview height.
To avoid pixel jitter, the top and bottom of each line in the waveview must be computed together in a single computation,
rather than independently.

Also, remove various height corrections and cairo translations that are not necessary or relevant anymore. A subsequent
commit for the GUI will pick up on this work to get the appearance completely correct
2015-06-19 08:14:02 -04:00
1043357cc9 attempt to correctly respond to changes in _amplitude_above_axis in ArdourCanvas::WaveView 2015-06-19 08:10:45 -04:00
2ec9151170 fix compiler const-cast warning 2015-06-19 08:10:35 -04:00
a1932c7feb Correctly re-start an iteration (if we delete one of the items being iterated) 2015-06-19 12:55:38 +01:00
nick_m
aa1cdd26ca AudioRegionView now uses ControlList::editor_add(). 2015-06-19 05:02:06 +10:00
nick_m
1768e9817e Fix another LineDrag click crash. 2015-06-19 03:39:51 +10:00
nick_m
dcd3e3823c Don't begin command on start_grab for AutomationRangeDrag and NoteResizeDrag
- fixes a crash when clicking to resize without movement.
	- minor readability fix for _drag_had_movement
2015-06-19 00:02:09 +10:00
14f3d8005e Rename 'insert_time_dialog.cc/.h' (in our MSVC project) 2015-06-18 09:22:34 +01:00
nick_m
6ecbeed8e8 Fix ControlList::editor_add () wrt guard points. 2015-06-18 10:03:18 +10:00
nick_m
16109ebcc8 Rework last commit, clicking on an automation line no longer adds history.
- fixes a crash when clicking on automation lines repeatedly.
2015-06-18 06:27:37 +10:00
e9bf6deb26 update system-wide config 2015-06-17 21:08:28 +02:00
b6b2253da1 skip username metadata when dumping default cfg 2015-06-17 21:08:28 +02:00
nick_m
0280989276 Single control points can now be dragged up and down properly.
- preserves the zero notch, but doesn't mess up the cumulative drag.
2015-06-18 04:42:30 +10:00
nick_m
639750f815 Don't add history by clicking a control point, fix control point selection.
- also make set_selected_control_point_from_click () return
	  something useful.
2015-06-18 03:48:39 +10:00
c41d51e80c Accept changes to Insert/Remove time clocks without <Enter>
Pass 'true' to accept_on_focus_out of AudioClock, so that editing the
insert/remove time clock and then clicking elsewhere without hitting
<Enter> first doesn't mysteriously set the time back to 00:00:00.000.
2015-06-17 17:15:21 +01:00
3cb2f25d89 Add 'accept on focus out' parameter (default false) to AudioClock
If this parameter is passed as 'true', then edits to the clock will be
accepted when the user clicks away from the clock, rather than
unconditionally discarded as hitherto.
2015-06-17 17:15:21 +01:00
b56bb944f6 Rename 'Cut time' to 'Remove time'
'Cut time' implies that the cut timeline items might end up on the
clipboard to be pasted somewhere: this isn't the case at present, so rename
the functions, class, &c. to say 'remove' rather than 'cut'.

Rename insert_time_dialog.{cc|h} to insert_remove_time_dialog while we're
at it.
2015-06-17 17:15:21 +01:00
721608aef3 Update 'Cut time' to match 'Insert time', and fix cut-time moving range markers
Add options to move glued & locked markers to Editor::cut_time(), in line
with the insert_time() implementation.

Fix up the order in which operations apply to range marker start & end
points, to avoid problems when a range which lies after the cut point is
shorter than the length of the cut.
2015-06-17 17:15:21 +01:00
e234e98f13 Use 'Insert time' dialogue for 'Cut time' too. 2015-06-17 17:15:21 +01:00
0d21c15375 Make 'Insert time' dialogue do for 'Cut time' too
Add a bool cut parameter to InsertTimeDialog's constructor, so it can
do double duty as 'Cut time'. The class probably ought to be renamed too.
2015-06-17 17:15:21 +01:00
292f704b30 Insert time: don't unlock markers we're not going to move anyway
Move checking for locked markers in Editor::insert_time() so it doesn't
happen if we're going to skip the marker because it's glued to musical
time.
2015-06-17 17:15:21 +01:00
34e1e00f8b Insert time: fix moving of range markers
When inserting time and moving a range marker, move its end first, before
moving its start, so that if the time being inserted is greater than the
length of the range, we don't try to set its start to after its end.
2015-06-17 17:15:21 +01:00
nick_m
80090f0f71 Fix thinko in automation write undo.
- also allow saved automation list state to be touch or off if
	  actually in write mode.
2015-06-17 22:19:21 +10:00
d059bdb40c fix 1024px width layout (remove nudge clock special case)
Due to some change somewhere along the road the nudge clock does
no longer fit in the transport-bar on 1024px screen with 100% font-scale,
even if the 2nd clock is hidden.

However, these days it does fit nicely on its default position even
with wide-editor-mixer on a 1024px screen.
2015-06-17 02:20:02 +02:00
nick_m
44790ebff0 More _reversible_command() auditing in the gui.
- try to keep begin/commit pairs in the same file where possible.
2015-06-17 09:54:23 +10:00
nick_m
d019ee836c Use a better pattern to avoid abort_reversible_command().
- also, duplicated regoins are now selected and some end-of sesion
	  bugs fixed there.
	- should fix lack of tempomap undo in Editor::insert_time ()
2015-06-17 09:54:23 +10:00
nick_m
4c1d79af4a Unbreak region brush drag wrt undo, avoid some dangling commands in the gui
- also allow moving of automation lines in internal mouse mode.
	- this is also a first pass at ensuring that if an operation does
	  nothing, avoid an undo entry.
2015-06-17 09:54:22 +10:00
nick_m
15336d06e4 Add undo for automation write. 2015-06-17 09:54:22 +10:00
nick_m
15819f0896 Automation -use editor_add in gui, record straight lines with fewer points.
- don't keep setting/unsetting write pass when transport frame
	  remains the same (think larger jack buffer sizes)
	- insert guards are now 64 frames after when.
	- refactor previous approach.
2015-06-17 09:54:22 +10:00
nick_m
7cb9dbb8af Rudimentary automation touch undo/redo. 2015-06-17 09:54:22 +10:00
nick_m
57ce447fd1 Fix some workflow problems wrt automation.
- clearing automation points sets control to "off" rather than touch.
	- multiple touches on the same pass acts consistently (no more
	  fader jumps on mouse button press
	- use actual value for initial point rather than some arbitrary
	  default. clarify new semantics of add () (with_default->with_initial).
	- clean some whitespace
	- add guard points as needed in stop.
	- catch grab broken signal (i can't trigger it, but the docs seem
	  to think it is essential).
2015-06-17 09:54:22 +10:00
9d4c93aca7 -Wsign-compare 2015-06-16 19:27:22 +02:00
90220998af add Record-Safe feature to libardour (from Nikolay Polyanovskii) 2015-06-16 08:44:03 -04:00
d65f03d074 fixes for canvas text display on Retina (from Valeriy) 2015-06-16 07:52:00 -04:00
3f157f961a use mpeg4 for internal video format (not mjpeg)
reduces file size.
xjadeo > 0.8 and harvid >= 0.8 handle this fine.
2015-06-16 00:47:53 +02:00
dc2030cfd7 ALSA backend: add support for half-duplex devices 2015-06-14 22:26:06 +02:00
acd95215a4 allow to scan for half-duplex ALSA devices 2015-06-14 22:26:06 +02:00
94c146c780 prepare ALSA backend for half-duplex 2015-06-14 22:26:06 +02:00
573ec69a9a probe buffersize if jackd is already running. 2015-06-14 18:10:31 +02:00
b86a8edcff NOOP, reindent code. 2015-06-13 22:05:29 +02:00
c8e16998bf fix crash on OSX displaying MIDI sysex, or similar text. 2015-06-13 22:04:31 +02:00
cc543280d9 We were 2 more debug "bits" away from overflow, so recast PBD::DEBUG mechanism away from a 64bit integer and toward std::bitset.
Clean up a few minor related PBD::DEBUG issues along the way
2015-06-12 18:14:09 -04:00
10643779b6 more refactoring of WaveView threaded code to try to get to heart of crash bug 2015-06-11 17:04:08 -04:00
077e625734 don't queue a callback with the idle event for waveview image generation if one is already queued.
Also, hold relevant lock when waking image rendering thread.
2015-06-11 13:35:01 -04:00
ceb3c38090 comment tweak 2015-06-11 13:35:01 -04:00
97de6efe5d fix transport loop sub-state events
Loading a session with a loop-range, or setting
a loop-range adds LoopDeclick events.
Normal play back (no loop) never processes/clears the events.
Ardour was constantly doing split cycles for nothing.

This lead to stuck midi-notes: Split cycle calls
increment_global_port_buffer_offset() but the midi_diskstream
itself was not aware of any loop positions or offsets.

Entering loop playback adds those events explicitly
in Session::set_play_loop(). auto_loop_changed() only
needs to add/replace session-events when actively looping.
2015-06-11 15:08:22 +02:00
753d1ac392 possible fix for crashes related to vanishing waveviews (and if it doesn't fix anything, it is still more correct than it was) 2015-06-10 22:26:58 -04:00
59dc0881fb remove left-over debugging code 2015-06-10 22:04:20 -04:00