13
0

Statusbar: fix double-click to reset x-run counter

This commit is contained in:
Robin Gareus 2020-03-30 03:53:09 +02:00
parent 232b21d289
commit 0cedb68882
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
2 changed files with 16 additions and 1 deletions

View File

@ -862,6 +862,7 @@ private:
bool audio_button_press (GdkEventButton* ev);
bool format_button_press (GdkEventButton* ev);
bool timecode_button_press (GdkEventButton* ev);
bool xrun_button_press (GdkEventButton* ev);
bool xrun_button_release (GdkEventButton* ev);
std::string _announce_string;

View File

@ -789,6 +789,7 @@ ARDOUR_UI::build_menu_bar ()
ev->signal_button_press_event().connect (sigc::mem_fun (_status_bar_visibility, &VisibilityGroup::button_press_event));
ev_dsp->signal_button_press_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::xrun_button_press));
ev_dsp->signal_button_release_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::xrun_button_release));
ev_path->signal_button_press_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::path_button_press));
ev_audio->signal_button_press_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::audio_button_press));
@ -954,10 +955,23 @@ ARDOUR_UI::focus_on_clock ()
}
}
bool
ARDOUR_UI::xrun_button_press (GdkEventButton* ev)
{
if (ev->button != 1 || ev->type != GDK_2BUTTON_PRESS) {
return false;
}
if (_session) {
_session->reset_xrun_count ();
update_cpu_load ();
}
return true;
}
bool
ARDOUR_UI::xrun_button_release (GdkEventButton* ev)
{
if (ev->button != 1 || !(Keyboard::modifier_state_equals (ev->state, Keyboard::TertiaryModifier) || ev->type == GDK_2BUTTON_PRESS)) {
if (ev->button != 1 || !Keyboard::modifier_state_equals (ev->state, Keyboard::TertiaryModifier)) {
return false;
}