mirror of https://github.com/KDE/kasts.git
[KMediaSession] Allow app and desktop entry name to be set in constructor
This commit is contained in:
parent
e1a20b3ebc
commit
780e63c2f2
|
@ -27,7 +27,7 @@ class AudioManagerPrivate
|
||||||
private:
|
private:
|
||||||
SolidExtras::NetworkStatus m_networkStatus;
|
SolidExtras::NetworkStatus m_networkStatus;
|
||||||
|
|
||||||
KMediaSession m_player;
|
KMediaSession m_player = KMediaSession(QStringLiteral("kasts"), QStringLiteral("org.kde.kasts"));
|
||||||
|
|
||||||
Entry *m_entry = nullptr;
|
Entry *m_entry = nullptr;
|
||||||
bool m_readyToPlay = false;
|
bool m_readyToPlay = false;
|
||||||
|
@ -57,8 +57,6 @@ AudioManager::AudioManager(QObject *parent)
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
, d(std::make_unique<AudioManagerPrivate>())
|
, d(std::make_unique<AudioManagerPrivate>())
|
||||||
{
|
{
|
||||||
d->m_player.setPlayerName(QStringLiteral("kasts"));
|
|
||||||
d->m_player.setDesktopEntryName(QStringLiteral("org.kde.kasts"));
|
|
||||||
d->m_player.setMpris2PauseInsteadOfStop(true);
|
d->m_player.setMpris2PauseInsteadOfStop(true);
|
||||||
|
|
||||||
connect(&d->m_player, &KMediaSession::currentBackendChanged, this, &AudioManager::currentBackendChanged);
|
connect(&d->m_player, &KMediaSession::currentBackendChanged, this, &AudioManager::currentBackendChanged);
|
||||||
|
|
|
@ -45,16 +45,14 @@ private:
|
||||||
std::unique_ptr<Mpris2> m_mpris;
|
std::unique_ptr<Mpris2> m_mpris;
|
||||||
MetaData *m_meta = nullptr;
|
MetaData *m_meta = nullptr;
|
||||||
|
|
||||||
QString m_playerName =
|
QString m_playerName;
|
||||||
KAboutData::applicationData().displayName().isEmpty() ? QStringLiteral("KMediaSession") : KAboutData::applicationData().displayName();
|
QString m_desktopEntryName;
|
||||||
QString m_desktopEntryName =
|
|
||||||
KAboutData::applicationData().desktopFileName().isEmpty() ? QStringLiteral("org.kde.kmediasession") : KAboutData::applicationData().desktopFileName();
|
|
||||||
bool m_mpris2PauseInsteadOfStop = false;
|
bool m_mpris2PauseInsteadOfStop = false;
|
||||||
bool m_canGoNext = false;
|
bool m_canGoNext = false;
|
||||||
bool m_canGoPrevious = false;
|
bool m_canGoPrevious = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
KMediaSession::KMediaSession(QObject *parent)
|
KMediaSession::KMediaSession(const QString &playerName, const QString &desktopEntryName, QObject *parent)
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
, d(std::make_unique<KMediaSessionPrivate>())
|
, d(std::make_unique<KMediaSessionPrivate>())
|
||||||
{
|
{
|
||||||
|
@ -75,6 +73,13 @@ KMediaSession::KMediaSession(QObject *parent)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// set up mpris2
|
// set up mpris2
|
||||||
|
d->m_playerName = playerName.isEmpty()
|
||||||
|
? (KAboutData::applicationData().displayName().isEmpty() ? QStringLiteral("KMediaSession") : KAboutData::applicationData().displayName())
|
||||||
|
: playerName;
|
||||||
|
d->m_desktopEntryName = desktopEntryName.isEmpty()
|
||||||
|
? (KAboutData::applicationData().desktopFileName().isEmpty() ? QStringLiteral("org.kde.kmediasession")
|
||||||
|
: KAboutData::applicationData().desktopFileName())
|
||||||
|
: desktopEntryName;
|
||||||
d->m_mpris = std::make_unique<Mpris2>(this);
|
d->m_mpris = std::make_unique<Mpris2>(this);
|
||||||
|
|
||||||
qCDebug(KMediaSessionLog) << "KMediaSession::KMediaSession end";
|
qCDebug(KMediaSessionLog) << "KMediaSession::KMediaSession end";
|
||||||
|
|
|
@ -86,7 +86,7 @@ public:
|
||||||
};
|
};
|
||||||
Q_ENUM(Error)
|
Q_ENUM(Error)
|
||||||
|
|
||||||
explicit KMediaSession(QObject *parent = nullptr);
|
explicit KMediaSession(const QString &playerName = QStringLiteral(""), const QString &desktopEntryName = QStringLiteral(""), QObject *parent = nullptr);
|
||||||
~KMediaSession();
|
~KMediaSession();
|
||||||
|
|
||||||
[[nodiscard]] Q_INVOKABLE QString backendName(KMediaSession::MediaBackends backend) const;
|
[[nodiscard]] Q_INVOKABLE QString backendName(KMediaSession::MediaBackends backend) const;
|
||||||
|
|
Loading…
Reference in New Issue