<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/113066/">http://git.reviewboard.kde.org/r/113066/</a>
</td>
</tr>
</table>
<br />
<table bgcolor="#e0e0e0" width="100%" cellpadding="8" style="border: 1px gray solid;">
<tr>
<td>
<h1 style="margin-right: 0.2em; padding: 0; font-size: 10pt;">This change has been marked as submitted.</h1>
</td>
</tr>
</table>
<br />
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for Telepathy.</div>
<div>By Xuetian Weng.</div>
<p style="color: grey;"><i>Updated Oct. 8, 2013, 10:37 a.m.</i></p>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>
<a href="http://bugs.kde.org/show_bug.cgi?id=307582">307582</a>,
<a href="http://bugs.kde.org/show_bug.cgi?id=313126">313126</a>
</div>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt;">Repository: </b>
ktp-kded-module
</div>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">This patch contains following changes:
1. disconnect for PropertiesChanges when knownPlayer is reset, the disappered service will not automatically disconnect from dbus.
2. change the "Enable" option to "Enable On Login" (bug 307582) and hence we can simplifies the logic (no more presenceActivated)
3. Changes now playing status at contact list will be remembered only for current login.
4. Fix the wrong behavior of handling PropertiesChanges (invalidate properties is not considered).
5. use requestedPresence to evaluate the current status (part of bug 313126)
6. since it changes to "Enable On Login", always enable the nowplaying text lineedit in kcm.
Current logic:
1. If the enabled option in config changes, set the plugin enable state (this must be caused by user change in kcm).
2. receive onActivate / onDeactivate from contact list, set the plugin enable state.
3. when enable state change to true, start detecting player. (activatePlugin(bool))
4. when enable state change to false, unwatch all player, reset all other state. (activatePlugin(bool))
5. when new player appears, request playbackStatus and metadata by GetAll, and then watch on the PropertiesChange for this player.
Some improvement:
1. not always listening on expensive serviceOwnerChanged.
2. be able to enable nowplaying on login.
3. fix leak connection of dbus signal.
4. code should now be clearer instead of having too much boolean check.
</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Everything seems to work as expected.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>config/telepathy-kded-config.cpp <span style="color: grey">(953a637)</span></li>
<li>telepathy-mpris.h <span style="color: grey">(e3378d4)</span></li>
<li>telepathy-mpris.cpp <span style="color: grey">(6cd3e20)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/113066/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>