Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
- right click on a note selects it if unselected or selection empty.
- note_context_menu is shown as described in #6348
|
|
|
|
|
|
This fixes an issues where Ardour never completes to flush the GUI event
queue due to rapid updates for meters and similar events.
ARDOUR_UI::load_session() never returned and the complete session
ran inside Gtkmm2ext::UI::flush_pending(), this later causes a crash
at exit.
as side effect, this also speeds up session load.
|
|
|
|
|
|
- removes the need for 'pixel hunting' wrt NAME_HIGHLIGHT_SIZE.
- new control points generated by clicking on a line are placed
where the verbose canvas cursor says they are.
|
|
- fixes #6658
- also leaves undo history alone if point trim does nothing.
|
|
|
|
- fixes #5759
|
|
|
|
|
|
|
|
the UI shows top/left (not centered, no resize) more detail work to come.
|
|
This reverts commit e8fe35d96ed13f3df0e2f03e2f347e908064a31d.
|
|
|
|
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.
|
|
|
|
|
|
|
|
- also use the return from AutomationLine::drag_motion () in
anticipation of it correctly reporting its clamping to
AutomationRangeDrag.
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
- also removes many uninitialised variable warnings in
editor_drag.cc found by cppcheck.
|
|
|
|
- Also fix selection undo when creating notes w/control
in MouseContent mode.
|
|
File glob "*.ardour" -> application/x-ardour is defined in ardour.xml
|
|
|
|
Also opt for version-agnostic mime-type (file-format version
is independent of program-version and of file-extension)
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- looks like the install target for these has been removed, but
the existence of these may be of help to packagers.
|
|
|
|
UI code more clear
And if this is wrong, then rename it again with the right one
|
|
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.
|
|
|