Telephony and pausemusic plugins now use kdeconnect.telephony packages (need changes in the Android code to work)
This commit is contained in:
parent
3d6178ae95
commit
d32a667f04
4 changed files with 10 additions and 19 deletions
|
@ -13,6 +13,5 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
|
||||||
add_subdirectory(daemon)
|
add_subdirectory(daemon)
|
||||||
add_subdirectory(kcm)
|
add_subdirectory(kcm)
|
||||||
#add_subdirectory(kioslave)
|
|
||||||
|
|
||||||
add_subdirectory(test)
|
add_subdirectory(test)
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
#define PACKAGE_TYPE_PING QString("kdeconnect.ping")
|
#define PACKAGE_TYPE_PING QString("kdeconnect.ping")
|
||||||
#define PACKAGE_TYPE_NOTIFICATION QString("kdeconnect.notification")
|
#define PACKAGE_TYPE_NOTIFICATION QString("kdeconnect.notification")
|
||||||
#define PACKAGE_TYPE_BATTERY QString("kdeconnect.battery")
|
#define PACKAGE_TYPE_BATTERY QString("kdeconnect.battery")
|
||||||
#define PACKAGE_TYPE_CALL QString("kdeconnect.call")
|
#define PACKAGE_TYPE_TELEPHONY QString("kdeconnect.telephony")
|
||||||
#define PACKAGE_TYPE_CLIPBOARD QString("kdeconnect.clipboard")
|
#define PACKAGE_TYPE_CLIPBOARD QString("kdeconnect.clipboard")
|
||||||
#define PACKAGE_TYPE_MPRIS QString("kdeconnect.mpris")
|
#define PACKAGE_TYPE_MPRIS QString("kdeconnect.mpris")
|
||||||
|
|
||||||
|
|
|
@ -41,28 +41,20 @@ PauseMusicPlugin::PauseMusicPlugin(QObject* parent, const QVariantList& args)
|
||||||
|
|
||||||
bool PauseMusicPlugin::receivePackage(const NetworkPackage& np)
|
bool PauseMusicPlugin::receivePackage(const NetworkPackage& np)
|
||||||
{
|
{
|
||||||
|
if (np.type() != PACKAGE_TYPE_TELEPHONY) return false;
|
||||||
|
|
||||||
bool pauseConditionFulfilled = false;
|
//TODO: Test this logic again
|
||||||
|
|
||||||
//TODO: I have manually tested it and it works for both "pauseWhen" cases, but I should somehow write a test for this logic
|
|
||||||
if (pauseWhen == PauseWhenRinging) {
|
if (pauseWhen == PauseWhenRinging) {
|
||||||
if (np.type() == PACKAGE_TYPE_NOTIFICATION) {
|
if (np.get<QString>("event") != "ringing" || np.get<QString>("event") != "talking") return false;
|
||||||
if (np.get<QString>("notificationType") != "ringing") return false;
|
|
||||||
pauseConditionFulfilled = !np.get<bool>("isCancel");
|
|
||||||
} else if (np.type() == PACKAGE_TYPE_CALL) {
|
|
||||||
pauseConditionFulfilled = !np.get<bool>("isCancel");
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else if (pauseWhen == PauseWhenTalking){
|
} else if (pauseWhen == PauseWhenTalking){
|
||||||
if (np.type() != PACKAGE_TYPE_CALL) return false;
|
if (np.get<QString>("event") != "talking") return false;
|
||||||
pauseConditionFulfilled = !np.get<bool>("isCancel");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool pauseConditionFulfilled = !np.get<bool>("isCancel");
|
||||||
|
|
||||||
qDebug() << "PauseMusicPackageReceiver - PauseCondition:" << pauseConditionFulfilled;
|
qDebug() << "PauseMusicPackageReceiver - PauseCondition:" << pauseConditionFulfilled;
|
||||||
|
|
||||||
//TODO: Make this async
|
|
||||||
//TODO: Make this not crash if dbus is not working
|
|
||||||
if (pauseConditionFulfilled) {
|
if (pauseConditionFulfilled) {
|
||||||
//Search for interfaces currently playing
|
//Search for interfaces currently playing
|
||||||
QStringList interfaces = QDBusConnection::sessionBus().interface()->registeredServiceNames().value();
|
QStringList interfaces = QDBusConnection::sessionBus().interface()->registeredServiceNames().value();
|
||||||
|
@ -78,7 +70,7 @@ bool PauseMusicPlugin::receivePackage(const NetworkPackage& np)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} if (!pauseConditionFulfilled) {
|
} else {
|
||||||
Q_FOREACH (const QString& iface, pausedSources) {
|
Q_FOREACH (const QString& iface, pausedSources) {
|
||||||
QDBusInterface mprisInterface(iface, "/org/mpris/MediaPlayer2", "org.mpris.MediaPlayer2.Player");
|
QDBusInterface mprisInterface(iface, "/org/mpris/MediaPlayer2", "org.mpris.MediaPlayer2.Player");
|
||||||
//Calling play does not work in spotify
|
//Calling play does not work in spotify
|
||||||
|
|
|
@ -125,7 +125,7 @@ void TelephonyPlugin::showPendingNotifications()
|
||||||
bool TelephonyPlugin::receivePackage(const NetworkPackage& np)
|
bool TelephonyPlugin::receivePackage(const NetworkPackage& np)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (np.type() != PACKAGE_TYPE_NOTIFICATION) return false;
|
if (np.type() != PACKAGE_TYPE_TELEPHONY) return false;
|
||||||
|
|
||||||
if (np.get<bool>("isCancel")) {
|
if (np.get<bool>("isCancel")) {
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue