<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/111256/">http://git.reviewboard.kde.org/r/111256/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On June 26th, 2013, 9:16 p.m. UTC, <b>David Edmundson</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="http://git.reviewboard.kde.org/r/111256/diff/2/?file=165907#file165907line213" style="color: black; font-weight: bold; text-decoration: underline;">kpeople/common/impersonsdatasource.cpp</a>
<span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
<th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">213</font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="n">Tp</span><span class="o">::</span><span class="n">AccountPtr</span> <span class="n">IMPersonsDataSource</span><span class="o">::</span><span class="n">accountForContactId</span><span class="p">(</span><span class="k">const</span> <span class="n">QString</span> <span class="o">&</span><span class="n">contactId</span><span class="p">)</span> <span class="k">const</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Turns out this isn't ideal, if I do "group by accounts" whilst one of my accounts is offline, everything freezes for quite some time.
I have a cunning plan on how to fix this:
- we create a new PersonsModelFeature that includes the IM accountID as a new model role, using most of this query here. This will be in KTp code only, not in libkpeople as it is very app-specific
- We then have an accountID which we can use in KTpTranslationProxyModel for KTp::AccountRole.
Not too important to discuss here.
</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Yeah, especially because it's a sync query. +1000 on KTp specific feature.</pre>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On June 26th, 2013, 9:16 p.m. UTC, <b>David Edmundson</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="http://git.reviewboard.kde.org/r/111256/diff/2/?file=165907#file165907line242" style="color: black; font-weight: bold; text-decoration: underline;">kpeople/common/impersonsdatasource.cpp</a>
<span style="font-weight: normal;">
(Diff revision 2)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
<th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">242</font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="k">return</span> <span class="n">d</span><span class="o">-></span><span class="n">contactManager</span><span class="o">-></span><span class="n">accountForAccountId</span><span class="p">(</span><span class="n">accountPath</span><span class="p">.</span><span class="n">remove</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">35</span><span class="p">));</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">FWIW, I think the reason we do objectPath is so we could do
Tp::AccountPtr = Tp::Account::create(objectPath);
rather than going through the AM.</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I don't think you can do just that, it would miss all the AM features, no? That's why it goes through it.</pre>
<br />
<p>- Martin</p>
<br />
<p>On June 26th, 2013, 2:33 p.m. UTC, David Edmundson wrote:</p>
<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 David Edmundson.</div>
<p style="color: grey;"><i>Updated June 26, 2013, 2:33 p.m.</i></p>
<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;">Import the KPeople KTP integration plugins
There are two plugins, one for the datasource which provides
IM data in real time.
The other is an actions plugin which provides actions that can be started on a PersonsData.
We need to provide KTp integration into libkpeople in a plugin, but we also want to access this
singleton of accounts/contacts from the other plugin and from the KTp Models. To do this a static library
ktpkpeople is created and everything links against that.
KTp Models the actions plugin and the im data source all link against this.
</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>CMakeLists.txt <span style="color: grey">(a83069d59fed945d04560662e3a307ef33b28332)</span></li>
<li>KTp/Models/CMakeLists.txt <span style="color: grey">(720a5b02465b825b08d12d7c43342ad1ba69c9d1)</span></li>
<li>kpeople/actionsplugin/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/actionsplugin/implugin.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/actionsplugin/implugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/actionsplugin/ktp_kpeople_plugin.desktop <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/common/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/common/impersonsdatasource.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/common/impersonsdatasource.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/datasourceplugin/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/datasourceplugin/im_persons_data_source_plugin.desktop <span style="color: grey">(PRE-CREATION)</span></li>
<li>kpeople/datasourceplugin/impersonsdatasourceplugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/111256/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>