[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: extragear/multimedia/amarok/src
From: Soren Harward <stharward () gmail ! com>
Date: 2008-09-06 15:43:13
Message-ID: 1220715793.223896.28081.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 857842 by stharward:
Update the system tray and its associated tooltip when the track
changes. This is really just a workaround until Phonon bug 170538 is
fixed.
BUG: 169699
M +11 -1 App.cpp
M +1 -0 App.h
M +7 -2 Systray.cpp
M +1 -0 Systray.h
M +4 -0 widgets/TrackTooltip.cpp
--- trunk/extragear/multimedia/amarok/src/App.cpp #857841:857842
@@ -602,7 +602,6 @@
case Phonon::StoppedState:
case Phonon::LoadingState:
mainWindow()->setPlainCaption( i18n( AMAROK_CAPTION ) );
- TrackToolTip::instance()->clear();
Amarok::OSD::instance()->setImage( QImage( KIconLoader::global()->iconPath( \
"amarok", -KIconLoader::SizeHuge ) ) ); break;
@@ -628,6 +627,17 @@
}
}
+void App::engineNewTrackPlaying()
+{
+ DEBUG_BLOCK
+
+ Meta::TrackPtr currentTrack = The::engineController()->currentTrack();
+ debug() << "engineNewTrackPlaying:" << currentTrack->prettyName();
+ if( !currentTrack )
+ return;
+ TrackToolTip::instance()->setTrack( currentTrack );
+}
+
void App::engineNewMetaData( const QHash<qint64, QString> &newMetaData, bool \
trackChanged ) {
DEBUG_BLOCK
--- trunk/extragear/multimedia/amarok/src/App.h #857841:857842
@@ -66,6 +66,7 @@
protected: /* for OSD, tray, and dcop */
void engineStateChanged( Phonon::State state, Phonon::State oldState = \
Phonon::StoppedState ); + void engineNewTrackPlaying();
void engineNewMetaData( const QHash<qint64, QString> &newMetaData, bool \
trackChanged );
void engineTrackPositionChanged( long position, bool /*userSeek*/ );
void engineVolumeChanged( int );
--- trunk/extragear/multimedia/amarok/src/Systray.cpp #857841:857842
@@ -217,13 +217,18 @@
}
void
+Amarok::TrayIcon::engineNewTrackPlaying( )
+{
+ setupMenu();
+}
+
+void
Amarok::TrayIcon::engineNewMetaData( const QHash<qint64, QString> &newMetaData, bool \
trackChanged ) {
Q_UNUSED( trackChanged )
trackLength = newMetaData.value( Meta::valLength ).toInt() * 1000;
setupMenu();
-
}
void
@@ -360,7 +365,7 @@
Meta::CurrentTrackActionsCapability *cac = \
track->as<Meta::CurrentTrackActionsCapability>(); if( cac )
{
- //remove the two bottom itmes, so we can push them to the button again
+ //remove the two bottom items, so we can push them to the button again
contextMenu()->removeAction( actionCollection()->action( "file_quit" ) \
);
contextMenu()->removeAction( actionCollection()->action( \
"minimizeRestore" ) );
--- trunk/extragear/multimedia/amarok/src/Systray.h #857841:857842
@@ -45,6 +45,7 @@
protected:
// reimpl from engineobserver
virtual void engineStateChanged( Phonon::State state, Phonon::State oldState = \
Phonon::StoppedState ); + virtual void engineNewTrackPlaying();
virtual void engineNewMetaData( const QHash<qint64, QString> &newMetaData, bool \
trackChanged );
virtual void engineTrackPositionChanged( long position, bool /*userSeek*/ );
// get notified of 'highlight' color change
--- trunk/extragear/multimedia/amarok/src/widgets/TrackTooltip.cpp #857841:857842
@@ -17,6 +17,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
******************************************************************************/
+#define DEBUG_PREFIX "TrackTooltip"
+
#include "TrackTooltip.h"
#include "Amarok.h"
@@ -267,6 +269,8 @@
void TrackToolTip::clear()
{
+ DEBUG_BLOCK
+
m_trackPosition = 0;
m_tooltip = i18n( "Amarok - No track playing." );
m_track = Meta::TrackPtr();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic