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


<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 rekonq.</div>
<div>By David Narváez.</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;">This patch implements session management (see http://techbase.kde.org/Development/Tutorials/Session_Management). Most of the ideas are taken from Konsole, which is also a KUniqueApplication but manages session restoring correctly. Notice that the new code in Session Manager triplicates some code from other functions (mostly dealing with loading the session DOM Document and restoring tabs), so I think that if this patch is accepted, a refactoring of the SessionManager code is in order (or maybe do the refactoring before this patch?). I can take a shot at the refactoring if needed.</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;">Test #1: Desktop restoration
1) Open Rekonq in one Desktop
2) Change to another desktop
3) Log out and back in

Rekonq should not appear in the desktop you are at, but in the desktop you were when you called it.

Test #2: Activities restoration
1) Open two activities
2) Open two different Rekonq windows, one in each activity, with different URLs
3) Log out and back in

Rekonq should be restore in both activities with the URLs you loaded before logging out

Other tests:
1) Do Test #2, then open a new rekonq window - this tests changes in the Application::newInstance() method.
2) Crash the session (e.g., killall rekonq) and open rekonq again - in this case no desktop/activities restoration should take place (haven't figured out how to do this)</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/main.cpp <span style="color: grey">(a9082d7)</span></li>

 <li>src/mainwindow.h <span style="color: grey">(04a59a1)</span></li>

 <li>src/mainwindow.cpp <span style="color: grey">(98936e9)</span></li>

 <li>src/sessionmanager.h <span style="color: grey">(d0d7efd)</span></li>

 <li>src/sessionmanager.cpp <span style="color: grey">(20b3501)</span></li>

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

</ul>

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




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




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