┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMéven Car <[email protected]>2019-09-02 07:00:13 +0200
committerMéven Car <[email protected]>2019-09-02 07:00:31 +0200
commit9996b1f89c70b00427477c98abe93c5696d993c6 (patch)
tree87999c18c8d462997be4d5a287212c4cd8a45e24 /src
parent290411cf1c86eb3c512eb4b1b2bd1ddc381ad2af (diff)
Replace the stop button of the media preview by a pause button
Summary: Stop is not as useful as paused plus it makes the button coherent with the click to play/pause feature. CCBUG: 364957 Test Plan: {F7305382} Reviewers: #dolphin, elvisangelaccio, ngraham Reviewed By: #dolphin, ngraham Subscribers: ngraham, kfm-devel Tags: #dolphin Differential Revision: https://phabricator.kde.org/D23648
Diffstat (limited to 'src')
-rw-r--r--src/panels/information/phononwidget.cpp37
-rw-r--r--src/panels/information/phononwidget.h4
2 files changed, 24 insertions, 17 deletions
diff --git a/src/panels/information/phononwidget.cpp b/src/panels/information/phononwidget.cpp
index e301df270..6911f79bd 100644
--- a/src/panels/information/phononwidget.cpp
+++ b/src/panels/information/phononwidget.cpp
@@ -60,7 +60,7 @@ PhononWidget::PhononWidget(QWidget *parent)
: QWidget(parent),
m_url(),
m_playButton(nullptr),
- m_stopButton(nullptr),
+ m_pauseButton(nullptr),
m_topLayout(nullptr),
m_media(nullptr),
m_seekSlider(nullptr),
@@ -100,6 +100,15 @@ void PhononWidget::clearUrl()
m_url.clear();
}
+void PhononWidget::togglePlayback()
+{
+ if (m_media && m_media->state() == Phonon::State::PlayingState) {
+ m_media->pause();
+ } else {
+ play();
+ }
+}
+
bool PhononWidget::eventFilter(QObject *object, QEvent *event)
{
Q_UNUSED(object)
@@ -107,11 +116,7 @@ bool PhononWidget::eventFilter(QObject *object, QEvent *event)
const QMouseEvent *mouseEvent = static_cast<QMouseEvent*>(event);
if (mouseEvent->button() == Qt::LeftButton) {
// toggle playback
- if (m_media && m_media->state() == Phonon::State::PlayingState) {
- m_media->pause();
- } else {
- play();
- }
+ togglePlayback();
return true;
}
}
@@ -147,11 +152,11 @@ void PhononWidget::showEvent(QShowEvent *event)
controlsLayout->setSpacing(0);
m_playButton = new QToolButton(this);
- m_stopButton = new QToolButton(this);
+ m_pauseButton = new QToolButton(this);
m_seekSlider = new Phonon::SeekSlider(this);
controlsLayout->addWidget(m_playButton);
- controlsLayout->addWidget(m_stopButton);
+ controlsLayout->addWidget(m_pauseButton);
controlsLayout->addWidget(m_seekSlider);
m_topLayout->addLayout(controlsLayout);
@@ -165,12 +170,12 @@ void PhononWidget::showEvent(QShowEvent *event)
m_playButton->setAutoRaise(true);
connect(m_playButton, &QToolButton::clicked, this, &PhononWidget::play);
- m_stopButton->setToolTip(i18n("stop"));
- m_stopButton->setIconSize(buttonSize);
- m_stopButton->setIcon(QIcon::fromTheme(QStringLiteral("media-playback-stop")));
- m_stopButton->setAutoRaise(true);
- m_stopButton->hide();
- connect(m_stopButton, &QToolButton::clicked, this, &PhononWidget::stop);
+ m_pauseButton->setToolTip(i18n("pause"));
+ m_pauseButton->setIconSize(buttonSize);
+ m_pauseButton->setIcon(QIcon::fromTheme(QStringLiteral("media-playback-pause")));
+ m_pauseButton->setAutoRaise(true);
+ m_pauseButton->hide();
+ connect(m_pauseButton, &QToolButton::clicked, this, &PhononWidget::togglePlayback);
m_seekSlider->setIconVisible(false);
@@ -196,10 +201,10 @@ void PhononWidget::stateChanged(Phonon::State newstate)
case Phonon::PlayingState:
case Phonon::BufferingState:
m_playButton->hide();
- m_stopButton->show();
+ m_pauseButton->show();
break;
default:
- m_stopButton->hide();
+ m_pauseButton->hide();
m_playButton->show();
break;
}
diff --git a/src/panels/information/phononwidget.h b/src/panels/information/phononwidget.h
index 90a1d1e5a..961443d2e 100644
--- a/src/panels/information/phononwidget.h
+++ b/src/panels/information/phononwidget.h
@@ -89,11 +89,13 @@ class PhononWidget : public QWidget
void applyVideoSize();
private:
+ void togglePlayback();
+
QUrl m_url;
QSize m_videoSize;
QToolButton *m_playButton;
- QToolButton *m_stopButton;
+ QToolButton *m_pauseButton;
QVBoxLayout *m_topLayout;
Phonon::MediaObject *m_media;