<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="https://git.reviewboard.kde.org/r/122174/">https://git.reviewboard.kde.org/r/122174/</a>
</td>
</tr>
</table>
<br />
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
<tr>
<td>
<div>Review request for kdeconnect.</div>
<div>By Saikrishna Arcot.</div>
<p style="color: grey;"><i>Updated Jan. 25, 2015, 2:50 p.m.</i></p>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt;">Repository: </b>
kdeconnect-kde
</div>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description (updated)</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Add initial bluetooth backend implementation.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This is based on the frameworks branch.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">getPairedDevices()</code> method in the link provider class uses D-Bus to get the list of paired devices, since Qt doesn't have a method giving that information. As a result, that part of the code only works on Linux.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Note that the Qt Connectivity package in Ubuntu 14.04 and 14.10 doesn't include support for BlueZ, as it wasn't compiled with the BlueZ headers. I recompiled the package for 14.10 and is available <a href="https://launchpad.net/~saiarcot895/+archive/ubuntu/myppa" style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">here</a>.</p></pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing (updated)</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">KDE Connect runs, and the bluetooth service gets published in the SDP (service discovery protocol), which other devices use to determine what services are available.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Android as client and KDE as server: My Android (4.1.2) sees the KDE connect service and tries to connect to it, but fails most of the time. Sometimes, it succeeds and creates a connection. I haven't been able to find out why it's failing the rest of the time. Newer versions of Android (4.2 and higher) might have better luck, since the Bluetooth code was changed.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">When it does connect, one time, I was able to pair the devices together (from my Android), and was able to send a ping, use the touchpad, and control my media player on my Android. The pairing data doesn't seem to be stored, as Android isn't remembering the KDE, which may mean I'm missing something in the code.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Sending a pair request from KDE to Android results in KDE Connect crashing on Android. I'm not sure why that is, since the debugger didn't pause at the crashing line and there doesn't seem to be anything in the logs.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Android as server and KDE as client: I was able to "connect" to the Android acting as a server. I say "connect" because while Android reported that the device was connected, Qt didn't emit the connected signal. For now, I've disabled the KDE-as-client part of the code.</p></pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> (updated)</h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>CMakeLists.txt <span style="color: grey">(5b916d929dfa3f3304a8ac84e7ef6c19f9aa4663)</span></li>
<li>core/CMakeLists.txt <span style="color: grey">(17209b1a801b33d99e31a4b19eac45df2fa6fe02)</span></li>
<li>core/backends/bluetooth/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/backends/bluetooth/bluetoothdevicelink.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/backends/bluetooth/bluetoothdevicelink.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/backends/bluetooth/bluetoothlinkprovider.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/backends/bluetooth/bluetoothlinkprovider.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/backends/devicelinereader.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/backends/devicelinereader.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>core/daemon.cpp <span style="color: grey">(57548e5a671b7694125e733db06a58eebbadd264)</span></li>
</ul>
<p><a href="https://git.reviewboard.kde.org/r/122174/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>