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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On November 29th, 2015, 11:25 p.m. UTC, <b>David Edmundson</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><blockquote style="text-rendering: inherit;padding: 0 0 0 1em;border-left: 1px solid #bbb;white-space: normal;margin: 0 0 0 0.5em;line-height: inherit;">
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">MoseMove is too expensive event to be redirect, it can cause problems on slow CPU's.</p>
</blockquote>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I don't see how. 
It's no different to when the mouse is actually over the containment.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The case for when you're in the 4px margin at the edge of the panel seems like it must be tiny.</p></pre>
 </blockquote>




 <p>On November 30th, 2015, 4:39 a.m. UTC, <b>Anthony Fieroni</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <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;">First of all, you don't understaind the problem at all. Every postEvent is expensive, not for allocating memory, case event is append to queque. Here problem is simple - QEvent::Leave is append to queque <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">before</em> MouseMove, this behavior can be easy preproduce at slower CPU's like mine. To make redirect on evey mousemove is not only stupid, it's more expencive than any other event.</p></pre>
 </blockquote>





 <p>On November 30th, 2015, 5:15 a.m. UTC, <b>Anthony Fieroni</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <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;">Even more, on lower CPU event queque may increase it size case busy processor, this can cause slowdowns, flickers, example: widgets in system tray when has expand view by click on item, task window <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">must not</em> seen in taskmanager, but some time on lower CPU, when it be busy, postEvent is appended <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">after</em> event that window must be ignore for taskmanager, this cause visual flicker in taskmanager. http://tinypic.com/player.php?v=6ft8gn%3E&s=9 You can see blue flicker in taskmanager, cause postEvent is expensive when CPU is busy, this cannot see on better CPU.</p></pre>
 </blockquote>





 <p>On November 30th, 2015, 8:35 a.m. UTC, <b>David Edmundson</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <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;">This breaks highlighting the correct item when the mouse is at the bottom of the screen and you slide along next to (but not on) the task manager.</p></pre>
 </blockquote>





 <p>On November 30th, 2015, 8:46 a.m. UTC, <b>Anthony Fieroni</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <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;">I can add exclusive check for bottom edge. But for me it's better break this except everything else :)</p></pre>
 </blockquote>








</blockquote>

<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;">That was one example, clearly it applies to every edge the panel might be on. And everyone things the bug that annoys them is worse than the bug that affects others. :P</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">What's frustrating is I think we're quite close to solving things properly, you've clearly identified where the real problem is. We should be able to do this without any regressions. </p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The whole problem with the current code in PanelView is the containment is handling it's own mouseEnter, mouseLeave, but the panelview is proxying in some mouse events, and then those two get out of sync.
It's not about the speed of the postEvent, it's always going to happen in that order until someone fixes that underlying problem. Disabling mouseMoves doesn't fix that as we still effectively have the same problem with mouse presses and drags, just the symptoms might not be as visible.</p></pre>
<br />










<p>- David</p>


<br />
<p>On November 28th, 2015, 3:30 a.m. UTC, Anthony Fieroni 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, David Edmundson and Marco Martin.</div>
<div>By Anthony Fieroni.</div>


<p style="color: grey;"><i>Updated Nov. 28, 2015, 3:30 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="https://bugs.kde.org/show_bug.cgi?id=354651">354651</a>


</div>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
plasma-workspace
</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;">You can see videos in bug repot</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;">I test patch and all works as expected.
http://doc.qt.io/qt-5/qevent.html
QEvent::Leave   11  Mouse leaves widget's boundaries.</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>shell/panelview.cpp <span style="color: grey">(3407501)</span></li>

</ul>

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






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







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