diff options
author | Vincent Untz <vuntz@gnome.org> | 2009-03-24 23:51:10 +0000 |
---|---|---|
committer | Vincent Untz <vuntz@src.gnome.org> | 2009-03-24 23:51:10 +0000 |
commit | 987bb6300c7d27fdf050c09aad26091b15ec87b4 (patch) | |
tree | 16914b4a98d7e25d82d3f4c63d2aaaeae7f3e261 /ChangeLog | |
parent | 9f0edb6124b49d7b179e0201a665f2ebd2627d75 (diff) | |
download | gnome-session-987bb6300c7d27fdf050c09aad26091b15ec87b4.tar.gz |
Create a END_SESSION_LAST phase during which we handle the clients which
2009-03-25 Vincent Untz <vuntz@gnome.org>
Create a END_SESSION_LAST phase during which we handle the clients
which wanted to be ended last.
For this, we need to keep a list of clients in that case.
* gnome-session/gsm-client.h: add a new
GSM_CLIENT_END_SESSION_FLAG_LAST flag, to tell the client it's running
last.
* gnome-session/gsm-manager.[ch]: (phase_num_to_name): handle new phase
(end_phase): empty the list of clients that wants to be ended last if
it's not a relevant phase. Also handle new phase.
(on_phase_timeout): handle new phase
(_client_end_session_last): new, to tell a client that the session is
being ended. Works like _client_end_session()
(do_phase_end_session_last): prepare the right flags to be used for
each clients via _client_end_session_last(). Note that we don't use all
clients in the session here, but the list of clients that wanted to be
ended last.
We use a 10 seconds timeout for that phase to not block on clients that
don't reply. Also, if there's no client in the session, then save the
session if auto-save is enabled.
(start_phase): empty the list of clients that wants to be ended last if
it's not a relevant phase. Also handle new phase.
(maybe_save_session): make this call valid in END_SESSION_LAST instead
of END_SESSION
(on_client_end_session_response): save the client in a specific list if
it wants to be ended last.
* gnome-session/gsm-xsmp-client.c: (xsmp_save_yourself_phase2):
uncomment
(xsmp_end_session): if the client is running last, then it means it's
phase2 of SaveYourself, so use xsmp_save_yourself_phase2()
svn path=/trunk/; revision=5363
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 33 |
1 files changed, 33 insertions, 0 deletions
@@ -1,5 +1,38 @@ 2009-03-25 Vincent Untz <vuntz@gnome.org> + Create a END_SESSION_LAST phase during which we handle the clients + which wanted to be ended last. + For this, we need to keep a list of clients in that case. + + * gnome-session/gsm-client.h: add a new + GSM_CLIENT_END_SESSION_FLAG_LAST flag, to tell the client it's running + last. + * gnome-session/gsm-manager.[ch]: (phase_num_to_name): handle new phase + (end_phase): empty the list of clients that wants to be ended last if + it's not a relevant phase. Also handle new phase. + (on_phase_timeout): handle new phase + (_client_end_session_last): new, to tell a client that the session is + being ended. Works like _client_end_session() + (do_phase_end_session_last): prepare the right flags to be used for + each clients via _client_end_session_last(). Note that we don't use all + clients in the session here, but the list of clients that wanted to be + ended last. + We use a 10 seconds timeout for that phase to not block on clients that + don't reply. Also, if there's no client in the session, then save the + session if auto-save is enabled. + (start_phase): empty the list of clients that wants to be ended last if + it's not a relevant phase. Also handle new phase. + (maybe_save_session): make this call valid in END_SESSION_LAST instead + of END_SESSION + (on_client_end_session_response): save the client in a specific list if + it wants to be ended last. + * gnome-session/gsm-xsmp-client.c: (xsmp_save_yourself_phase2): + uncomment + (xsmp_end_session): if the client is running last, then it means it's + phase2 of SaveYourself, so use xsmp_save_yourself_phase2() + +2009-03-25 Vincent Untz <vuntz@gnome.org> + s/gdm_client_end_session_response/gsm_client_end_session_response/g * gnome-session/gsm-client.c: (gsm_client_end_session_response): |