From 229de18bc0608220e281249990296e5a908d91e7 Mon Sep 17 00:00:00 2001 From: Andres Date: Sun, 17 Nov 2019 23:05:16 -0300 Subject: [PATCH] Fixed triggering of stop animation when not playing --- include/SampleTrack.h | 6 ++++++ src/tracks/SampleTrack.cpp | 12 +++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/include/SampleTrack.h b/include/SampleTrack.h index dcac2053d..cad43a15d 100644 --- a/include/SampleTrack.h +++ b/include/SampleTrack.h @@ -162,6 +162,11 @@ public: return "sampletrack"; } + bool wasPlaying() + { + return m_wasPlaying; + } + signals: void playing(); void notPlaying(); @@ -215,6 +220,7 @@ public: public slots: void showEffects(); + void stopPlaying(); protected: diff --git a/src/tracks/SampleTrack.cpp b/src/tracks/SampleTrack.cpp index afc6b89e7..83c8ba130 100644 --- a/src/tracks/SampleTrack.cpp +++ b/src/tracks/SampleTrack.cpp @@ -866,7 +866,7 @@ SampleTrackView::SampleTrackView( SampleTrack * _t, TrackContainerView* tcv ) : connect(_t, SIGNAL(notPlaying()), m_activityIndicator, SLOT(notPlaying())); connect(Engine::getSong(), SIGNAL(stopped()), - m_activityIndicator, SLOT(notPlaying())); + this, SLOT(stopPlaying())); setModel( _t ); @@ -982,6 +982,16 @@ void SampleTrackView::dropEvent(QDropEvent *de) +void SampleTrackView::stopPlaying() +{ + if (dynamic_cast(getTrack())->wasPlaying()) + { + m_activityIndicator->notPlaying(); + } +} + + + SampleTrackWindow::SampleTrackWindow(SampleTrackView * tv) : QWidget(),