Paul Davis
30a00c5e9f
Fix implementation of timecnt_t::operator==() to compare both duration and position
2021-09-25 16:49:51 -06:00
Paul Davis
43c7a39f18
Additional removal of a PropertyTemplate::call() site
2021-09-25 16:49:51 -06:00
Paul Davis
2ed1bdd243
Remove PropertyTemplate::call() and replace with code that uses ::set()
...
This makes undo/redo work correctly.
2021-09-25 16:49:51 -06:00
Paul Davis
66595ae60e
a more correct fix (partial reversion) for Drag::adjusted_time()
2021-09-25 16:49:51 -06:00
Robin Gareus
b209827d10
Lua script button to immediately record
...
For all guests who do not like keyboard shortcuts :)
2021-09-26 00:03:52 +02:00
Robin Gareus
5287bbb31e
Fix horiz meter expose
2021-09-25 00:01:23 +02:00
Robin Gareus
1c34a3dcbb
Add missing includes
2021-09-25 00:01:23 +02:00
Robin Gareus
e165e92268
Remove annoying debug message
2021-09-25 00:01:23 +02:00
Robin Gareus
e145a67ed6
Remove unused UI config (hiding-groups activation is a RC)
2021-09-25 00:01:20 +02:00
Paul Davis
3a1d8c48df
Fix implementation of Drag::adjusted_time() to behave like the pre-nutempo version
2021-09-24 15:46:11 -06:00
Paul Davis
5ee2c91864
triggerui: return to normal packing
2021-09-23 11:48:29 -06:00
Paul Davis
368e98336f
gtkmm2ext: if a CairoWidget is used in the canvas, we do not need to realize the Gtk::EventBox
...
This may be a breaking change, but seems ok from superficial testing.
2021-09-23 11:48:29 -06:00
Paul Davis
d07436b15d
canvas: much more work on table layout
2021-09-23 11:48:29 -06:00
Robin Gareus
c11fadf884
Handle missing case TriggerTrack
2021-09-20 04:41:05 +02:00
Robin Gareus
747b24f063
Change LuaWindow into an ArdourWindow
...
* remember window visibility, size and position
* Show as toggle in the window-menu (rather than show action)
* reduce specialization, use WM and ArdourWindow infrastructure
(transient parent, window-type, etc)
2021-09-20 04:26:24 +02:00
Robin Gareus
23c5793173
Remove duplicate calls to set_session
...
Windows managed as Proxy do not need direct calls to set_session().
This is already handled by WM::Manager::instance().set_session()
Also WM set_session() called it twice.
2021-09-20 04:21:21 +02:00
Robin Gareus
851fab7ec3
Print g_log messages to stdout as well
...
This handles an edge-case in case the message arrives
before the UI is up, there is still a message printed,
before Ardour crashes (e.g. when setup_windows() fails).
2021-09-20 04:16:09 +02:00
Robin Gareus
5a1201f05b
Fix duplicate libs
2021-09-19 23:39:51 +02:00
Robin Gareus
29f96ad13e
Fix cross-compile (undefined references for canvas-tests)
2021-09-19 23:38:44 +02:00
Robin Gareus
bcb9487c39
Only setup Editor tooltips once
...
ArdourUI::setup_tooltips() calls editor->setup_tooltips() already.
2021-09-19 18:51:56 +02:00
Robin Gareus
5fb54c008d
Fix shortcut display in editor tooltips #8798
...
After the editor is attached as tab to the main window,
looking up keyboard bindings using get_toplevel() no longer
works.
This uses the widget-hierarchy just like ARDOUR_UI does.
2021-09-19 18:46:06 +02:00
Robin Gareus
0b2b361b32
Dis/reconnect to session signals for each session
...
This allows to load a session from a running instance.
Prior to this change this caused a crash (_session = null)
```
#1 ARDOUR::Session::session_directory() const (this=0x0) at ../libs/ardour/ardour/session.h:257
#2 EditorSources::populate_row(Gtk::TreeRow, boost::shared_ptr<ARDOUR::Region>) (this=0x555559836900, row=..., region=...) at ../gtk2_ardour/editor_sources.cc:433
#3 EditorSources::regions_changed
[ .. signal propagation ..]
#20 ARDOUR::Region::send_change
#21 PBD::Stateful::resume_property_changes
#22 ARDOUR::AudioRegion::_set_state
#23 ARDOUR::AudioRegion::set_state
#24 ARDOUR::RegionFactory::create
#25 ARDOUR::Session::XMLAudioRegionFactory
#27 ARDOUR::Session::load_regions
#28 ARDOUR::Session::set_state
#29 ARDOUR::Session::post_engine_init
#30 ARDOUR::Session::Session
#31 ARDOUR_UI::load_session_stage_two
#32 ARDOUR_UI::load_session
#33 ARDOUR_UI::open_recent_session
```
2021-09-19 04:56:13 +02:00
John Emmas
666e62076c
Part 2: Complete the changes needed to make 'boost::intrusive::list' work with MSVC
...
It turned out that 'boost::intrusive::list_base_hook<>' won't compile if its parent class is declared using '__declspec(dllexport)' - so rather than exporting each entire class, let's use the alternative approach and export the various class members individually.
2021-09-18 13:40:22 +01:00
Paul Davis
47f7958714
canvastable: remove unused vars; rename others
2021-09-17 14:36:09 -06:00
Paul Davis
44b1cea54a
canvastable: minor optimization
2021-09-17 12:53:16 -06:00
Paul Davis
59c8b99fee
canvastable: remove rows/cols members, reuse ::compute() for ::size_request()
2021-09-17 12:51:26 -06:00
Paul Davis
98e0ad901a
canvas: significant design changes and implementation fixes for Table
2021-09-17 12:34:13 -06:00
Robin Gareus
e5599d1c85
Fix div/zero, allow switching backends
...
This is another attempt replacing 1288262ca7 ,
which performs better.
2021-09-15 17:52:59 +02:00
Robin Gareus
cb81b06a5d
Revert "Fix div/zero, allow switching backends"
...
This reverts commit 1288262ca7 .
2021-09-15 17:52:53 +02:00
John Emmas
840e63e6b2
Prefer tags for 'boost::intrusive::list' rather than list_member_hook<>
...
list_member_hook<> is very troublesome in MSVC and is known to cause problems in other compilers when used inside a class which has a virtual base class.
2021-09-15 09:28:54 +01:00
Paul Davis
999fe54ab8
canvas: a few variable cleanups in Table and more use of for (auto ..)
2021-09-14 22:39:59 -06:00
Paul Davis
6aaba192a0
canvas: improve computation of Table bounding box
2021-09-14 21:39:24 -06:00
Paul Davis
0878894c59
triggerbox: set bg color for packing table in trigger UI
2021-09-14 21:38:48 -06:00
Paul Davis
b3854c2e92
canvas: just use stack and size counter instead of std::vector<>
2021-09-14 21:22:56 -06:00
Paul Davis
9925147aae
triggerbox: follow UI changes to Table::attach()
2021-09-14 21:18:44 -06:00
Paul Davis
1c42c733f7
canvas: remove use of Table::Index from API of Table::attach()
2021-09-14 21:18:44 -06:00
Paul Davis
c952c57a99
canvas: actually follow CSS conventions for 1/2/3/4 arguments in padding
2021-09-14 21:18:44 -06:00
Robin Gareus
5eee8bf1a3
Allow to change process graph while auditioning
...
This fixes an issue with adding/removing tracks while auditioning.
Session::remove_routes() calls Graph::clear_other_chain(),
which will block until the graph chains have been swapped.
2021-09-15 04:03:18 +02:00
Paul Davis
5816ca31b8
triggerbox: add some padding around button elements (mostly just testing)
2021-09-14 18:50:01 -06:00
Paul Davis
473ef54614
canvas: fix initialization of FourDirections object
2021-09-14 18:49:41 -06:00
Paul Davis
9e60fb92c2
triggerbox: mark GUI buttons for expansion
2021-09-14 18:43:18 -06:00
Paul Davis
d6208eabd8
canvas: fix handling of expanding items in table layout
2021-09-14 18:42:59 -06:00
Paul Davis
932ae71cbb
triggerbox: use correct table coords to position things
2021-09-14 18:29:39 -06:00
Paul Davis
5def36f780
canvas: somewhat functional homogenous table layout
2021-09-14 18:29:39 -06:00
Paul Davis
d71fcf1955
canvas: add Table debug bit
2021-09-14 18:29:39 -06:00
Paul Davis
46586f3a9d
triggerbox: switch GUI packer from ConstraintPacker to Table (non-functional test platform)
2021-09-14 18:29:39 -06:00
Paul Davis
f05bb4afab
canvas: new type, to centralize CSS-style padding/spacing initialization (but only used by Table so far)
2021-09-14 18:29:39 -06:00
Paul Davis
c5fcdc1119
canvas: more work on table layout, still incomplete
2021-09-14 18:29:39 -06:00
Robin Gareus
3195fb720a
Fix latency signal emission sequence when using JACK
...
Capture latency needs to be updated before playback latency,
various internal parts depend on this order (which is also
the default for libjack itself).
2021-09-14 22:03:51 +02:00
Robin Gareus
bc4eb334d9
Align printed port/latencies in debug script output
2021-09-14 21:39:54 +02:00