From a77ac7107fe7f86e37cbec1c4979c63462ef0f76 Mon Sep 17 00:00:00 2001 From: Remi Thebault Date: Sun, 9 Jan 2022 23:30:39 +0100 Subject: [PATCH] fix websockets toggle_roll Also fix BasicUI::toggle_roll who is supposed to do the same as spacebar but doesn't. --- libs/surfaces/control_protocol/basic_ui.cc | 4 ++-- libs/surfaces/control_protocol/control_protocol/basic_ui.h | 2 +- libs/surfaces/websockets/transport.cc | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/surfaces/control_protocol/basic_ui.cc b/libs/surfaces/control_protocol/basic_ui.cc index 2d8fe554e4..06603b4730 100644 --- a/libs/surfaces/control_protocol/basic_ui.cc +++ b/libs/surfaces/control_protocol/basic_ui.cc @@ -623,7 +623,7 @@ BasicUI::toggle_click () } void -BasicUI::toggle_roll (bool roll_out_of_bounded_mode) +BasicUI::toggle_roll (bool with_abort, bool roll_out_of_bounded_mode) { /* TO BE KEPT IN SYNC WITH ARDOUR_UI::toggle_roll() */ @@ -672,7 +672,7 @@ BasicUI::toggle_roll (bool roll_out_of_bounded_mode) } } else { - session->request_stop (true, true); + session->request_stop (with_abort, true); } } else { /* not rolling */ diff --git a/libs/surfaces/control_protocol/control_protocol/basic_ui.h b/libs/surfaces/control_protocol/control_protocol/basic_ui.h index 07f9cd84d9..e9d0e422ce 100644 --- a/libs/surfaces/control_protocol/control_protocol/basic_ui.h +++ b/libs/surfaces/control_protocol/control_protocol/basic_ui.h @@ -108,7 +108,7 @@ class LIBCONTROLCP_API BasicUI { void quick_snapshot_stay (); void quick_snapshot_switch (); - void toggle_roll(bool roll_out_of_bounded_mode=true); //this provides the same operation as the "spacebar", it's a lot smarter than "play". + void toggle_roll(bool with_abort, bool roll_out_of_bounded_mode); //this provides the same operation as the "spacebar", it's a lot smarter than "play". void stop_forget(); diff --git a/libs/surfaces/websockets/transport.cc b/libs/surfaces/websockets/transport.cc index 6d786bd3f9..474bf77db8 100644 --- a/libs/surfaces/websockets/transport.cc +++ b/libs/surfaces/websockets/transport.cc @@ -75,7 +75,7 @@ ArdourTransport::set_roll (bool value) { if ((value && !roll ()) || (!value && roll ())) { // this call is equivalent to hitting the spacebar - basic_ui ().toggle_roll (false); + basic_ui ().toggle_roll (false, false); } }