Only do the Ubuntu Unity hack on Linux

This commit is contained in:
David Sansome 2011-06-22 20:52:49 +00:00
parent 63300d79db
commit 4864d24e42
2 changed files with 10 additions and 2 deletions

View File

@ -90,7 +90,6 @@ set(SOURCES
core/songloader.cpp
core/stylesheetloader.cpp
core/taskmanager.cpp
core/ubuntuunityhack.cpp
core/urlhandler.cpp
core/utilities.cpp
@ -320,7 +319,6 @@ set(HEADERS
core/player.h
core/songloader.h
core/taskmanager.h
core/ubuntuunityhack.h
core/urlhandler.h
covers/albumcoverfetcher.h
@ -874,6 +872,12 @@ if(HAVE_REMOTE)
)
endif(HAVE_REMOTE)
if(LINUX)
# Hack to add Clementine to the Unity system tray whitelist
list(APPEND SOURCES core/ubuntuunityhack.cpp)
list(APPEND HEADERS core/ubuntuunityhack.h)
endif(LINUX)
# OS-specific sources that should be searched for translatable strings even
# if they're not compiled
list(APPEND OTHER_SOURCES
@ -886,6 +890,8 @@ list(APPEND OTHER_SOURCES
core/mpris1.h
core/mpris2.cpp
core/mpris2.h
core/ubuntuunityhack.cpp
core/ubuntuunityhack.h
devices/afcdevice.cpp
devices/afcdevice.h
devices/afcfile.cpp

View File

@ -379,10 +379,12 @@ int main(int argc, char *argv[]) {
// later
CoverProviders::instance();
#ifdef Q_OS_LINUX
// In 11.04 Ubuntu decided that the system tray should be reserved for certain
// whitelisted applications. Clementine will override this setting and insert
// itself into the list of whitelisted apps.
UbuntuUnityHack hack;
#endif // Q_OS_LINUX
// Create the tray icon and OSD
scoped_ptr<SystemTrayIcon> tray_icon(SystemTrayIcon::CreateSystemTrayIcon());