From acc4df92bc6475800cc1ff949064b287ccf6a32d Mon Sep 17 00:00:00 2001 From: Evgeniy Alekseev Date: Wed, 17 May 2017 17:43:18 +0300 Subject: [PATCH 1/3] fix invalid mpris parser MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In some cases it causes the error like: Error message "Интерфейс «(null)» для пути /org/mpris/MediaPlayer2 объекта не найден" (for example deadbeef was affected). Suggested patch should fix this issue and seems to be working with at least deadbeef and qmmp mpris engines. --- sources/extsysmonsources/playersource.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sources/extsysmonsources/playersource.cpp b/sources/extsysmonsources/playersource.cpp index b8a0ec1..17d90bc 100644 --- a/sources/extsysmonsources/playersource.cpp +++ b/sources/extsysmonsources/playersource.cpp @@ -73,8 +73,10 @@ QString PlayerSource::getAutoMpris() const { QDBusMessage listServices = QDBusConnection::sessionBus().interface()->call( QDBus::BlockWithGui, "ListNames"); - if (listServices.arguments().isEmpty()) + if (listServices.arguments().isEmpty()) { + qCWarning(LOG_ESS) << "Could not find any DBus service"; return ""; + } QStringList arguments = listServices.arguments().first().toStringList(); for (auto &arg : arguments) { @@ -353,7 +355,7 @@ QVariantHash PlayerSource::getPlayerMprisInfo(const QString &_mpris) const = QVariantList({"org.mpris.MediaPlayer2.Player", "Metadata"}); QDBusMessage request = QDBusMessage::createMethodCall( QString("org.mpris.MediaPlayer2.%1").arg(_mpris), - "/org/mpris/MediaPlayer2", "", "Get"); + "/org/mpris/MediaPlayer2", "org.freedesktop.DBus.Properties", "Get"); request.setArguments(args); QDBusMessage response = bus.call(request, QDBus::BlockWithGui, REQUEST_TIMEOUT); From a4d3a09f2626f9d6cf1483147c5774f1b4c8fdb4 Mon Sep 17 00:00:00 2001 From: Evgeniy Alekseev Date: Wed, 17 May 2017 17:47:34 +0300 Subject: [PATCH 2/3] add patch for mpris --- patches/fix-mpris-engine.patch | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 patches/fix-mpris-engine.patch diff --git a/patches/fix-mpris-engine.patch b/patches/fix-mpris-engine.patch new file mode 100644 index 0000000..342a32e --- /dev/null +++ b/patches/fix-mpris-engine.patch @@ -0,0 +1,25 @@ +diff --git a/sources/extsysmonsources/playersource.cpp b/sources/extsysmonsources/playersource.cpp +index b8a0ec1..17d90bc 100644 +--- a/sources/extsysmonsources/playersource.cpp ++++ b/sources/extsysmonsources/playersource.cpp +@@ -73,8 +73,10 @@ QString PlayerSource::getAutoMpris() const + { + QDBusMessage listServices = QDBusConnection::sessionBus().interface()->call( + QDBus::BlockWithGui, "ListNames"); +- if (listServices.arguments().isEmpty()) ++ if (listServices.arguments().isEmpty()) { ++ qCWarning(LOG_ESS) << "Could not find any DBus service"; + return ""; ++ } + QStringList arguments = listServices.arguments().first().toStringList(); + + for (auto &arg : arguments) { +@@ -353,7 +355,7 @@ QVariantHash PlayerSource::getPlayerMprisInfo(const QString &_mpris) const + = QVariantList({"org.mpris.MediaPlayer2.Player", "Metadata"}); + QDBusMessage request = QDBusMessage::createMethodCall( + QString("org.mpris.MediaPlayer2.%1").arg(_mpris), +- "/org/mpris/MediaPlayer2", "", "Get"); ++ "/org/mpris/MediaPlayer2", "org.freedesktop.DBus.Properties", "Get"); + request.setArguments(args); + QDBusMessage response + = bus.call(request, QDBus::BlockWithGui, REQUEST_TIMEOUT); From 934e30819c89052825be4dba71c54830730abe83 Mon Sep 17 00:00:00 2001 From: Evgeniy Alekseev Date: Sun, 21 May 2017 23:07:12 +0300 Subject: [PATCH 3/3] rename deadbeef defaults --- sources/awesome-widget/package/contents/ui/dataengine.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources/awesome-widget/package/contents/ui/dataengine.qml b/sources/awesome-widget/package/contents/ui/dataengine.qml index 6dcdf0d..3829673 100644 --- a/sources/awesome-widget/package/contents/ui/dataengine.qml +++ b/sources/awesome-widget/package/contents/ui/dataengine.qml @@ -167,8 +167,8 @@ Item { 'name': 'clementine' }, { - 'label': 'deadbeef', - 'name': 'deadbeef' + 'label': 'DeaDBeeF', + 'name': 'DeaDBeeF' }, { 'label': 'vlc',