diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2017-04-22 21:50:15 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2017-04-22 21:50:15 +0000 |
| commit | 2e6fa0a1453066f1560270466797b2161d7851c4 (patch) | |
| tree | 29c6f674383936f9b617a5beef6b48342ac875af /src/plugins/Ui | |
| parent | e7b06c4b734a9978243751e3f44afa8b2faa21ff (diff) | |
| download | qmmp-2e6fa0a1453066f1560270466797b2161d7851c4.tar.gz qmmp-2e6fa0a1453066f1560270466797b2161d7851c4.tar.bz2 qmmp-2e6fa0a1453066f1560270466797b2161d7851c4.zip | |
clear window title when playback is finished (#301)
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@7128 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Ui')
| -rw-r--r-- | src/plugins/Ui/qsui/mainwindow.cpp | 9 | ||||
| -rw-r--r-- | src/plugins/Ui/qsui/mainwindow.h | 3 | ||||
| -rw-r--r-- | src/plugins/Ui/skinned/mainwindow.cpp | 12 | ||||
| -rw-r--r-- | src/plugins/Ui/skinned/mainwindow.h | 3 | ||||
| -rw-r--r-- | src/plugins/Ui/skinned/textscroller.cpp | 19 | ||||
| -rw-r--r-- | src/plugins/Ui/skinned/textscroller.h | 3 |
6 files changed, 32 insertions, 17 deletions
diff --git a/src/plugins/Ui/qsui/mainwindow.cpp b/src/plugins/Ui/qsui/mainwindow.cpp index ee13866a6..084e05cbf 100644 --- a/src/plugins/Ui/qsui/mainwindow.cpp +++ b/src/plugins/Ui/qsui/mainwindow.cpp @@ -68,6 +68,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) m_titleFormatter.setPattern("%if(%p,%p - %t,%t)"); //qmmp objects m_player = MediaPlayer::instance(); + connect(m_player, SIGNAL(playbackFinished()), SLOT(restoreWindowTitle())); m_core = SoundCore::instance(); m_pl_manager = PlayListManager::instance(); m_uiHelper = UiHelper::instance(); @@ -156,6 +157,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) createActions(); readSettings(); updateStatus(); + restoreWindowTitle(); } MainWindow::~MainWindow() @@ -223,7 +225,7 @@ void MainWindow::showState(Qmmp::State state) m_positionSlider->setValue(0); m_analyzer->clearCover(); qobject_cast<CoverWidget *>(m_ui.coverDockWidget->widget())->clearCover(); - setWindowTitle("Qmmp"); + //setWindowTitle("Qmmp"); break; default: ; @@ -928,3 +930,8 @@ void MainWindow::editToolBar() } e->deleteLater(); } + +void MainWindow::restoreWindowTitle() +{ + setWindowTitle(tr("Qmmp")); +} diff --git a/src/plugins/Ui/qsui/mainwindow.h b/src/plugins/Ui/qsui/mainwindow.h index e2284f9db..6aa2c15a3 100644 --- a/src/plugins/Ui/qsui/mainwindow.h +++ b/src/plugins/Ui/qsui/mainwindow.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2009-2016 by Ilya Kotov * + * Copyright (C) 2009-2017 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -89,6 +89,7 @@ private slots: void setTitleBarsVisible(bool visible); void setToolBarsBlocked(bool blocked); void editToolBar(); + void restoreWindowTitle(); private: void closeEvent(QCloseEvent *); diff --git a/src/plugins/Ui/skinned/mainwindow.cpp b/src/plugins/Ui/skinned/mainwindow.cpp index 5ffe3127f..24575e88f 100644 --- a/src/plugins/Ui/skinned/mainwindow.cpp +++ b/src/plugins/Ui/skinned/mainwindow.cpp @@ -62,7 +62,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowCloseButtonHint | Qt::WindowMinMaxButtonsHint | Qt::WindowSystemMenuHint); - setWindowTitle("Qmmp"); + restoreWindowTitle(); m_titleFormatter.setPattern("%if(%p,%p - %t,%t)"); @@ -105,6 +105,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) m_vis = MainVisual::instance(); Visual::add(m_vis); //connections + connect (m_player,SIGNAL(playbackFinished()), SLOT(restoreWindowTitle())); connect (m_playlist,SIGNAL(next()),SLOT(next())); connect (m_playlist,SIGNAL(prev()),SLOT(previous())); connect (m_playlist,SIGNAL(play()),SLOT(play())); @@ -189,10 +190,6 @@ void MainWindow::showState(Qmmp::State state) break; case Qmmp::Stopped: m_playlist->setTime(-1); - if (m_pl_manager->currentPlayList()->currentTrack()) - setWindowTitle(m_titleFormatter.format(m_pl_manager->currentPlayList()->currentTrack())); - else - setWindowTitle("Qmmp"); break; } } @@ -538,3 +535,8 @@ void MainWindow::keyPressEvent(QKeyEvent *ke) ke->modifiers(), ke->text(),ke->isAutoRepeat(), ke->count()); QApplication::sendEvent(m_playlist,&event); } + +void MainWindow::restoreWindowTitle() +{ + setWindowTitle(tr("Qmmp")); +} diff --git a/src/plugins/Ui/skinned/mainwindow.h b/src/plugins/Ui/skinned/mainwindow.h index 7ceb05bbb..8817b2f0d 100644 --- a/src/plugins/Ui/skinned/mainwindow.h +++ b/src/plugins/Ui/skinned/mainwindow.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2006-2016 by Ilya Kotov * + * Copyright (C) 2006-2017 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -87,6 +87,7 @@ private slots: void showSettings(); void forward(); void backward(); + void restoreWindowTitle(); private: //events diff --git a/src/plugins/Ui/skinned/textscroller.cpp b/src/plugins/Ui/skinned/textscroller.cpp index 214df8225..5f23229e0 100644 --- a/src/plugins/Ui/skinned/textscroller.cpp +++ b/src/plugins/Ui/skinned/textscroller.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2006-2015 by Ilya Kotov * + * Copyright (C) 2006-2017 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -30,6 +30,7 @@ #include <qmmpui/metadataformatter.h> #include <qmmpui/playlistmanager.h> #include <qmmpui/playlistmodel.h> +#include <qmmpui/mediaplayer.h> #include "skin.h" #include "actionmanager.h" #include "textscroller.h" @@ -62,6 +63,7 @@ TextScroller::TextScroller (QWidget *parent) : QWidget (parent) connect(m_skin, SIGNAL(skinChanged()), SLOT(updateSkin())); connect(m_core, SIGNAL(stateChanged(Qmmp::State)), SLOT(processState(Qmmp::State))); connect(m_core, SIGNAL(metaDataChanged()), SLOT(processMetaData())); + connect(MediaPlayer::instance(), SIGNAL(playbackFinished()), SLOT(clearText())); updateSkin(); } @@ -237,15 +239,9 @@ void TextScroller::processState(Qmmp::State state) updateText(); break; } - case Qmmp::Paused: - { - break; - } case Qmmp::Stopped: { - m_bufferText.clear(); - m_titleText.clear(); - updateText(); + disconnect(m_core, SIGNAL(bufferingProgress(int)), this, 0); break; } default: @@ -340,3 +336,10 @@ void TextScroller::updateText() //draw text according priority } update(); } + +void TextScroller::clearText() +{ + m_bufferText.clear(); + m_titleText.clear(); + updateText(); +} diff --git a/src/plugins/Ui/skinned/textscroller.h b/src/plugins/Ui/skinned/textscroller.h index 919f4644b..a82c2fcc5 100644 --- a/src/plugins/Ui/skinned/textscroller.h +++ b/src/plugins/Ui/skinned/textscroller.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2006-2015 by Ilya Kotov * + * Copyright (C) 2006-2017 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -52,6 +52,7 @@ private slots: void processState(Qmmp::State state); void processMetaData(); void updateText(); + void clearText(); private: void hideEvent(QHideEvent *); |
