From 73692797dc962500184b1e9f7685c9f61db18578 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Sat, 5 Sep 2020 19:20:43 +0200 Subject: [PATCH] Fix QWidget::enterEvent with Qt 6 --- src/osd/osdpretty.cpp | 8 ++++++-- src/osd/osdpretty.h | 9 +++++++-- src/playlist/playlistheader.cpp | 5 +++++ src/playlist/playlistheader.h | 7 ++++++- src/widgets/tracksliderslider.cpp | 11 ++++++++--- src/widgets/tracksliderslider.h | 10 ++++++++-- src/widgets/volumeslider.cpp | 4 ++++ src/widgets/volumeslider.h | 5 +++++ 8 files changed, 49 insertions(+), 10 deletions(-) diff --git a/src/osd/osdpretty.cpp b/src/osd/osdpretty.cpp index 645b357d5..ff591f983 100644 --- a/src/osd/osdpretty.cpp +++ b/src/osd/osdpretty.cpp @@ -439,12 +439,16 @@ void OSDPretty::Reposition() { #endif } -void OSDPretty::enterEvent(QEvent *) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +void OSDPretty::enterEvent(QEnterEvent*) { +#else +void OSDPretty::enterEvent(QEvent*) { +#endif if (mode_ == Mode_Popup) setWindowOpacity(0.25); } -void OSDPretty::leaveEvent(QEvent *) { +void OSDPretty::leaveEvent(QEvent*) { setWindowOpacity(1.0); } diff --git a/src/osd/osdpretty.h b/src/osd/osdpretty.h index 5e13b002f..beceeecd8 100644 --- a/src/osd/osdpretty.h +++ b/src/osd/osdpretty.h @@ -44,6 +44,7 @@ class QEvent; class QMouseEvent; class QPaintEvent; class QShowEvent; +class QEnterEvent; class Ui_OSDPretty; @@ -115,8 +116,12 @@ class OSDPretty : public QWidget { protected: void paintEvent(QPaintEvent *e) override; - void enterEvent(QEvent *e) override; - void leaveEvent(QEvent *e) override; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + void enterEvent(QEnterEvent*) override; +#else + void enterEvent(QEvent*) override; +#endif + void leaveEvent(QEvent*) override; void mousePressEvent(QMouseEvent *e) override; void showEvent(QShowEvent *e) override; void mouseMoveEvent(QMouseEvent *e) override; diff --git a/src/playlist/playlistheader.cpp b/src/playlist/playlistheader.cpp index 71dabed56..4c4cdaefc 100644 --- a/src/playlist/playlistheader.cpp +++ b/src/playlist/playlistheader.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include "playlistheader.h" #include "playlistview.h" @@ -138,7 +139,11 @@ void PlaylistHeader::ToggleVisible(int section) { emit SectionVisibilityChanged(section, !isSectionHidden(section)); } +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +void PlaylistHeader::enterEvent(QEnterEvent*) { +#else void PlaylistHeader::enterEvent(QEvent*) { +#endif emit MouseEntered(); } diff --git a/src/playlist/playlistheader.h b/src/playlist/playlistheader.h index 25fd2cac9..e30bc6b6d 100644 --- a/src/playlist/playlistheader.h +++ b/src/playlist/playlistheader.h @@ -33,6 +33,7 @@ class QMenu; class QAction; class QEvent; class QContextMenuEvent; +class QEnterEvent; class PlaylistView; @@ -44,7 +45,11 @@ class PlaylistHeader : public StretchHeaderView { // QWidget void contextMenuEvent(QContextMenuEvent *e) override; - void enterEvent(QEvent *) override; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + void enterEvent(QEnterEvent*) override; +#else + void enterEvent(QEvent*) override; +#endif signals: void SectionVisibilityChanged(int logical, bool visible); diff --git a/src/widgets/tracksliderslider.cpp b/src/widgets/tracksliderslider.cpp index 6eefcb6b3..4f15f036e 100644 --- a/src/widgets/tracksliderslider.cpp +++ b/src/widgets/tracksliderslider.cpp @@ -30,6 +30,7 @@ #include #include #include +# include #include "core/timeconstants.h" #include "core/utilities.h" @@ -120,7 +121,11 @@ void TrackSliderSlider::wheelEvent(QWheelEvent *e) { } -void TrackSliderSlider::enterEvent(QEvent* e) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +void TrackSliderSlider::enterEvent(QEnterEvent *e) { +#else +void TrackSliderSlider::enterEvent(QEvent *e) { +#endif QSlider::enterEvent(e); #ifndef Q_OS_MACOS if (isEnabled()) { @@ -129,7 +134,7 @@ void TrackSliderSlider::enterEvent(QEvent* e) { #endif } -void TrackSliderSlider::leaveEvent(QEvent* e) { +void TrackSliderSlider::leaveEvent(QEvent *e) { QSlider::leaveEvent(e); #ifndef Q_OS_MACOS if (popup_->isVisible()) { @@ -138,7 +143,7 @@ void TrackSliderSlider::leaveEvent(QEvent* e) { #endif } -void TrackSliderSlider::keyPressEvent(QKeyEvent* event) { +void TrackSliderSlider::keyPressEvent(QKeyEvent *event) { if (event->key() == Qt::Key_Left || event->key() == Qt::Key_Down) { emit SeekBackward(); event->accept(); diff --git a/src/widgets/tracksliderslider.h b/src/widgets/tracksliderslider.h index 8ef044711..e3c76585f 100644 --- a/src/widgets/tracksliderslider.h +++ b/src/widgets/tracksliderslider.h @@ -32,6 +32,8 @@ class QEvent; class QKeyEvent; class QMouseEvent; class QWheelEvent; +class QEnterEvent; + #ifndef Q_OS_MACOS class TrackSliderPopup; #endif @@ -54,8 +56,12 @@ class TrackSliderSlider : public QSlider { void mouseReleaseEvent(QMouseEvent* e) override; void mouseMoveEvent(QMouseEvent* e) override; void wheelEvent(QWheelEvent *e) override; - void enterEvent(QEvent*) override; - void leaveEvent(QEvent*) override; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + void enterEvent(QEnterEvent *e) override; +#else + void enterEvent(QEvent *e) override; +#endif + void leaveEvent(QEvent *e) override; void keyPressEvent(QKeyEvent* event) override; private slots: diff --git a/src/widgets/volumeslider.cpp b/src/widgets/volumeslider.cpp index 1e47f4eaa..0fefa359c 100644 --- a/src/widgets/volumeslider.cpp +++ b/src/widgets/volumeslider.cpp @@ -342,7 +342,11 @@ void VolumeSlider::paintEvent(QPaintEvent*) { } +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +void VolumeSlider::enterEvent(QEnterEvent*) { +#else void VolumeSlider::enterEvent(QEvent*) { +#endif m_animEnter = true; m_animCount = 0; diff --git a/src/widgets/volumeslider.h b/src/widgets/volumeslider.h index 169256889..728e3944b 100644 --- a/src/widgets/volumeslider.h +++ b/src/widgets/volumeslider.h @@ -38,6 +38,7 @@ class QMouseEvent; class QPaintEvent; class QWheelEvent; class QContextMenuEvent; +class QEnterEvent; class SliderSlider : public QSlider { Q_OBJECT @@ -108,7 +109,11 @@ class VolumeSlider : public SliderSlider { protected: void paintEvent(QPaintEvent*) override; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + void enterEvent(QEnterEvent*) override; +#else void enterEvent(QEvent*) override; +#endif void leaveEvent(QEvent*) override; virtual void paletteChange(const QPalette&); void slideEvent(QMouseEvent*) override;