<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/103101/">http://git.reviewboard.kde.org/r/103101/</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 10th, 2011, 11:30 a.m., <b>Aaron J. Seigo</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;">other than having to wait on the functionality in kdelibs (or performing the atom check directly in Task instead of relying on NetInfo), i wonder if this couldn't be merged into "Program Grouping" itself so that one does not need to choose between grouping by program or by tab collection. e.g. something along the lines of "group tabbed items together, everything else by program name" might fit the principle of least surprise and require people to do less configuration. thoughts?</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;">It can't perform the atom check directly in in libtaskmanager as it also needs to get changes directly, which wouldn't be easy to do in ltm directly.
The merge with programgroupingstrategy would need some discussion, how it should exactly handle conflicts, and could irritate the user if not done correctly (not sure how to do it correctly), so I would prefer to let it wait till after the feature freeze (And then wait till 4.9 or push it as a bug-fix).</pre>
<br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On November 10th, 2011, 11:30 a.m., <b>Aaron J. Seigo</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/103101/diff/1/?file=40755#file40755line96" style="color: black; font-weight: bold; text-decoration: underline;">libs/taskmanager/strategies/wintabgroupingstrategy.cpp</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">QString WinTabGroupingStrategy::className(AbstractGroupableItem *item)</pre></td>

  </tr>
 </tbody>




 
 



 <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">96</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span class="n">TaskGroup</span> <span class="o">*</span><span class="n">group</span> <span class="o">=</span> <span class="n">qobject_cast</span><span class="o"><</span><span class="n">TaskGroup</span><span class="o">*></span><span class="p">(</span><span class="n">item</span><span class="p">);</span></pre></td>
  </tr>

  <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">97</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span class="n">TaskItem</span> <span class="o">*</span><span class="n">task</span> <span class="o">=</span> <span class="n">qobject_cast</span><span class="o"><</span><span class="n">TaskItem</span><span class="o">*></span><span class="p">(</span><span class="n">group</span><span class="o">-></span><span class="n">members</span><span class="p">().</span><span class="n">first</span><span class="p">());</span> <span class="c1">//There are only TaskItems in programGrouping groups</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;">there is no point in doing qobject_casts if the values are never checked. either check the values or use static_casts</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;">Well I copied that part one by one from programgroupingstrategy, but I'm fine with changing it to static_cast.</pre>
<br />

<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On November 10th, 2011, 11:30 a.m., <b>Aaron J. Seigo</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/103101/diff/1/?file=40755#file40755line101" style="color: black; font-weight: bold; text-decoration: underline;">libs/taskmanager/strategies/wintabgroupingstrategy.cpp</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">QString WinTabGroupingStrategy::className(AbstractGroupableItem *item)</pre></td>

  </tr>
 </tbody>




 
 



 <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">101</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span class="k">return</span> <span class="p">(</span><span class="n">qobject_cast</span><span class="o"><</span><span class="n">TaskItem</span><span class="o">*></span><span class="p">(</span><span class="n">item</span><span class="p">))</span><span class="o">-></span><span class="n">task</span><span class="p">()</span><span class="o">-></span><span class="n">classClass</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;">indented too far</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;"></pre>
<br />




<p>- Anton</p>


<br />
<p>On November 10th, 2011, 3:59 p.m., Anton Kreuzkamp wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Plasma.</div>
<div>By Anton Kreuzkamp.</div>


<p style="color: grey;"><i>Updated Nov. 10, 2011, 3:59 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;">This patch adds a groupingstrategy that groups tasks by their tab group, from kwin's window tabbing feature.
Most of the code in wintabgroupingstrategy is copied from programgroupingstrategy.
This patch is based on https://git.reviewboard.kde.org/r/103099/ to be included in KDELibs 4.7</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;">Tested without problems so far.</pre>
  </td>
 </tr>
</table>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="http://bugs.kde.org/show_bug.cgi?id=224690">224690</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>libs/taskmanager/CMakeLists.txt <span style="color: grey">(c3848cf)</span></li>

 <li>libs/taskmanager/groupmanager.h <span style="color: grey">(760ddf1)</span></li>

 <li>libs/taskmanager/groupmanager.cpp <span style="color: grey">(b66c6fa)</span></li>

 <li>libs/taskmanager/strategies/wintabgroupingstrategy.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/taskmanager/strategies/wintabgroupingstrategy.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/taskmanager/task.h <span style="color: grey">(aa05176)</span></li>

 <li>libs/taskmanager/task_x11.cpp <span style="color: grey">(9b7d8cb)</span></li>

</ul>

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




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








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