diff --git a/src/libtomahawk/widgets/SeekSlider.cpp b/src/libtomahawk/widgets/SeekSlider.cpp index 1386f1257..a852fd3ec 100644 --- a/src/libtomahawk/widgets/SeekSlider.cpp +++ b/src/libtomahawk/widgets/SeekSlider.cpp @@ -31,6 +31,7 @@ SeekSlider::SeekSlider( QWidget* parent ) : QSlider( parent ) , TomahawkUtils::DpiScaler( this ) , m_timeLine( 0 ) + , m_acceptWheelEvents( true ) { setStyleSheet( QString( "QSlider::groove:horizontal {" @@ -92,3 +93,15 @@ SeekSlider::setValue( int value ) QSlider::setValue( value ); blockSignals( false ); } + + +void +SeekSlider::wheelEvent( QWheelEvent* event ) +{ + if ( m_acceptWheelEvents ) + { + QAbstractSlider::wheelEvent(event); + return; + } + event->ignore(); +} diff --git a/src/libtomahawk/widgets/SeekSlider.h b/src/libtomahawk/widgets/SeekSlider.h index 77c49b9a3..a296b1d54 100644 --- a/src/libtomahawk/widgets/SeekSlider.h +++ b/src/libtomahawk/widgets/SeekSlider.h @@ -37,14 +37,18 @@ public: void setTimeLine( QTimeLine* timeline ) { m_timeLine = timeline; } + void setAcceptWheelEvents( bool b ) { m_acceptWheelEvents = b; } + public slots: void setValue( int value ); - + protected: void mousePressEvent( QMouseEvent* event ); + void wheelEvent( QWheelEvent* event ); private: QTimeLine* m_timeLine; + bool m_acceptWheelEvents; }; #endif // SEEKSLIDER_H diff --git a/src/tomahawk/AudioControls.cpp b/src/tomahawk/AudioControls.cpp index 61414a119..24b73bf55 100644 --- a/src/tomahawk/AudioControls.cpp +++ b/src/tomahawk/AudioControls.cpp @@ -120,6 +120,7 @@ AudioControls::AudioControls( QWidget* parent ) // ui->loveButton->setCheckable( true ); ui->seekSlider->setEnabled( true ); + ui->seekSlider->setAcceptWheelEvents( false ); ui->seekSlider->setTimeLine( &m_sliderTimeLine ); ui->volumeSlider->setRange( 0, 100 ); ui->volumeSlider->setValue( AudioEngine::instance()->volume() );