<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/103105/">http://git.reviewboard.kde.org/r/103105/</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, 12:19 p.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;">it looks like we're pretty much right back to the situation we had prior to the screenlocking being moved to kwin, except that now we have yet another daemon which also links to kdeui just so it can be a unique app.

if we are going to go this route, i highly recommend that the daemon becomes a kded plugin.

other than that -> how does kwin handle a locked desktop with this new system? e.g. turning effects and other window painting off ...</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 looks like we're pretty much right back to the situation we had prior to the screenlocking being moved to kwin
Unfortunately yes, but if we want to make it secure, so that the screen does not get unlocked if something unrelated to screen locking crashes (e.g. the lock window or the OpenGL driver used by KWin) it needs to be in it's own process.

> if we are going to go this route, i highly recommend that the daemon becomes a kded plugin.
there was concern that kded is too unstable as everything links to it, so e.g. a crashing other kded plugin could unlock the screen

> other than that -> how does kwin handle a locked desktop with this new system? e.g. turning effects and other window painting off ...
It can use the property to recognize that there are screenlocker windows and disable painting of other windows and effects</pre>
<br />








<p>- Martin</p>


<br />
<p>On November 10th, 2011, 12:16 p.m., Martin Gräßlin 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 kwin, Plasma and Oswald Buddenhagen.</div>
<div>By Martin Gräßlin.</div>


<p style="color: grey;"><i>Updated Nov. 10, 2011, 12:16 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;">Yes I know it's late in the cycle :-) and yes not everything is implemented yet, but I am confident that I get these things finished today or at least till Beta tagging.

This is the new screenlocker work as discussed on kcd some time ago.

The screen locker is split into two parts:
1. A daemon (ksld) to just lock the screen and grab input
2. An unlock dialog (kscreenunlocker) which is executed as a separate process.
    
In case the unlocker fails/crashes the screen is still locked by
the lock daemon.
    
In case kscreenunlocker crashes or does not succeed, it gets
automatically restarted by the daemon.

Things I still need to do:
* D-Bus integration
* Grace time
* integration of existing screen savers into the QML
* cleanup KRunner
* several more things</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;">* Screen locks
* Screen stays locked if unlocker crasher
* unlocker gets restarted</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>CMakeLists.txt <span style="color: grey">(9fa4c10)</span></li>

 <li>screenlocker/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/kcfg/kscreensaversettings.kcfg <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/kcfg/kscreensaversettings.kcfgc <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/ksld.desktop <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/ksldapp.h <span style="color: grey">(PRE-CREATION)</span></li>

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

 <li>screenlocker/lockwindow.h <span style="color: grey">(PRE-CREATION)</span></li>

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

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

 <li>screenlocker/unlocker/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/unlocker/main.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/unlocker/qml/lockscreen.qml <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/unlocker/unlockapp.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/unlocker/unlockapp.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>screenlocker/unlocker/unlocker.h <span style="color: grey">(PRE-CREATION)</span></li>

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

</ul>

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




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








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