13
0
Commit Graph

8942 Commits

Author SHA1 Message Date
nick_m
36dd7f8d9d Start line drag using canvas y coords.
- fixes #5759
2015-10-29 23:37:01 +11:00
be69dd279b rework dbf28e3 (hidden parameters) 2015-10-28 21:25:01 +01:00
ebbe96aa08 note to self: at least test compilation before git push. 2015-10-28 19:00:59 +01:00
dbf28e320c don't display hidden automation-controls. 2015-10-28 18:58:46 +01:00
0992272858 fix embedding AU/carbon UIs
the UI shows top/left (not centered, no resize) more detail work to come.
2015-10-28 14:10:49 +01:00
8d1edb13d3 Revert "potential fix for some AU plugin UIs not displaying"
This reverts commit e8fe35d96e.
2015-10-28 14:02:57 +01:00
5dd5bf0f70 notify LV2 GUIs about port-changes when loading presets 2015-10-28 04:06:14 +01:00
e8fe35d96e potential fix for some AU plugin UIs not displaying
looks like not all AU plugin GUIs redraw themselves if 
[win setAutodisplay:1] is unnot.

A user reported that some Waves plugins and Shattered Glass 32bit AUs
are blank in 4.4 on 32bit OSX.

see also 5eefdf7 and earlier AU/API changes.
2015-10-27 23:12:53 +01:00
42424eeb6c another log-scale automation fix 2015-10-27 20:54:09 +01:00
nick_m
61729f8e68 LineDrag fixes wrt initial drag position and display of y value. 2015-10-28 05:33:43 +11:00
nick_m
bf9e752b4d AutomationLine::drag_motion () returns any clamped fractions correctly. 2015-10-28 03:14:10 +11:00
nick_m
fc8b03eef5 Fix incorrectly placed control points (y-axis). fixes #6647.
- also use the return from AutomationLine::drag_motion () in
	  anticipation of it correctly reporting its clamping to
	  AutomationRangeDrag.
2015-10-28 02:46:03 +11:00
1de4ed937c fun with valgrind 2015-10-27 11:15:34 +01:00
nick_m
e78a44d4e5 Markers use the selection change stack. 2015-10-25 05:26:44 +11:00
nick_m
d48564aee5 Amend last commit. 2015-10-25 04:12:38 +11:00
nick_m
663dd1cf2c Set a larger minimum size for recent session scrollers. 2015-10-25 04:07:19 +11:00
a50af45a14 back to mjpeg (revert 2cb511e and 3f157f9) for now
There is anecdotal evidence that using mpeg4 as codec leads to issues
(xjadeo indexes and gets stuck at 99%, likely in libavcodec).

The main motivation for using mpeg4 is/was windows/VFAT 2GB file limit
and improved video quality.  This will have to be revisited.
2015-10-23 23:34:21 +02:00
076ca20321 Delete SystemExec in the main process thread. 2015-10-23 23:29:04 +02:00
nick_m
90aec831cb Relative snap for markers.
- also removes many uninitialised variable warnings in
	  editor_drag.cc found by cppcheck.
2015-10-24 04:59:57 +11:00
nick_m
c9864b71a0 ResizeNoteDrag selection click behaves as NoteDrag's does. 2015-10-24 01:19:00 +11:00
nick_m
96524d863b Clear point selection when uniquely selecting a note.
- Also fix selection undo when creating notes w/control
	  in MouseContent mode.
2015-10-24 00:07:03 +11:00
f4100dc529 mime-type definition is version independent.
File glob "*.ardour" -> application/x-ardour is defined in ardour.xml
2015-10-22 21:05:20 +02:00
nick_m
4f5ca7ecb5 Use lwrcase_dirname for desktop file names and substitutions. 2015-10-23 04:03:16 +11:00
a02ffb9eed set executable and icon name in desktop-file
Also opt for version-agnostic mime-type (file-format version
is independent of program-version and of file-extension)
2015-10-22 18:09:16 +02:00
b074ff0dd5 Remove GhostRegion::CatchDeletion signal to reduce session close times
Currently when a GhostRegion is deleted by its "parent" RegionView it emits the
static GhostRegion::CatchDeletion signal which is connected to the
RegionView::remove_ghost method of every RegionView instance.

With a static GhostRegion::CatchDeletion signal a particular test session
causes 31 Million calls of RegionView::remove_ghost on Session deletion and the
session takes 70 seconds to close with a debug build.

The lifetime of a ghost region is tied to both the TimeAxisView(TAV) and
RegionView(RV) in that when a RegionView is deleted all GhostRegion instances
associated with the RegionView should be deleted or when a TimeAxisView is
deleted all ghost regions that are contained in the view should be deleted.

This means that there needs to be notification between GhostRegion and both
classes. Instead of using a signal for this as we know there are only two
listeners and GhostRegion already holds a reference to the TimeAxisView, also
take a reference to the parent RegionView in the GhostRegion constructor and
use it to notify the RegionView when GhostRegion destructor is called so it can
drop any references it holds.

Using a direct function call in the GhostRegion destructor to notify the
TimeAxisView and RegionView "parents" brings the unload/close time down for the
test session from 70 seconds to 4.5 seconds.

The GhostRegion also references canvas items that are added to the TimeAxisView
canvas group or at least a canvas group that it manages. So when the
TimeAxisView is destroyed and the canvas group that is the parent of those
items is destroyed, the GhostRegion's canvas items will also be
deleted/destroyed by the parent canvas item/group. This means the GhostRegions
must be destroyed when the TimeAxisView they are contained in is destroyed or
there will be dangling references to canvas items that have already been
deleted and trying to delete them again will be bad.
2015-10-22 11:51:03 -04:00
nick_m
0956708aa9 Build freedesktop files if requested. 2015-10-23 02:21:01 +11:00
nick_m
72556cdd7a Amend last commit. 2015-10-23 02:14:03 +11:00
nick_m
410d4316b9 Center some windows known to be presented by ardour. 2015-10-23 01:10:56 +11:00
d04c16e927 fix edge-case: (move playhead w/o session) 2015-10-22 14:14:27 +02:00
André Nusser
2c4e79d0a0 Also use overwrite_file_dialog at all the other places. 2015-10-21 23:28:44 -04:00
André Nusser
5d50abed75 Confirmation on overwrite for track and session templates. -fixes #6587 2015-10-21 23:28:44 -04:00
nick_m
217b2c7753 More desktop file renaming. 2015-10-22 03:51:15 +11:00
nick_m
cadeb3d009 Remove old ardour3 desktop files. 2015-10-22 02:54:53 +11:00
nick_m
203931e846 Add ardour4 desktop and mime type files.
- looks like the install target for these has been removed, but
	  the existence of these may be of help to packagers.
2015-10-22 02:46:18 +11:00
nick_m
54e613746c User interaction preferences tooltips clarify button names. 2015-10-22 01:23:36 +11:00
0880a166c4 variable name change: make purpose of formerly named "_values" in LV2 plugin UI code more clear
And if this is wrong, then rename it again with the right one
2015-10-21 08:10:25 -04:00
270ec425f8 confirm LV2 GUI changes
If a parameter change is initiated by the UI, the host sends a
notifications to confirm (echo) or invalidates (replaces) the value.
(automation: touch, playback,...).

Stateless LV2 GUIs without internal data-model depend on this.
2015-10-21 01:57:16 +02:00
4953d09893 hack to keep UI responsive with heavy AU views. 2015-10-20 19:14:14 +02:00
c22a899c6d OSX copy/constraint mod tweak (amend 0675fe1) 2015-10-20 17:57:00 +02:00
47bbffc5d8 do not update LV2 output port displays unless the value has changed 2015-10-20 11:39:56 -04:00
1d4494961b add commentary 2015-10-20 11:31:18 -04:00
8533b8244f also update LV2 output port displays as part of periodic updates 2015-10-20 11:28:53 -04:00
ac008dac02 Clean up generic and LV2 plugin GUI to deal with ParameterChanged(Externally) alteration 2015-10-20 10:23:49 -04:00
7804a524dc Revert "rename ParameterChanged signal in Plugin to ParameterChangedExternally to reflect its intent, and clean up the result."
This reverts commit 336b2eb9a4.
2015-10-20 10:23:49 -04:00
336b2eb9a4 rename ParameterChanged signal in Plugin to ParameterChangedExternally to reflect its intent, and clean up the result.
The signal exists to notify listeners that something outside of the host's control (e.g. a plugin's own GUI for AU or VST)
has modified a plugin parameter. Previous code had strange feedback loops and ambiguous semantics.

Significant modification of LV2 GUI updating was required.

Still to be tested for feedback loop issues: AudioUnits
2015-10-20 09:07:58 -04:00
0675fe1627 suggest primary-mod as default for copy
fixes inconsistency on OSX.
2015-10-20 11:12:14 +02:00
André Nusser
83b5bdbe95 Ctrl+shift functionality (toggle all) for plugin leds.
The Fader led has special behavior and is only toggled when clicked
explicitly.
2015-10-19 14:36:06 -04:00
nick_m
784adc53bb Test fix for further osx modifier ambiguity. 2015-10-20 04:08:28 +11:00
nick_m
1363f4f645 Fix incorrect display of "Command" modifier on osx. 2015-10-20 03:54:44 +11:00
nick_m
ea72303474 Rc option editor - don't translate "-". 2015-10-20 03:23:06 +11:00