<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/129057/">https://git.reviewboard.kde.org/r/129057/</a>
     </td>
    </tr>
   </table>
   <br />



<table bgcolor="#e0e0e0" width="100%" cellpadding="12" style="border: 1px gray solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>
   <h1 style="margin: 0; 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="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDE Frameworks and Plasma.</div>
<div>By Aleix Pol Gonzalez.</div>


<p style="color: grey;"><i>Updated Oct. 4, 2016, 9:58 p.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</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;">Submitted with commit bd970141ceb2390743072b75a751aba106585ac8 by Aleix Pol to branch master.</pre>
  </td>
 </tr>
</table>







<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
plasma-framework
</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I've been looking into what we're actually doing nowadays when we learn about a plasmoid at boot. I realized that we were doing a bit of a roundabout and there's definitely shorter paths.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">As far as I understood, what we're doing is:</p>
<ol style="padding: 0;text-rendering: inherit;margin: 0 0 0 2em;line-height: inherit;white-space: normal;">
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">We list all plugins and construct their KPluginMetaData</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">We get the metadata file path and send it to corona, that will create a KService::Ptr and then construct a KPluginInfo from it.</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">KPluginInfo in turn parses the file again. Since recently KPluginInfo is parsing the files twice
3.1. using KPluginMetaData
3.2. using KDesktopFileParser</li>
</ol>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This patch, tries to simplify 2 and 3 into a KPluginMetaData construction call.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Furthermore, this will allow us eventually (in a separate iteration, and everything works according to the plan) to load plugins from metadata.json which would make it possible to get rid of the internal usage of the desktopfileparser within kcoreaddons. (With something like this https://paste.kde.org/pth9wmasc)</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Tests still pass, plasmashell starts beautifully.</p></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>src/plasma/applet.h <span style="color: grey">(449f761)</span></li>

 <li>src/plasma/applet.cpp <span style="color: grey">(5e278dc)</span></li>

 <li>src/plasma/containment.cpp <span style="color: grey">(803887d)</span></li>

 <li>src/plasma/private/applet_p.h <span style="color: grey">(c3fe1d2)</span></li>

 <li>src/plasma/private/applet_p.cpp <span style="color: grey">(0f37fe5)</span></li>

 <li>src/plasma/private/storage.cpp <span style="color: grey">(8983128)</span></li>

 <li>src/plasma/scripting/appletscript.cpp <span style="color: grey">(42c0395)</span></li>

 <li>src/plasmaquick/appletquickitem.cpp <span style="color: grey">(95695d5)</span></li>

 <li>src/plasmaquick/configview.cpp <span style="color: grey">(b6ef7ac)</span></li>

 <li>src/scriptengines/qml/plasmoid/appletinterface.cpp <span style="color: grey">(466dbd8)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/129057/diff/" style="margin-left: 3em;">View Diff</a></p>






  </td>
 </tr>
</table>



  </div>
 </body>
</html>