f3088bc3 | 2014-07-08 09:00:06 | Timothy Pearson |
Fix abort on startup due to oversized tray icon creation when icon widget has not yet been shown |
||
M amarok/src/systray.cpp M amarok/src/systray.h M config.h.in |
||
diff --git a/amarok/src/systray.cpp b/amarok/src/systray.cpp index 7c6721e..4b2f44b 100644 --- a/amarok/src/systray.cpp +++ b/amarok/src/systray.cpp @@ -55,9 +55,9 @@ quit->disconnect(); connect( quit, TQT_SIGNAL(activated()), kapp, TQT_SLOT(quit()) ); - baseIcon = KSystemTray::loadSizedIcon( "amarok", width() ); - playOverlay = Amarok::loadOverlay( "play", width() ); - pauseOverlay = Amarok::loadOverlay( "pause", width() ); + baseIcon = KSystemTray::loadIcon( "amarok" ); + playOverlay = Amarok::loadOverlay( "play", baseIcon.width() ); + pauseOverlay = Amarok::loadOverlay( "pause", baseIcon.width() ); overlayVisible = false; //paintIcon(); @@ -102,7 +102,7 @@ } } -void Amarok::TrayIcon::resizeEvent ( TQResizeEvent * ) +void Amarok::TrayIcon::resizeTrayIcon () { // Honor Free Desktop specifications that allow for arbitrary system tray icon sizes baseIcon = KSystemTray::loadSizedIcon( "amarok", width() ); @@ -121,6 +121,16 @@ paintIcon( -1, true ); } +void Amarok::TrayIcon::resizeEvent ( TQResizeEvent * ) +{ + resizeTrayIcon(); +} + +void Amarok::TrayIcon::showEvent ( TQShowEvent * ) +{ + resizeTrayIcon(); +} + void Amarok::TrayIcon::engineStateChanged( Engine::State state, Engine::State /*oldState*/ ) { diff --git a/amarok/src/systray.h b/amarok/src/systray.h index fe9380d..6e4e4da 100644 --- a/amarok/src/systray.h +++ b/amarok/src/systray.h @@ -31,6 +31,7 @@ // get notified of 'highlight' color change virtual void paletteChange( const TQPalette & oldPalette ); void resizeEvent ( TQResizeEvent * ); + void showEvent ( TQShowEvent * ); private: bool event( TQEvent* ); @@ -40,6 +41,7 @@ void paintIcon( int mergePixels = -1, bool force = false ); // blend an overlay icon over 'sourcePixmap' and repaint trayIcon void blendOverlay( TQPixmap &sourcePixmap ); + void resizeTrayIcon(); long trackLength, mergeLevel; TQPixmap baseIcon, grayedIcon, alternateIcon; diff --git a/config.h.in b/config.h.in index 86dab1c..34a6a06 100644 --- a/config.h.in +++ b/config.h.in @@ -106,10 +106,13 @@ /* have mp4v2 */ #undef HAVE_MP4V2 -/* Define to 1 if you have the <mp4v2/mp4v2.h> header file. */ +/* have mp4v2 h */ #undef HAVE_MP4V2_H -/* Define to 1 if you have the <mp4.h> header file. */ +/* Define to 1 if you have the <mp4v2/mp4v2.h> header file. */ +#undef HAVE_MP4V2_MP4V2_H + +/* have mp4 h */ #undef HAVE_MP4_H /* have NMM */ @@ -399,6 +402,9 @@ #endif +/* define to 1 if -fvisibility is supported */ +#undef __KDE_HAVE_GCC_VISIBILITY + #if defined(__SVR4) && !defined(__svr4__) #define __svr4__ 1 |