Creating one from an empty string prints a warning and here we don't actually need
a fully-fledged QDBusObjectPath, we can just compare strings.
BUG: 383557
Differential Revision: https://phabricator.kde.org/D7538
Summary:
The lockscreen uses the MPRIS dataengine. This leads to two applications
registring the service using the same component name which leads to the
shortcuts not working when the lock screen closes.
We want to have the applet register the shortcuts, but not every
dataengine user.
Ideally this shouldn't be in the dataengine either because DataEngines
are read only. This moves the logic to the service which is writable and
registers the shortcuts for the multiplexer there when requested from
the applet.
BUG: 380526
FIXED-IN: 5.10.1
Test Plan:
Opened media player.
Used play/pause shortcut. (the only one my keyboard has)
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6100
Summary: This is needed so Plasma::DataEngine can construct the metadata
Test Plan: Debug. Lots of debug.
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D4554
QDBusArgument MapType fits all kinds of maps but when we try to stream a map of type
other than a{sv} (which the MRPIS spec requires) into a QVariantMap we would crash.
Explicitly check signature to avoid this.
BUG: 374531
FIXED-IN: 5.8.6
The MPRIS specification recommends to media players to distinguish instances of
them by appending its process id. For example this is supported by the Dragon
Player. The patch makes it possible for connected clients of MPRIS Dataengine
to query this directly and by that distinguish multiple instances of a player.
While clients were able to do this earlier already by checking the source name
and doing the same string operations as here, it's more convenient with this
patch, since they then don't have to do it on their own anymore but just need
to query the data.
Reviewers: #Plasma, davidedmundson
Tags: #Plasma
Differential Revision: https://phabricator.kde.org/D3667
While investingating properties of the MPRIS dataengine, I have noitced
that the :xsesam:url property in the metadata was encoded incorrectly. I
have several folders containing music with non-Latin characters, and
they showed up as ????.
After a quick chat with kbroulik on IRC, I decided to make this patch,
which uses UTF-8 instead.
Differential Revision: https://phabricator.kde.org/D2732
Summary:
Also set a consistent naming structure and to be only Info+ by default.
This may mean you need to update your logging rules if you want debug
output.
Reviewers: #plasma, hein
Reviewed By: #plasma, hein
Subscribers: graesslin, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D1956
is possible it's null for an instant when the player quits
a call to start() in the moment between the app is closed and
the teardown is done is unlikely but apparently happens
BUG:361985
is possible it's null for an instant when the player quits
a call to start() in the moment between the app is closed and
the teardown is done is unlikely but apparently happens
BUG:361985
Current usage of QDBusServiceWatcher is not a intended feature and will
be removed in Qt 5.6 (see https://bugreports.qt.io/browse/QTBUG-51683 ).
Use the old fashioned QDBusConnectionInterface::serviceOwnerChanged to
implement the same thing.
REVIEW: 127285
If there was a vlc engine it got skipped due to a bug in VLC. This
bug seems to be fixed as of VLC 2.1.5 which contains the following
item in the changelog:
"dbus: Upgrade to an mpris2 compliant interface"
Given that the workaround breaks with the fixed VLC (no media control
at all), it's better to drop it and brake VLC installations which
haven't updated for more than half a year.
REVIEW: 122589
Instead of having the media control shortcuts being grouped under
"plasmashell" a dedicated component "Media Controller" is added and all
shortcuts are assigned to it.
This solves the problem if multiple processes include the dataengine, the
shortcuts would be registered in each application.
REVIEW: 122588
The multiplexer registers global shortcuts for:
* play/pause
* next
* previous
* stop
and delegates them to the active player if triggered.
This could mean that media shortcuts for non mpris2 enabled
applications might break. The advantage is that we have global
shortcuts for media control.
BUG: 341587
FIXED-IN: 5.3.0
REVIEW: 122437