[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdemultimedia/kmix
From: Christian Esken <esken () kde ! org>
Date: 2011-12-12 23:49:59
Message-ID: 20111212234959.CDC00AC881 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1268430 by esken:
Remove MPRIS2 Streams (Stream unplug)
CCBUGS: 288637
M +14 -0 backends/mixer_mpris2.cpp
M +14 -0 core/mixset.cpp
M +2 -0 core/mixset.h
--- trunk/KDE/kdemultimedia/kmix/backends/mixer_mpris2.cpp #1268429:1268430
@@ -312,8 +312,22 @@
Q_ARG(QString, _mixer->id()));
}
else if ( !oldOwner.isEmpty() && newOwner.isEmpty())
+ {
kDebug() << "Mediaplayer unregisters: " << name;
+ int lastDot = name.lastIndexOf('.');
+ QString id = ( lastDot == -1 ) ? name : name.mid(lastDot+1);
+ apps.remove(id);
+ m_mixDevices.removeById(id);
+ QMetaObject::invokeMethod(this,
+ "controlsReconfigured",
+ Qt::QueuedConnection,
+ Q_ARG(QString, _mixer->id()));
}
+ else
+ {
+ kWarning() << "Mediaplayer has registered under a new name. This is currently not supported by KMix";
+ }
+ }
}
--- trunk/KDE/kdemultimedia/kmix/core/mixset.cpp #1268429:1268430
@@ -76,3 +76,17 @@
}
return md;
}
+
+void MixSet::removeById(QString id)
+{
+ for (int i=0; i < count() ; i++ )
+ {
+ MixDevice* md = operator[](i);
+ if ( md->id() == id )
+ {
+ removeAt(i);
+ break;
+ }
+ }
+}
+
--- trunk/KDE/kdemultimedia/kmix/core/mixset.h #1268429:1268430
@@ -36,6 +36,8 @@
MixDevice* get(QString id);
+ void removeById(QString id);
+
private:
QString m_name;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic