forked from quickshell/quickshell
service/mpris: expose desktopEntry property
This commit is contained in:
parent
f2df3da596
commit
ac339cb23b
|
@ -60,6 +60,7 @@ MprisPlayer::MprisPlayer(const QString& address, QObject* parent): QObject(paren
|
|||
QObject::connect(&this->pCanRaise, &AbstractDBusProperty::changed, this, &MprisPlayer::canRaiseChanged);
|
||||
QObject::connect(&this->pCanSetFullscreen, &AbstractDBusProperty::changed, this, &MprisPlayer::canSetFullscreenChanged);
|
||||
QObject::connect(&this->pIdentity, &AbstractDBusProperty::changed, this, &MprisPlayer::identityChanged);
|
||||
QObject::connect(&this->pDesktopEntry, &AbstractDBusProperty::changed, this, &MprisPlayer::desktopEntryChanged);
|
||||
QObject::connect(&this->pFullscreen, &AbstractDBusProperty::changed, this, &MprisPlayer::fullscreenChanged);
|
||||
QObject::connect(&this->pSupportedUriSchemes, &AbstractDBusProperty::changed, this, &MprisPlayer::supportedUriSchemesChanged);
|
||||
QObject::connect(&this->pSupportedMimeTypes, &AbstractDBusProperty::changed, this, &MprisPlayer::supportedMimeTypesChanged);
|
||||
|
@ -155,6 +156,7 @@ bool MprisPlayer::canRaise() const { return this->pCanRaise.get(); }
|
|||
bool MprisPlayer::canSetFullscreen() const { return this->pCanSetFullscreen.get(); }
|
||||
|
||||
QString MprisPlayer::identity() const { return this->pIdentity.get(); }
|
||||
QString MprisPlayer::desktopEntry() const { return this->pDesktopEntry.get(); }
|
||||
|
||||
qlonglong MprisPlayer::positionMs() const {
|
||||
if (!this->positionSupported()) return 0; // unsupported
|
||||
|
|
|
@ -68,6 +68,8 @@ class MprisPlayer: public QObject {
|
|||
Q_PROPERTY(bool canSetFullscreen READ canSetFullscreen NOTIFY canSetFullscreenChanged);
|
||||
/// The human readable name of the media player.
|
||||
Q_PROPERTY(QString identity READ identity NOTIFY identityChanged);
|
||||
/// The name of the desktop entry for the media player, or an empty string if not provided.
|
||||
Q_PROPERTY(QString desktopEntry READ desktopEntry NOTIFY desktopEntryChanged);
|
||||
/// The current position in the playing track, as seconds, with millisecond precision,
|
||||
/// or `0` if `positionSupported` is false.
|
||||
///
|
||||
|
@ -204,6 +206,7 @@ public:
|
|||
[[nodiscard]] bool canSetFullscreen() const;
|
||||
|
||||
[[nodiscard]] QString identity() const;
|
||||
[[nodiscard]] QString desktopEntry() const;
|
||||
|
||||
[[nodiscard]] qlonglong positionMs() const;
|
||||
[[nodiscard]] qreal position() const;
|
||||
|
@ -255,6 +258,7 @@ signals:
|
|||
void canRaiseChanged();
|
||||
void canSetFullscreenChanged();
|
||||
void identityChanged();
|
||||
void desktopEntryChanged();
|
||||
void positionChanged();
|
||||
void positionSupportedChanged();
|
||||
void lengthChanged();
|
||||
|
@ -287,6 +291,7 @@ private:
|
|||
// clang-format off
|
||||
dbus::DBusPropertyGroup appProperties;
|
||||
dbus::DBusProperty<QString> pIdentity {this->appProperties, "Identity"};
|
||||
dbus::DBusProperty<QString> pDesktopEntry {this->appProperties, "DesktopEntry", "", false};
|
||||
dbus::DBusProperty<bool> pCanQuit {this->appProperties, "CanQuit"};
|
||||
dbus::DBusProperty<bool> pCanRaise {this->appProperties, "CanRaise"};
|
||||
dbus::DBusProperty<bool> pFullscreen {this->appProperties, "Fullscreen", false, false};
|
||||
|
|
Loading…
Reference in a new issue