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








<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On August 29th, 2011, 9:28 a.m., <b>Albert Astals Cid</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/102358/diff/1/?file=32144#file32144line1258" style="color: black; font-weight: bold; text-decoration: underline;">ui/pageview.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="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">void PageView::paintEvent(QPaintEvent *pe)</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">1258</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span class="k">if</span> <span class="p">(</span><span class="n">d</span><span class="o">-></span><span class="n">TblCols</span><span class="p">.</span><span class="n">length</span><span class="p">()</span> <span class="o">||</span> <span class="n">d</span><span class="o">-></span><span class="n">TblRows</span><span class="p">.</span><span class="n">length</span><span class="p">())</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;">Have not tried, but does this survive zooming in/out of the document?</pre>
 </blockquote>



 <p>On August 29th, 2011, noon, <b>Jiri Baum</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;">Ah, no it doesn't. Neither does the selection tool, from which I was copying, but I guess zooming in/out while holding down the mouse button is not a common use case.

How would you recommend I fix this, please? I'm not particularly familiar with the internals of okular, so I've been mostly copying from the Selection Tool, and it has the same behaviour...</pre>
 </blockquote>





 <p>On August 29th, 2011, 2:52 p.m., <b>Albert Astals Cid</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;">I guess storing the normalized coordinates and then multiplying accordingly to the size is the way to go. Unrelated to this line, but related to the painting, does opening a different file in the same okular instance clear correctly the painting?</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;">OK, opening a different file is easy to watch for and call selectionClear(), done.

However, with the normalized coordinates, that seems a bit more difficult. NormalizedRect is relative to a PageViewItem, but the selection can span more than one. Presumably each page can have a different size. The behaviour also somehow interacts with the Continuous view, so that when Continuous is on, the selection only appears on one page, while when Continuous is off, it's repeated on each page. I haven't tested single vs facing pages, but I suspect it would quickly become very very complicated.

I guess I could forbid mouseSelectionRect spanning pages (restrict it to a single PageViewItem), but that may be a rather drastic step to take. With that restriction, it would be fairly easy. So I guess the question is whether there are use-cases that require mouseSelectionRect spanning multiple pages, or if it's OK to forbid that.</pre>
<br />




<p>- Jiri</p>


<br />
<p>On August 29th, 2011, 12:05 p.m., Jiri Baum 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 Okular.</div>
<div>By Jiri Baum.</div>


<p style="color: grey;"><i>Updated Aug. 29, 2011, 12:05 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;">Table selection tool, as per the bug description.

Usage: from the menu, select Tools | Table Selection Tool (or use the shortcut Ctrl-5). Use the mouse to select the whole table (in a manner similar to the existing Selection Tool), then click near the edges of the table to add and remove row and column dividers; the table is automatically copied to the clipboard after each change. When ready, paste into another document (spreadsheet, word processor, etc). Press Esc to clear the selection.

The patch also fixes handling of Esc key, so that it's not consumed by the closeFindBar KAction when the FindBar is closed. Previously this bug was non-obvious since the rectangular selection tool can in any case be cancelled by releasing the mouse button, then pressing Esc; cancelling it without releasing the mouse button was presumably not a common use-case.</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;">It works for me, even under demo conditions...</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=279859">279859</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>AUTHORS <span style="color: grey">(55b672e)</span></li>

 <li>aboutdata.h <span style="color: grey">(f9c5896)</span></li>

 <li>part.h <span style="color: grey">(a36031b)</span></li>

 <li>part.cpp <span style="color: grey">(e6b80a5)</span></li>

 <li>part.rc <span style="color: grey">(928168d)</span></li>

 <li>ui/pageview.h <span style="color: grey">(cd88b99)</span></li>

 <li>ui/pageview.cpp <span style="color: grey">(25da571)</span></li>

</ul>

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




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








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