Re: Reshuffling startup to start activity manager after ksmserver

2013-05-26 Thread Ivan Čukić

> overriding the implementation of QApplication::saveState() or by using
> KSessionManager)

Ah, ok then. You have the green light for the change, as long as it doesn't 
changes the workflow for the non-manually-saved-session-restoration mode.

Cheerio,
Ivan

-- 
 A program that has not been tested does not work.
  -- Bjarne Stroustrup

___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Reshuffling startup to start activity manager after ksmserver

2013-05-26 Thread Marco Martin
On Sunday 26 May 2013 14:30:05 Simon Persson wrote:

> The needed change for this to work would be for kamd to _not_ save the
> running state to file every time it changes, but instead only when asked by
> the session manager to save state. (For applications that is done by
> overriding the implementation of QApplication::saveState() or by using
> KSessionManager)

that would require more user interaction to get it right? seems to complicate 
things for users and developers..

-- 
Marco Martin
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Reshuffling startup to start activity manager after ksmserver

2013-05-26 Thread Simon Persson

On Sunday, May 26, 2013 1:23:20 PM ICT, Ivan Čukić wrote:

I would say that the right thing (what I as a user would expect to happen)
is that clicking "save session" in the kickoff menu would save which


I might be missing the point - kamd loads the last used 
activity on login (if 
it doesn't, it is a bug). What would change if we saved at 'save session'?




Hello Ivan,

yes you did. The point is that when setting "restore manually saved session" as the login 
behavior (setting for ksmserver) then the "save session" button appears in kickoff and 
only what was running at the time you click that button should then get started at all future 
logins.

The needed change for this to work would be for kamd to _not_ save the running 
state to file every time it changes, but instead only when asked by the session 
manager to save state. (For applications that is done by overriding the 
implementation of QApplication::saveState() or by using KSessionManager)




Cheerio,
Ivan





___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Reshuffling startup to start activity manager after ksmserver

2013-05-25 Thread Ivan Čukić

> I would say that the right thing (what I as a user would expect to happen)
> is that clicking "save session" in the kickoff menu would save which

I might be missing the point - kamd loads the last used activity on login (if 
it doesn't, it is a bug). What would change if we saved at 'save session'?



Cheerio,
Ivan



-- 
Make your code readable. Pretend the next person who looks
at your code is a psychopath and they know where you live.
  -- Philip Wadler


signature.asc
Description: This is a digitally signed message part.
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Reshuffling startup to start activity manager after ksmserver

2013-05-25 Thread Simon Persson

On Saturday, May 25, 2013 7:33:40 PM ICT, Aaron J. Seigo wrote:

On Saturday, May 25, 2013 17:38:49 Simon Persson wrote:

So much for the background, now the problem:
I wanted to use the "restore manually saved session" option of 
ksmserver in

order to always start the "Welcome" activity and nothing else. But


Instead of building a serialized startup order between kamd and ksmserver, 
perhaps it makes sense to make kamd aware of these settings and 
Do The Right 
Thing(tm) itself, e.g. be able to set an activity as the one to always start




I would say that the right thing (what I as a user would expect to happen) is that 
clicking "save session" in the kickoff menu would save which activity is 
currently active and which other ones are also running so that can be restored at login.
I just had another idea.. perhaps it could be possible to add a dbus-exported 
"saveYourself()" slot to kamd and have ksmserver call that slot at the same as 
it calls all the session clients via ICE.

I have also realized that kamd is started by whoever first calls a constructor 
in libkactivities. That means even if we would move all current consumers of 
the kamd service (from the core kde releases) to start after ksmserver nothing 
stops third party kamd-consumers to be added by users.
Therefore my idea above is currently my best suggestion for a fix.

Simon

___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Reshuffling startup to start activity manager after ksmserver

2013-05-25 Thread Aaron J. Seigo
On Saturday, May 25, 2013 17:38:49 Simon Persson wrote:
> So much for the background, now the problem:
> I wanted to use the "restore manually saved session" option of ksmserver in
> order to always start the "Welcome" activity and nothing else. But

Instead of building a serialized startup order between kamd and ksmserver, 
perhaps it makes sense to make kamd aware of these settings and Do The Right 
Thing(tm) itself, e.g. be able to set an activity as the one to always start

-- 
Aaron J. Seigo

signature.asc
Description: This is a digitally signed message part.
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Reshuffling startup to start activity manager after ksmserver

2013-05-25 Thread Daniel Nicoletti
It's started by kdeinit on phase 0 or 1 don't remember now,
just add the X-KDE-Init-Phase=2 to the desktop file and it should
work

2013/5/25 Simon Persson :
> Hello,
>
> After seeing Kevin Ottens suggestion for a "Welcome" activity (1) I decided
> to try setting up such an activity.
>
> I want this to be the only activity that is started at boot/login to give a
> fast boot since many times I'm not gonna do same activity as what I did when
> I last shut down my laptop.
> I also agree that this first activity should not be made special other than
> by configuration. It could perhaps be an idea to make a special "welcome"
> applet or desktop containment and by default have that one configured to be
> shown only in this default activity. That welcome applet can then show a
> list of other available activities for easy starting. It could also have a
> button for the discussed function of "move all windows from this activity to
> a newly created one".
>
> For my experiment I decided to show the desktop component of homerun in the
> "Welcome" activity which gets me pretty close to what I want.
>
> So much for the background, now the problem:
> I wanted to use the "restore manually saved session" option of ksmserver in
> order to always start the "Welcome" activity and nothing else.
> But kactivitymanagerd does not communicate with the session manager, it
> always keeps its rc-file updated with which activities are running and which
> is the current one. It then resumes to that state upon startup.
>
> I started looking into making the activity manager speak to the session
> manager, but ten years of writing kde applications and using kde full time
> has taught me very little about how the session startup works.
>
> Currently it seems kactivitymanagerd is started via klauncher by some kded
> module, and that happens before the start of ksmserver. If I add "--no-kded"
> option to kdeinit4 in the startkde script then the activity manager gets
> started after ksmserver and can work the way I want it to.
>
> 1: Ivan, do you agree that it would be desirable to make kactivitymanagerd
> only save state in the QApplication::saveState() function? At least when the
> "resume last session" option is not active?
>
> 2: If so, how should things be reshuffled to make it start after the session
> manager? Is it even possible? Looks possible to me, first thing that seems
> to need it is kwin, which is started after ksmserver.
>
> I'm not currently involved in any of these projects but I have been thinking
> of the need for a session manager in a wayland-world and that it could be
> interesting for me to get involved with that. This issue then serves as a
> good reason to learn more about these things. I've already spent two days on
> this and learned a lot.
>
> If you read all the way here, thank you.
> Simon
>
> (1) http://mail.kde.org/pipermail/plasma-devel/2013-May/025153.html
> ___
> Plasma-devel mailing list
> Plasma-devel@kde.org
> https://mail.kde.org/mailman/listinfo/plasma-devel



-- 
Daniel Nicoletti

KDE Developer - http://dantti.wordpress.com
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel