summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/level_meter.cc7
-rw-r--r--gtk2_ardour/level_meter.h2
-rw-r--r--libs/gtkmm2ext/fastmeter.cc2
3 files changed, 5 insertions, 6 deletions
diff --git a/gtk2_ardour/level_meter.cc b/gtk2_ardour/level_meter.cc
index cc45e45f70..36a469f35c 100644
--- a/gtk2_ardour/level_meter.cc
+++ b/gtk2_ardour/level_meter.cc
@@ -298,19 +298,20 @@ bool
LevelMeter::meter_button_release (GdkEventButton* ev)
{
if (ev->button == 1) {
- clear_meters ();
+ clear_meters (false);
}
return true;
}
-void LevelMeter::clear_meters ()
+void LevelMeter::clear_meters (bool reset_highlight)
{
for (vector<MeterInfo>::iterator i = meters.begin(); i < meters.end(); i++) {
(*i).meter->clear();
(*i).max_peak = minus_infinity();
- (*i).meter->set_highlight(false);
+ if (reset_highlight)
+ (*i).meter->set_highlight(false);
}
max_peak = minus_infinity();
}
diff --git a/gtk2_ardour/level_meter.h b/gtk2_ardour/level_meter.h
index 0fa8388428..0da8ed2a8b 100644
--- a/gtk2_ardour/level_meter.h
+++ b/gtk2_ardour/level_meter.h
@@ -63,7 +63,7 @@ class LevelMeter : public Gtk::HBox, public ARDOUR::SessionHandlePtr
float update_meters ();
void update_meters_falloff ();
- void clear_meters ();
+ void clear_meters (bool reset_highlight = true);
void hide_meters ();
void setup_meters (int len=0, int width=3, int thin=2);
diff --git a/libs/gtkmm2ext/fastmeter.cc b/libs/gtkmm2ext/fastmeter.cc
index 7c0e60a71a..3dd88e6929 100644
--- a/libs/gtkmm2ext/fastmeter.cc
+++ b/libs/gtkmm2ext/fastmeter.cc
@@ -544,7 +544,5 @@ FastMeter::clear ()
current_level = 0;
current_peak = 0;
hold_state = 0;
- set_highlight(false);
- resized = true;
queue_draw ();
}