From b8ed6e9435e5546efea4425985eee9a42309eb6a Mon Sep 17 00:00:00 2001 From: Volker Fischer Date: Sun, 5 Jul 2020 16:33:53 +0200 Subject: [PATCH] bug fix: clip state not correctly reset when changing servers --- ChangeLog | 7 ++----- src/levelmeter.cpp | 27 ++++++++++++--------------- 2 files changed, 14 insertions(+), 20 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2a016e09..91948b6a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -20,18 +20,15 @@ - bug fix: grouping faders in the client should be proportional (see discussion in #202, #419) - TODO bug fix: incorrect selection of UI language (#408) !!!!!!!!!!!!!!!!!!!!!!!!!!!!! -> note that for the 3.5.8 bug fix release we went back to the original translation code (e.g. no pt_BR!) -TODO improve settings management -> move settings class in client/server classes, move actual settings variables - TODO add new register message which contains version and, e.g., max number of clients TODO Inconsistency between Input meter and Audio mixer meter #423 -TODO https://github.com/corrados/jamulus/issues/341#issuecomment-647172946 - - generate .qm on compile time with lrelease +TODO improve settings management -> move settings class in client/server classes, move actual settings variables + diff --git a/src/levelmeter.cpp b/src/levelmeter.cpp index 3185cb05..4ea10eab 100755 --- a/src/levelmeter.cpp +++ b/src/levelmeter.cpp @@ -246,27 +246,24 @@ void CLevelMeter::SetValue ( const double dValue ) TimerClip.start(); } - else if ( !TimerClip.isActive() ) - { - switch ( eLevelMeterType ) - { - case MT_LED: - vecpLEDs[NUM_STEPS_LED_BAR]->SetColor ( cLED::RL_BLACK ); - break; - - case MT_BAR: - case MT_SLIM_BAR: - SetBarMeterStyleAndClipStatus ( eLevelMeterType, false ); - break; - } - } } void CLevelMeter::ClipReset() { - if ( eLevelMeterType == MT_LED ) + // we manually want to reset the clipping indicator: stop timer and reset + // clipping indicator GUI element + TimerClip.stop(); + + switch ( eLevelMeterType ) { + case MT_LED: vecpLEDs[NUM_STEPS_LED_BAR]->SetColor ( cLED::RL_BLACK ); + break; + + case MT_BAR: + case MT_SLIM_BAR: + SetBarMeterStyleAndClipStatus ( eLevelMeterType, false ); + break; } }