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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On January 16th, 2015, 5:13 p.m. CET, <b>Thomas Lübking</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;">Wrt the other patches, using NETIcon over there, the requirement in KWin and likely libtaskbar (ie. keep this in sync):
What do you think about extending the API by allowing to optionally feed in the required elements?</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">QIcon KWindowSystem::completeIcon(WId win, int flags, NETWinInfo <em style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">nwi = nullptr, XWMHints </em>xhints = nullptr, QString className = QString());</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The function would then (in case nwi is supplied) check passedProperties() to see whether icons and/or classname can be fetched from there (unless classname is explicitly trumped by the last parameter)</p></pre>
 </blockquote>




 <p>On January 16th, 2015, 6:42 p.m. CET, <b>Eike Hein</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;">Regarding keeping things in sync: I've prepared a changeset to libtaskmanager that deletes around 90% of stunningly redundant icon code and will replace it with a call to KWindowSystem::icons(). It won't pass the ClassHint flag though to avoid an additional XGetClassHint in KWS since it has the ClassHint already, so it will do the fallback itself.</p></pre>
 </blockquote>





 <p>On January 17th, 2015, 12:03 a.m. CET, <b>Thomas Lübking</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;">Ie. you'd benefit from such extended API?</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Do you have a NETWindowInfo or the XWMHints around as well (for a different purpose, like the input flag or the window group)?</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;"><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;">QIcon KWindowSystem::completeIcon(WId win, int flags, NETWinInfo nwi = nullptr, XWMHints xhints = nullptr, QString className = QString());</p>
</blockquote>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I thought about it when implementing it, but I fear we cannot do it as NETWinInfo is only available on X11. So it's unsuited for the cross-platform API. Though maybe one could do something with forward declaring it. XWMHints and the classname shouldn't be needed as both should be possible to take from NETWinInfo (at least we have a replacement for XWMHints in NETWinInfo, we just need to add reading out the pixmap hint).</p></pre>
<br />










<p>- Martin</p>


<br />
<p>On January 16th, 2015, 1:55 p.m. CET, Martin Gräßlin 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 KDE Frameworks.</div>
<div>By Martin Gräßlin.</div>


<p style="color: grey;"><i>Updated Jan. 16, 2015, 1:55 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kwindowsystem
</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;">::icons tries to retrieve all available icon sizes and combine them
into a single QIcon. On the X11 platform this can significantly
reduce the time needed to fetch all available icons compared to the
already existing ::icon methods which return a QPixmap of a specific
size.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The change includes a new test application "icontest" which shows all
available icons in all available sizes for a window id passed as
command line argument.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">CHANGELOG: New method QIcon KWindowSystem::icons(WId win, int flags)</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/kwindowsystem.h <span style="color: grey">(322322f12dda7279567be8420533ed22cffffd52)</span></li>

 <li>src/kwindowsystem.cpp <span style="color: grey">(65d215b6dfbf4df22e871fd7187fface75abb61b)</span></li>

 <li>src/kwindowsystem_p.h <span style="color: grey">(1f01145b5c7efe925fcb8242f92af17b704e01c9)</span></li>

 <li>src/kwindowsystem_p_x11.h <span style="color: grey">(0d4b6ba551776d2fa08030f78226ecdb3c80c889)</span></li>

 <li>src/kwindowsystem_x11.cpp <span style="color: grey">(bf958ae63b48424fc412405259f082b740928f9a)</span></li>

 <li>tests/CMakeLists.txt <span style="color: grey">(ce68cc505a69ea9a3cf645e9ae587bd89abe1648)</span></li>

 <li>tests/icontest.cpp <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

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






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








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