summaryrefslogtreecommitdiff
path: root/gtk2_ardour
AgeCommit message (Collapse)Author
2020-03-22fix small error in GUI dimensions stemming from removal of tape tracksPaul Davis
THe original determinant of width was: double const width = ((at->mode() == Destructive) ? 2 : 0); the conditional is always false now, so the width is a constant (zero)
2020-03-21Pan: consolidate what_can_be_automated APIRobin Gareus
2020-03-21Pan: remove/consolidate parameter-descriptorRobin Gareus
2020-03-21Panner GUI: fix detent in centerRobin Gareus
Previously the dead-zone was too small (1/360). The mono/balance panner GUI has a throw of 180 deg L<>R. Also snapping to center didn't allow to smoothly move out of the center. The accumulated_delta as directly applied. This caused jumps by 4.5. degrees. This commit reduces the deadzone to 1 degree of the azimuth around the center.
2020-03-19Remove Audio+MIDI track, and consolidate route creation methodsRobin Gareus
Audio+MIDI tracks were just MIDI tracks with an additional audio input, and do not directly allow use of vocoders (an instrument is loaded by default). For pitch-correction or similar use-cases one would prefer an audio-track (main data) with MIDI only being used as control-input. Ardour 5/6 pin-connections and side-chain offer a much nicer workflow for this setup. Alternatively one can get those tracks-types by manually adding an input port to an existing track, and creating a custom template.
2020-03-18Fix wine-VST buildRobin Gareus
2020-03-18Hide hidden Controls in GUIRobin Gareus
2020-03-17warn user about destructive/tape tracksPaul Davis
2020-03-17remove reference to ImportAsTapeTracksPaul Davis
2020-03-17remove destructive/tape mode tracksPaul Davis
2020-03-17Prevent adding routes in read-only sessionsRobin Gareus
"AddTrackBus" is a rec_sensitive and write_sensitive action. However the mixer bypasses this and unconditionally calls ARDOUR_UI::instance()->add_route () in various cases (right-click on blank space or scroller, left-click on "Add" buttons in the VCA pane, route pane, etc). Since those are direct events, not related actions, they need to be explicitly ignored. Ideally the "+" buttons would be made insensitive...
2020-03-17LV2: Implement ui:requestValue featureDavid Robillard
2020-03-15NO-OP: cleanup includesRobin Gareus
2020-03-14Update GUI: freeze operation error/warningsRobin Gareus
2020-03-14Show latency display/config button for in all plugin UIsRobin Gareus
2020-03-13somewhat convoluted reworking to get TransportMastersWidget's per-row port ↵Paul Davis
combos to update for hotplug This approach should extended to other things, notably control surfaces
2020-03-12Fix setting automation state for Aux-sendsRobin Gareus
When switching the Mixer to show sends, using _amp as intermediate for automation is not correct. The control is not owned by the amp. The same is true for VCAs, prefer the control (see 8400ebd175e0)
2020-03-11audio clocks that are not editable are not focusable eitherPaul Davis
2020-03-11Prevent stuck VCA buttonRobin Gareus
This is for Mixbus, which always shows the VCA button regardless of VCAs being present in the session.
2020-03-10remove debug outputPaul Davis
2020-03-10small improvements to Transport Masters dialog (in preferences and elsewhere)Paul Davis
2020-03-08Replace strftime() with Glib::DateTime() -- GUIRobin Gareus
This is mainly for windows compatibility "%F" is not supported. An alternative would be to s/%F/%Y-%m-%d/ to produce the ISO date.
2020-03-07Iniialize uninitialized variableRobin Gareus
2020-03-06fix startupFSM handling of a ShouldLoad signalPaul Davis
This currently only handles initial session load by dbl-click on a session file. It also does not work if the user or new or subject to a pre-release warning. These last two restrictions may remain in place, although if a person's first exposure to the program is "copy my session, download program, dbl-click on the session file", then that's not so nice
2020-03-06fix apple/clang warningPaul Davis
2020-03-06fix (potentially serious) typo that confused comparison with assignmentPaul Davis
2020-03-06Remove debug outputRobin Gareus
2020-03-06Fix realtime export checkbox consistencyRobin Gareus
2020-03-06Remove region-output export (GUI)Robin Gareus
This use-case is better served via stem-export. This export mode never worked correctly when latent plugins are present on the track. or when realtime export was chosen. This used to call track.export_stuff() -> bounce_process() periodically in small chunks from freewheeling callback, which is no longer functional.
2020-03-05move more or less all responsibility for ShouldLoad (macOS, NSM) back into ↵Paul Davis
ARDOUR_UI
2020-03-03Fix odd right click crash on master track.Todd Naugle
To reproduce. Launch, right click in ruler area then drag down until over the master track and let go. #0 0x0000555555ba1d44 in boost::shared_ptr<ARDOUR::Route>::get() const (this=0x8) at /usr/include/boost/smart_ptr/shared_ptr.hpp:748 #1 0x0000555555ba0a2f in boost::dynamic_pointer_cast<ARDOUR::Track, ARDOUR::Route>(boost::shared_ptr<ARDOUR::Route> const&) (r=...) at /usr/include/boost/smart_ptr/shared_ptr.hpp:904 #2 0x000055555650b92b in RouteUI::track() const (this=0x0) at ../gtk2_ardour/route_ui.cc:1885 #3 0x0000555555d0b92f in Editor::popup_track_context_menu(int, int, ItemType, bool) (this= 0x555557a3efd0, button=1, time=600214966, item_type=StreamItem, with_selection=false) at ../gtk2_ardour/editor.cc:1595 #4 0x0000555555e1a4cf in Editor::button_release_handler(ArdourCanvas::Item*, _GdkEvent*, ItemType) (this=0x555557a3efd0, item= 0x555557b2fe00, event=0x7fffffffc310, item_type=StreamItem) at ../gtk2_ardour/editor_mouse.cc:1543 ....
2020-03-02Micro-optimization: only recreate polarity buttons as neededRobin Gareus
2020-03-02Improve RouteUI API consistencyRobin Gareus
This is an effective NO-OP * Some methods have been re-named to improve consistency * Duplicate function calls were removed: RouteUI::set_route() already updates mute/solo MixerStrip does not have to update it again * virtual methods have been protected
2020-03-02Fix polarity invert buttons (amend d6315618da)Robin Gareus
ConfigurationChanged() is emitted after processors have been reconfigured (e.g adding/removing a plugin). The button state needs to be updated after setup. Bfore d6315618da this worked because _route->io_changed() is emitted before the processors are re-configured, and phase_control()->Changed() triggered an update after that. PS. The motivation for d6315618da are Mixbusses. They have no input channels, but a Return processor before the polarity processor.
2020-03-02Fix UI insert/send renamingRobin Gareus
This fixes an issue when trying to rename a send or insert to the current name (no-rename). ::rename_processor() checks if io_name_is_legal(), Since the current name is already in use, a numeric-suffix was added.
2020-03-01unfinished fix for handling desktop/NSM specifying session to loadPaul Davis
More work needed to fix requirement in StartupFSM that ::load_from_application_api() is called before ::start()
2020-03-01Fix Luadoc build (follow up 2e9ac80e9, 5794d21a)Robin Gareus
2020-02-29no pre-release warning dialog if beyond pre0Paul Davis
2020-02-28Display recent session-load errors in the GUIRobin Gareus
Dumping errors to stderr only is not very useful. Particularly not on Windows and MacOS. Even though a user may not be able to address the issue, this can lead to better reports vs just printing "corrupt state".
2020-02-28Restore visible automation lanes (#7914)Robin Gareus
On session re-load only automation lanes with events were displayed, regardless of visibility state. This allowed for inconsistent state (menu showed them as visible even if they were not).
2020-02-28Fix duplicate control-ID when copying processors or proc stateRobin Gareus
Ideally we'd use a "retain ID when present", so that GUI object state of automation lanes and inline controls will be retained.
2020-02-27Dialog default to cancel (#7915)Robin Gareus
There are various ways to cancel a dialog. Only checking for RESPONSE_CANCEL is not sufficient. e.g. Esc causes a delete-event. * Gtk::RESPONSE_CLOSE * Gtk::RESPONSE_REJECT * Gtk::RESPONSE_DELETE_EVENT * Gtk::RESPONSE_CANCEL * Gtk::RESPONSE_NO Among others this fixes "Clicking session > open, then hitting ESC opens the currently selected folder and session"
2020-02-27Punch/Loop GUI control sensitivityRobin Gareus
2020-02-26And removing even more unused forward declarations.André Nusser
2020-02-25Cleanup SourceList: remove unused copy/pasted region-list codeRobin Gareus
2020-02-25NO-OP: whitespaceRobin Gareus
2020-02-25SourceList: Drop references as requestedRobin Gareus
2020-02-25Clear import-status shared-ptr<> after useRobin Gareus
Previously "Sequence files" set import_status.track and never reset() the shared pointer. This resulted in various follow up issues.
2020-02-24Remove GUI thread x-run reset on engine re-startRobin Gareus
This has been superseded by the previous commit, doing this independently from the GTK GUI.
2020-02-24Always set the natural position timestamp when importing audio files.Todd Naugle
If the file has a timestamp, it should be set in the region during import. This keeps the BWF timestamp from being lost and allows the region context menu item "Move to original Position" to work. It does not affect where the region will be positioned during import. That still follows the import dialog menu selection (playhead, session start, etc). It just maintains data that the user can decided to use if needed. This change also allows files to be imported to the source list and then later placed on the timeline in the correct timestamped position.