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










<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On December 28th, 2015, 12:50 a.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="https://git.reviewboard.kde.org/r/122859/diff/2/?file=426323#file426323line405" style="color: black; font-weight: bold; text-decoration: underline;">src/declarativeimports/core/iconitem.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">405</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">            <span class="n">loadPixmap</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">huh? that just reloads the current image whenever visibility gets toggled. </p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">1) that's wrong since eike's patch. loadPixmap is deffered till a polish event before </p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">2) how does that fix anything?</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">What about just clear the m_iconPixmap here?</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%"><span style="color: #008000; font-weight: bold">void</span> <span style="color: #008000; font-weight: bold">IconItem</span><span style="color: #666666">:</span><span style="color: #AA22FF">:itemChange</span><span style="color: #666666">(</span><span style="color: #008000; font-weight: bold">ItemChange</span> <span style="color: #008000; font-weight: bold">change</span><span style="color: #666666">,</span> <span style="color: #008000; font-weight: bold">const</span> <span style="color: #008000; font-weight: bold">ItemChangeData</span> <span style="color: #666666">&</span><span style="color: #008000; font-weight: bold">value</span><span style="color: #666666">)</span>
{
    if (change <span style="color: #666666">==</span> ItemVisibleHasChanged <span style="color: #666666">&&</span> value<span style="color: #666666">.</span>boolValue) <span style="border: 1px solid #FF0000">{</span>
        <span style="color: #666666">//</span> Clear pixmap to disable animation
        m_iconPixmap <span style="color: #666666">=</span> QPixmap();
    }

    <span style="color: #008000; font-weight: bold">QQuickItem</span><span style="color: #666666">:</span><span style="color: #AA22FF">:itemChange</span><span style="color: #666666">(</span><span style="color: #008000; font-weight: bold">change</span><span style="color: #666666">,</span> <span style="color: #008000; font-weight: bold">value</span><span style="color: #666666">);</span>
<span style="border: 1px solid #FF0000">}</span>
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">loadPixmap() is called after the visibility change, so there will be no old pixmap to animate from.</p></pre>
<br />




<p>- David</p>


<br />
<p>On December 28th, 2015, 12:17 a.m. UTC, Kai Uwe Broulik wrote:</p>








<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 Plasma.</div>
<div>By Kai Uwe Broulik.</div>


<p style="color: grey;"><i>Updated Dec. 28, 2015, 12:17 a.m.</i></p>









<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;">We have a lot of reusable singletons that are just hidden when unneeded (tooltip, osd). IconItem, however, will always fade from the previous state, even if the previous action happened minutes ago.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This patch makes it track its visibility and skip the fade-and-wait dance when it just became visible. It also removes a visible false call in the tooltip which I didn't know what it was for. (With it in place, the IconItem always becomes visible when moving between tooltip areas, breaking the animation altogether).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">@Eike: Could you check whether this makes it more viable for Kicker?</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;">Moving between tray icons - icon fades, moving reaaaally rapidly causes it not to load any icon until you halt (dunno if that happened before but doesn't seem too bad)
Hovering tray icon, leaving, waiting, hovering another one - icon does not fade, is there right away
Notifications also don't fade from the previously issued notification icon</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/declarativeimports/core/iconitem.h <span style="color: grey">(528f57c)</span></li>

 <li>src/declarativeimports/core/iconitem.cpp <span style="color: grey">(1e8260e)</span></li>

 <li>src/declarativeimports/core/tooltip.cpp <span style="color: grey">(a5e223b)</span></li>

</ul>

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






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







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