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.
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.
- 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.
- 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.
- 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).
Call update_config() after selecting/deselecting all tracks/busses so that
the warning about 'No channels have been selected' is shown/hidden
appropriately.
Now that there are 'select all tracks/busses' buttons, it makes sense to me
that stem export should start off with no routes selected, rather than all.
Maybe stem export should by default select routes that are selected in the
editor, but that's a task for another time.
The exported file is silent, when choosing to export either region contents or
track outputs, so there seems no point in making such routes available for stem
export at all.
Perhaps there's an arguable use case for enabling stem export of inactive
tracks, but I can't see that it's worth worrying about for now.
switching to Grab should show the fade handles...
...switching away from grab should hide them.
Also, change "always show gain" preference to show lines, but not control points.
Some refactoring was necessary to avoid code duplication
Restoring of device state for input and output devices still doesn't work
correctly. I'm not quite sure what the issue is at this stage.
We need to be able to set an environment variable *before* gtk_init() is called, but also to
load the color theme right after gtk_init() and before the rest of the GUI is created.
The dialog would be created twice, once because the user hit enter etc. to indicate they were done editing,
and once because focus left the name text entry, also indicate the end of editing. We now note that we're
already processing the end of a name edit, and do nothing in that case
Visibility is driven by the currently selected mouse mode.
Visibility no longer depends on entering/exiting the region.
Range mode shows the lines but not the points.
Fixed option text to reflect new operation.
- Many changes to the "User Interaction" pane wrt key modifiers.
- Snap is now relative by default (override to absolute with the
"Snap to absolute using:" modifier).
- Midi notes now obey both snap modifiers (disable snap and absolute snap)
- Timefx drag now selects the primary region (less user confusion).
- Includes MIDI event id fix.
- its now possible to use snap modifiers in combination with others
afaict this hasn't worked for some time.
- use "contains" rather than "equals" during drag. Still uncertain
about this wrt beginning a drag. for now they are all "equals".
- probably solve the "snap modifier modifier" problem using
ArdourKeyboard::indicates_snap () and friend.
- Also makes "Mod4" Appear as "Windows" and adds new combination
"Alt-Windows" to the dropdown.
- Attempt to set a pair of default snap modifiers (without
knowing what it actually is for OSX)
- Copy modifier now saves
- Snap modifier modifier problem still remains.
- Copy modifier still doesn't save
- Testers please edit the Extra section of ~/.ardourN/config to allow
defaults to "take"
- Note that the current defaults overlap.
- warning - absolute snap modifier has no default and will be always
"on" unless you set it!
Note that no defaults are set - go to prefs->user interaction to
ensure that nothing is set to "no modifer"
also - the copy modifier doesn't actually save its state yet.
- user can abs/rel modifier key in prefs->user interaction
suggested for linux - absolute->alt ignore snap->alt-shift
- Constrained mode works the same as button 2 drag (initial move
sets constraint axis).
Button 2 drag now is constrained to initial move axis, removing
all modifiers from this op.
Remove Jump after trim mode.
TrimDrag now has:
Primary for trim anchored to fade.
Secondary for contents trim (as before)
Primary & Tertiary for "non overlap" trim
All drags have Tertiary for relative snap
Currently we don't do anything special on layering prefs change
(relayer only occurs when each playlist is first edited). The idea here is
that "undo" is still available to restore previous layering in case of any
surprises.
Note that on those platforms the application name
is a full path. This is permitted by the specs:
“executable_name MUST be the executable name that the program was launched with. For C programs, this is simply the value of argv[0]” [http://non.tuxfamily.org/nsm/API.html#n:1.2.1.1.]
but the current implementation of nsm expects the basename
only and searched $PATH.
1) Disambiguate 1.0 to GAIN_COEFF_UNITY, and 0.0 to GAIN_COEFF_ZERO
2) Add GAIN_COEFF_SMALL which replaces SMALL_SIGNAL (-140dB)
3) GAIN_COEFF_SMALL can used to avoid interpolating towards -inf on a db scale
4) GAIN_COEFF_SMALL is used to detect very small (denormal?) gains and memset to zero
The mp4 file format supports chapter marks using the so called
mp4chaps format to enable chapter wise navigation in an mp4 file. The
format is like
hh:mm:ss.sss Chapter Title
This commit adds the ability to export those kind of chapter marks
along with TOC and CUE marks. The filename extension for the chapter
mark file is "chapters.txt". The format specification description is
"MP4ch".
Change ruler context actions from "Make Loop range" to "New Loop range"
change ruler context actions from "Make Punch range" to "New Loop range"
This to make it consistent with other ruler context actions eg. "New....."
Copy the 'Cut time' code from Mixbus, making a few obvious fixes to work in
A3 (e.g. nframes_t => framepos_t / framecnt_t).
Seems to work to move & remove markers, tempo & meter markers, and regions on
selected tracks.
Still TODO:
- use existing A3 'Insert time' dialogue
- make it respect 'No selection = all tracks'
- rename the command to something like 'Remove time' or 'Delete time': 'Cut'
sounds to me as if the removed range should end up on the clipboard ready
to be pasted somewhere, which of course it doesn't.
For some reason we don't understand 'push_state_to_backend()' can interfere with hiding the dialog (causing a partially hidden dialog to remain on screen). It's most likely a timing issue with the Windows version of GTK. Fortunately, reversing the calling order seems to fix it - BUT...
If there's no session loaded yet, the user can be left with a very long wait while nothing seems to be happening. The next thing the user would normally see would be the splash image. So let's display it slightly early (so the user can at least see that something's happening).
Sadly, it's all very kludgy - but a lot better than what we had before... :)