summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/editor_canvas.cc4
-rw-r--r--gtk2_ardour/rc_option_editor.cc13
-rw-r--r--gtk2_ardour/ui_config_vars.h1
3 files changed, 16 insertions, 2 deletions
diff --git a/gtk2_ardour/editor_canvas.cc b/gtk2_ardour/editor_canvas.cc
index 43b97a36f7..565dbf0b78 100644
--- a/gtk2_ardour/editor_canvas.cc
+++ b/gtk2_ardour/editor_canvas.cc
@@ -652,7 +652,7 @@ Editor::autoscroll_canvas ()
dx = pixel_to_sample (dx);
- dx /= 10; //ToDo: make a config variable for scroll speed zoom-behavior-tweaks
+ dx *= UIConfiguration::instance().get_draggable_playhead_speed();
if (leftmost_frame < max_framepos - dx) {
new_frame = leftmost_frame + dx;
@@ -669,7 +669,7 @@ Editor::autoscroll_canvas ()
dx = pixel_to_sample (dx);
- dx /= 10; //ToDo: make a config variable for scroll speed zoom-behavior-tweaks
+ dx *= UIConfiguration::instance().get_draggable_playhead_speed();
if (leftmost_frame >= dx) {
new_frame = leftmost_frame - dx;
diff --git a/gtk2_ardour/rc_option_editor.cc b/gtk2_ardour/rc_option_editor.cc
index 91ceba039e..ea7db58809 100644
--- a/gtk2_ardour/rc_option_editor.cc
+++ b/gtk2_ardour/rc_option_editor.cc
@@ -2332,6 +2332,19 @@ RCOptionEditor::RCOptionEditor ()
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_draggable_playhead)
));
+ ComboOption<float>* dps = new ComboOption<float> (
+ "draggable-playhead-speed",
+ _("Playhead dragging speed (%)"),
+ sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::get_draggable_playhead_speed),
+ sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_draggable_playhead_speed)
+ );
+ dps->add (0.05, _("5%"));
+ dps->add (0.1, _("10%"));
+ dps->add (0.25, _("25%"));
+ dps->add (0.5, _("50%"));
+ dps->add (1.0, _("100%"));
+ add_option (_("Editor"), dps);
+
if (!Profile->get_mixbus()) {
add_option (_("Editor"),
diff --git a/gtk2_ardour/ui_config_vars.h b/gtk2_ardour/ui_config_vars.h
index bbefc91b01..0bf9a2c15a 100644
--- a/gtk2_ardour/ui_config_vars.h
+++ b/gtk2_ardour/ui_config_vars.h
@@ -32,6 +32,7 @@ UI_CONFIG_VARIABLE (bool, color_regions_using_track_color, "color-regions-using-
UI_CONFIG_VARIABLE (bool, show_waveform_clipping, "show-waveform-clipping", true)
UI_CONFIG_VARIABLE (uint32_t, lock_gui_after_seconds, "lock-gui-after-seconds", 0)
UI_CONFIG_VARIABLE (bool, draggable_playhead, "draggable-playhead", true)
+UI_CONFIG_VARIABLE (float, draggable_playhead_speed, "draggable-playhead-speed", 1.0)
UI_CONFIG_VARIABLE (bool, new_automation_points_on_lane, "new-automation-points-on-lane", false)
UI_CONFIG_VARIABLE (std::string, keyboard_layout, "keyboard-layout", "ansi")
UI_CONFIG_VARIABLE (std::string, keyboard_layout_name, "keyboard-layout-name", "ansi")