diff -up qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/phonon/globalconfig.cpp.phonon-pulseaudio qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/phonon/globalconfig.cpp --- qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/phonon/globalconfig.cpp.phonon-pulseaudio 2009-06-20 06:57:54.000000000 +0200 +++ qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/phonon/globalconfig.cpp 2009-08-21 00:11:55.000000000 +0200 @@ -31,6 +31,7 @@ #include "phononnamespace_p.h" #include +#include #include QT_BEGIN_NAMESPACE @@ -167,6 +168,15 @@ QList GlobalConfig::audioOutputDevi | ((override & HideUnavailableDevices) ? FilterUnavailableDevices : 0) ); } + // make PulseAudio the global default (assume it is already default in this list) + if (!list.isEmpty()) { + int firstIndex = list.first(); + if (backendIface->objectDescriptionProperties(Phonon::AudioOutputDeviceType, + firstIndex)["name"].toString() == "PulseAudio") { + list.removeFirst(); + defaultList.prepend(firstIndex); + } + } defaultList += list; } @@ -222,6 +232,15 @@ QList GlobalConfig::audioCaptureDev | ((override & HideUnavailableDevices) ? FilterUnavailableDevices : 0) ); } + // make PulseAudio the global default (assume it is already default in this list) + if (!list.isEmpty()) { + int firstIndex = list.first(); + if (backendIface->objectDescriptionProperties(Phonon::AudioCaptureDeviceType, + firstIndex)["name"].toString() == "PulseAudio") { + list.removeFirst(); + defaultList.prepend(firstIndex); + } + } defaultList += list; }