On Thu, Jan 10, 2013 at 4:07 PM, Aaron J. Seigo <span dir="ltr"><<a href="mailto:aseigo@kde.org" target="_blank">aseigo@kde.org</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Thursday, January 10, 2013 15:24:58 Aleix Pol wrote:<br>
> Hmm.. why do you think user switching belongs to KRunner? Did I miss<br>
> anything? If anything, I'd say it can be a runner, but do we need specific<br>
> UI for this?<br>
<br>
</div>krunner does a few things:<br>
<br>
* show the task manager dialog (KSysGuard)<br>
* provide the "gui command line" (KRunnerManager and friends)<br>
* provide UI for user switching (re-uses "gui command line" for this<br>
currently)<br>
* autostart feedback (StartupId class)<br>
<br>
it also used to do:<br>
<br>
* lock screen (now handled by ksmserver)<br>
<br>
this is because we wished to ballance how many processes were running (memory<br>
and startup overhead) with stability. fewer processes is good, unstable things<br>
should be kept from things that require 100% stability, things that can block<br>
CPU should be kept from things that require low latency response time. the<br>
easiest answer to get going was to pour things into krunner. remember that we<br>
were working our asses off trying to get a basic desktop shell assembled with<br>
very few people contributing.<br>
<br>
thankfully we had a much larger # of people telling us what a bunch of deluded<br>
assholes we were while we were doing that work, which certainly helped ;)<br>
<br>
in the end, given that people don't even realize that all of those things are<br>
part of krunner at least shows that putting them in krunner was not the worst<br>
possible decision. ;)<br>
<br>
that said, just as we did with the lock screen in 4.10, we can move pieces<br>
around now that we have more space to think these kinds of things through to a<br>
greater degree.<br>
<br>
for instance: it may make more sense to put the switch user UI into the<br>
locker. why?<br>
<br>
* the locker also provides a Switch User functionality (though it just starts<br>
the DM for that), so a unified UI would be good<br>
* when you switch sessions, the current session is (or at least should be?)<br>
locked behind you, which means the locker needs to come into play anyways<br>
<br>
that means that this UI could be moved into the screen lock UI (which is<br>
already QML) and could be triggered by ksmserver. this will keep ksmserver<br>
stable (it doesn't load any UI) and responsive (it doesn't load any UI ;). it<br>
will allow us to put the switching and locking in one place.<br>
<br>
regardless, a new fast user switching UI needs to be done for this. whether it<br>
goes into the krunner process or elsewhere, it needs doing.<br>
<br>
on that note, startup stuff should probably move into kwin since it also<br>
provides the visual effect for it. it's probably also more future proof with<br>
Wayland's security model coming at us in the future... dunno what Martin G.<br>
thinks about that idea?<br>
<br>
that would leave us with the task manager UI and the "gui command line" (gcli?<br>
:) in krunner, which to me seems pretty decent.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Aaron J. Seigo</font></span><br>_______________________________________________<br>
Plasma-devel mailing list<br>
<a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/plasma-devel" target="_blank">https://mail.kde.org/mailman/listinfo/plasma-devel</a><br>
<br></blockquote></div><br><div>Yes, the screen locker is a good place for it. In Android they did it this way [1] and it works really well.</div><div><br></div><div>Having different things in the same process is ok it's a technical detail that makes sense, what worries me is that we get a button for things we're not looking for only because of technical reasons.</div>
<div><br></div><div>For example, I never understood why the system activity is there, GUI-wise.</div><div><br></div><div>Aleix</div><div><br></div><div>[1] <a href="http://i1.sinaimg.cn/IT/cr/2012/1113/3344057262.jpg">http://i1.sinaimg.cn/IT/cr/2012/1113/3344057262.jpg</a></div>