From 35504d91654321ff2b378229ff13150f53d5aad2 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:49:37 +0200 Subject: Adding upstream version 43.0. Signed-off-by: Daniel Baumann --- ChangeLog.pre-git | 4082 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 4082 insertions(+) create mode 100644 ChangeLog.pre-git (limited to 'ChangeLog.pre-git') diff --git a/ChangeLog.pre-git b/ChangeLog.pre-git new file mode 100644 index 0000000..22fc016 --- /dev/null +++ b/ChangeLog.pre-git @@ -0,0 +1,4082 @@ +2009-04-14 Vincent Untz + + * configure.in: post-release bump to 2.26.2 + +==================== 2.26.1 ==================== + +2009-04-14 Vincent Untz + + * NEWS: version 2.26.1 + +2009-04-10 Vincent Untz + + * gnome-session/main.c: (require_dbus_session): when relaunching with + dbus-launch, correctly copy arguments that were passed to + gnome-session over to the new call + Fix bug #574310. + +2009-04-10 Vincent Untz + + * tools/gnome-session-save.c: (main): make gnome-session-save --kill + --silent work as --force-logout (no inhibitor dialog). + Fix bug #574982. + +2009-04-09 Vincent Untz + + * gnome-session/gsm-manager.c: (do_inhibit_dialog_action): remove + comment that is now wrong + (query_end_session_complete): pass the right action to the inhibit + dialog so that the button doesn't always tell "Log out anyway", but + "Shutdown anyway" when it's about shutting down. + +2009-04-08 Vincent Untz + + * configure.in: post-release bump to 2.26.1 + +==================== 2.26.0.90 ==================== + +2009-04-08 Vincent Untz + + * NEWS: + * configure.in: version 2.26.0.90 + +2009-04-08 Vincent Untz + + Make reboot and shutdown leave the session properly, by letting apps + exit before doing the real reboot/shutdown. + + Note that because of the ConsoleKit policies, the ways it's handled + when there are more than one user logged in or when the policy always + require a password might be a bit different: + - in the usual case (single user, no password required), everything + works as expected. + - in the multiple users case (password generally required once), we + ask for the password before trying to exit the session. + - if the password is required each time the ConsoleKit action is + called, then we'll ask for the password only once, after having made + all apps exit. If this doesn't work (wrong password), since the + session is killed anyway, we log out and ask gdm to do the action. + + * gnome-session/gsm-marshal.list: add new signature that we need + * gnome-session/gsm-consolekit.[ch]: add new privileges-completed + signal + (gsm_consolekit_class_init): add new signal + (gsm_consolekit_get_result_for_action): new, split from + gsm_consolekit_can_do_action() + (gsm_consolekit_can_do_action): ensure that the CK connection works + here (instead of requiring callers to do it), and use + gsm_consolekit_get_result_for_action() + (gsm_consolekit_is_session_for_other_user): new, ask ConsoleKit if a + session object is for a different user than the current user (ignoring + the login sessions) + (gsm_consolekit_is_single_user): new, determine if there's only a + single user logged in on this machine + (obtain_privileges_cb): new, PolicyKit callback when the privileges + were obtained/denied, to send the privileges-completed signal + (gsm_consolekit_obtain_privileges_for_action): new, obtain the + PolicyKit privileges for a specific action + (gsm_consolekit_get_privileges_for_actions): new, to know if we have + privileges for a set of actions, and request the privileges if needed + (gsm_consolekit_get_restart_privileges): new, trivial + (gsm_consolekit_get_stop_privileges): new, trivial + (gsm_consolekit_can_restart): do not ensure that the CK connection + works here, it will be done in gsm_consolekit_can_do_action() + (gsm_consolekit_can_stop): ditto + + * gnome-session/gsm-manager.c: we add a logout type variable that lets + us remember what should be done when gnome-session exits. + (quit_request_completed): new, callback that will make gnome-session + exit after the ConsoleKit call to Stop/Restart has been done. If the + ConsoleKit call wasn't successful, we fallback on gdm (since we're in + the EXIT phase, and all apps have quitted, there's no point in not + asking gdm to do that). + (gsm_manager_quit): new, to do the right thing to log out depending on + what the user wanted to achieve when logging out. + (end_phase): use gsm_manager_quit() instead of directly calling + gtk_main_quit() + (cancel_end_session): reset the logout type to none + (do_attempt_reboot), (do_attempt_shutdown), (manager_attempt_reboot), + (manager_attempt_shutdown): killed/merged in + request_reboot/request_shutdown + (do_inhibit_dialog_action): renamed from do_dialog_action(); for + shutdown and reboot, we just do like logout and end the phase. + (inhibit_dialog_response): s/do_dialog_action/do_inhibit_dialog_action + (query_end_session_complete): add a comment about + gsm_inhibit_dialog_new to make it clear that the + GSM_LOGOUT_ACTION_LOGOUT parameter is fine for shutdown and reboot too + (request_reboot_privileges_completed): new, handle the fact that we got + the privileges from ConsoleKit to do the reboot. + (request_reboot): ask ConsoleKit for the privileges to reboot, and if + it doesn't work (no ConsoleKit), just end the phase + (request_shutdown_privileges_completed), (request_shutdown): see above + changes for reboot functions + (request_logout): set the logout type + +2009-04-08 Vincent Untz + + Remove the 1-second delay to display the inhibit dialog when an + application is blocking logging out. + + * gnome-session/gsm-manager.c: (query_end_session_complete): remove the + query timeout since it might still be running + (do_phase_query_end_session): do not remove the query timeout here: + it's the start of a phase, so there's no such timeout + (on_client_end_session_response): rework a bit to make sure we call + query_end_session_complete() if we are at the end of + GSM_MANAGER_PHASE_QUERY_END_SESSION + +2009-04-08 Vincent Untz + + * gnome-session/gsm-manager.c: (do_phase_end_session), + (do_phase_exit): use GSM_MANAGER_PHASE_TIMEOUT instead of hard-coding + 10 seconds everywhere. + +2009-04-08 Vincent Untz + + * gnome-session/gsm-logout-dialog.c: (on_ck_request_completed): killed + (gsm_logout_dialog_init): don't connect to request-completed of the + consolekit object: we actually don't do anything in the callback + anyway... + +2009-04-08 Vincent Untz + + * gnome-session/gsm-xsmp-client.c: (save_yourself_done_callback): only + call SmsSaveComplete() if we are still in a SaveYourself state. My + previous change about this didn't take into account the case where the + logout is cancelled, in which case SmsSaveComplete() shouldn't be + called. + +2009-04-05 Matthias Clasen + + * gnome-session/gs-idle-monitor.c (handle_alarm_notify_event): Ignore + XSyncAlarmDestroyed events, and don't spam .xsession-errors for these. + +2009-03-25 Vincent Untz + + * gnome-session/gsm-manager.c: (end_phase): put the call that + potentially saves the session here, at the end of END_SESSION instead + of many random places + (do_phase_end_session), + (do_phase_end_session_part_2), (on_client_end_session_response): remove + calls to maybe_save_session() + +2009-03-25 Vincent Untz + + Remove the END_SESSION_LAST phase since it was considered to break the + design. Instead, just use a second step in the END_SESSION phase. + + * gnome-session/gsm-manager.[ch]: (phase_num_to_name): remove + END_SESSION_LAST phase + (end_phase): always clean up next_query_clients, and remove + END_SESSION_LAST phase. + (on_phase_timeout): remove END_SESSION_LAST phase + (_client_end_session): change the function signature so that we can + merge this old function and _client_end_session_last + (_client_end_session_last): killed + (_client_end_session_helper): new, helper used for + do_phase_end_session() since _client_end_session() cannot be directly + used anymore + (do_phase_end_session): use _client_end_session_helper(), and save + session if there's nothing to do + (do_phase_end_session_last): renamed to... + (do_phase_end_session_part_2): ... this. Don't reset the phase timeout + since we're still in the END_SESSION phase. Clean up next_query_clients + after having used it. + (start_phase): always clean up next_query_clients, remove + END_SESSION_LAST phase + (maybe_save_session): s/END_SESSION_LAST/END_SESSION/ + (on_client_end_session_response): only accept to end a client last if + we're in END_SESSION. Start the second step of END_SESSION if there's + no clients that haven't replied, no inhibitor and if there are clients + to end last. Note that we don't remove the phase timeout here since it + will either be needed in the second step or will be removed in + end_phase(). + +2009-03-25 Vincent Untz + + Allow XSMP clients to interact only during the + GSM_MANAGER_PHASE_QUERY_END_SESSION phase. If they didn't interact + during this phase, too bad for them. + The idea is that GSM_MANAGER_PHASE_QUERY_END_SESSION is about letting + them save user data and interact if it's needed for saving user data, + while GSM_MANAGER_PHASE_END_SESSION is about telling them that they + really have to save data now if they need too. + + Also if we have a queued SaveYourself, remember if it allowed + interaction or not. + + * gnome-session/gsm-xsmp-client.c: (gsm_xsmp_client_init): initialize + next_save_yourself_allow_interact + (do_save_yourself): change forceful argument to allow_interact for + better clarity, and save it to next_save_yourself_allow_interact when + relevant + (xsmp_cancel_end_session): reset next_save_yourself_allow_interact + (xsmp_query_end_session): update for do_save_yourself() argument + change, and also enforce the fact that we don't save the state of the + client here + (xsmp_end_session): force the client to not interact here + (save_yourself_request_callback): update for do_save_yourself() + argument change + (save_yourself_done_callback): use next_save_yourself_allow_interact if + there was a queued SaveYourself. + +2009-03-25 Vincent Untz + + * gnome-session/gsm-manager.c: (maybe_save_session): re-enable session + saving (revert the change that was committed just before 2.26.0). + +2009-03-25 Vincent Untz + + * tools/gnome-session-save.c: hide deprecated command-line options from + --help, but still accept them. + (main): return 0 instead of a variable that is always set to 0 + +2009-03-25 Vincent Untz + + 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 + + s/gdm_client_end_session_response/gsm_client_end_session_response/g + + * gnome-session/gsm-client.c: (gsm_client_end_session_response): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c: (handle_end_session_response): + * gnome-session/gsm-xsmp-client.c: + (save_yourself_phase2_request_callback), + (interact_request_callback), (interact_done_callback), + (save_yourself_done_callback): + +2009-03-25 Vincent Untz + + Allow clients to specify that they want to be ended last (this mainly + matches the Phase2 of SaveYourself in XSMP). The server doesn't use + this information yet. + + * gnome-session/gsm-client.[ch]: (gsm_client_class_init): add new + do_last argument to END_SESSION_RESPONSE signal + (gdm_client_end_session_response): add do_last and use it + * gnome-session/gsm-marshal.list: updated for new signature + * gnome-session/gsm-manager.c: (on_client_end_session_response): add + do_last parameter, unused for now + * gnome-session/gsm-dbus-client.c: (handle_end_session_response): pass + FALSE as do_last + * gnome-session/gsm-xsmp-client.c: + (save_yourself_phase2_request_callback): pass TRUE as do_last since + that's what the phase2 is + (interact_request_callback): pass FALSE as do_last + (interact_done_callback): pass FALSE as do_last + (save_yourself_done_callback): pass FALSE as do_last + +2009-03-25 Vincent Untz + + * gnome-session/gsm-manager.c: (do_phase_end_session), + (auto_save_is_enabled): coding style nit-picking + +2009-03-25 Vincent Untz + + Allow an interacting app to cancel the logout. + + * gnome-session/gsm-client.[ch]: (gsm_client_class_init): add new + cancel argument to END_SESSION_RESPONSE signal + (gdm_client_end_session_response): add cancel and use it + * gnome-session/gsm-marshal.list: updated for new signature + * gnome-session/gsm-manager.c: (on_client_end_session_response): add + cancel paramter, and call cancel_end_session if cancel is TRUE + * gnome-session/gsm-dbus-client.c: (handle_end_session_response): pass + FALSE as cancel + * gnome-session/gsm-xsmp-client.c: + (save_yourself_phase2_request_callback): pass FALSE as cancel + (interact_request_callback): pass FALSE as cancel + (interact_done_callback): pass the value returned by the client as + cancel + (save_yourself_done_callback): pass FALSE as cancel + +2009-03-25 Vincent Untz + + Actually allow XSMP clients to interact during the logout. It works + quite well with the inhibitor infrastructure since a JIT inhibitor will + be created. + Note that the user will get two dialogs: eg, when gedit has an unsaved + document, the user will see the gedit save/cancel dialog and the + inhibit dialog. That's actually a good thing since the save/cancel + dialog from gedit might be in another workspace, and so the inhibit + dialog makes sure the user knows what's going on. + + * gnome-session/gsm-xsmp-client.c: (xsmp_interact): uncomment + (interact_request_callback): stop cancelling the session when a client + wants to interact, and allow the client to interact. + +2009-03-25 Vincent Untz + + Make session saving works a bit better by telling client to not just + save the global state, but also the local state when relevant. + + * gnome-session/gsm-client.h: add new GSM_CLIENT_END_SESSION_FLAG_SAVE + * gnome-session/gsm-manager.c: (do_phase_end_session): if the session + should be autosaved, then pass the GSM_CLIENT_END_SESSION_FLAG_SAVE + flag + (do_phase_query_end_session): add a comment explaining why we don't use + the GSM_CLIENT_END_SESSION_FLAG_SAVE flag + * gnome-session/gsm-xsmp-client.c: (xsmp_query_end_session), + (xsmp_end_session): depending on the presence of the + GSM_CLIENT_END_SESSION_FLAG_SAVE flag, use SmSaveBoth or SmSaveGlobal + +2009-03-24 Vincent Untz + + * gnome-session/gsm-xsmp-client.c: (do_save_yourself): just add some + paranoia code to make sure our state is consistent + (xsmp_cancel_end_session): reset the save_yourself state here since we + cancel the operation anyway + (save_yourself_phase2_request_callback): fix to not behave exactly like + SaveYourselfDone. This is wrong according to XSMP. + (save_yourself_done_callback): always call SmsSaveComplete() (it's + expected by XSMP), and ignore the success argument. It's actually + useless. + +2009-03-24 Vincent Untz + + Rework deeply the code that writes the saved session to desktop files: + we now properly discard a client when removing it; we also make sure we + save the current session before we completely remove the previously + saved session (to be on the safe side). + Note that we only discard a client when the new saved session doesn't + use the same discard command: for example, when metacity saves its + state, it will reuse the same discard command and so we can't discard + the old metacity client (it would discard the new client). + + * gnome-session/gsm-util.[ch]: (gsm_util_get_empty_tmp_session_dir): + new function to get a temporary directory where to save the new + session, while we still keep the previously saved session. It also + makes sure the directory is empty. + * gnome-session/gsm-session-save.[ch]: (save_one_client): update to + make sure we remember the discard command from the client. + (gsm_session_save): rework to first save the session in the temporary + directory (and remember the discard commands from the saved clients), + and then clear the old session. We finish by renaming the temporary + directory to its final name. + (gsm_session_clear_one_client): new, to properly clear one client from + a saved session. We unlink the desktop file, but also run the discard + command if it's not used by any other client from the newly saved + session. + (gsm_session_clear_saved_session): change to clear a saved session in a + specified directory, and use gsm_session_clear_one_client() instead of + just unlinking the desktop file. Also add missing g_dir_close(). + +2009-03-24 Vincent Untz + + * gnome-session/gsm-xsmp-client.c: (xsmp_save): just don't return a + keyfile if there's no restart command for this client (ie, we won't + save this client). Also make sure keyfile is properly initialized to + NULL to avoid an undefined return value in that case. + +2009-03-24 Vincent Untz + + * gnome-session/gsm-xsmp-client.c: (xsmp_get_discard_command): + uncomment + (xsmp_save): when saving the xsmp client to a desktop file, also save + the discard command since we'll want to use it at some point when + discarding the saved app. + +2009-03-24 Vincent Untz + + * gnome-session/gsm-manager.c: (cancel_end_session): ignore this if + we're not in a relevant phase. Also make sure the inhibit dialog is + destroyed before removing inhibitors (which would activate the + inhibit dialog) + +2009-03-24 Vincent Untz + + * gnome-session/gsm-util.c: (ensure_dir_exists): create the dir with + permission 0755. + (gsm_util_get_saved_session_dir): use ~/.config instead of ~/.gnome2. + It's a good time to start using the xdg folders before we actually + start putting data. + +2009-03-24 Vincent Untz + + * gnome-session/gsm-inhibit-dialog.c: (update_dialog_text): fix debug + string + * gnome-session/gsm-manager.c: (cancel_end_session): add debug string + (gsm_manager_shutdown): fix debug string + +2009-03-24 Vincent Untz + + * gnome-session/gsm-inhibit-dialog.c: (add_inhibitor): use + gsm_util_get_desktop_dirs() instead of just gsm_util_get_app_dirs(). + Also try to handle desktop filenames that are an absolute path the best + way possible (this happens with OpenOffice.org). + * gnome-session/gsm-util.[ch]: (gsm_util_get_desktop_dirs): new + function, to return all the directories where we look up for the + desktop files. + +2009-03-24 Vincent Untz + + * gnome-session/gsm-inhibit-dialog.c: (add_inhibitor): handle NULL + errors instead of crashing, which can happen in some cases in + EggDesktopFile. + +2009-03-24 Vincent Untz + + * gnome-session/gsm-inhibit-dialog.c: use a 32x32 icon size for icons, + looks better this way. + +2009-03-24 Vincent Untz + + Let all processes cleanly exit on exit. + + * gnome-session/gsm-manager.c: (end_phase): rework with a switch so + that it's easy to see what's going on for which phases. We also don't + exit immediately when we reach the exit phase, and instead let + start_phase() do its work + (_client_stop): stop a client + (do_phase_exit): create a 10 second timeout that will force the end of + the phase, and tells each client to stop via _client_stop() so they can + have a chance to properly exit before we quit. + (start_phase): call do_phase_exit() on exit phase + +2009-03-18 Vincent Untz + + * configure.in: + * doc/man/*: rework the man pages so that they're up-to-date. + +2009-03-16 Vincent Untz + + * configure.in: post-release bump to 2.26.1 + +==================== 2.26.0 ==================== + +2009-03-16 Vincent Untz + + * NEWS: + * configure.in: version 2.26.0 + +2009-03-16 Vincent Untz + + * gnome-session/gsm-manager.c: (maybe_save_session): disable session + saving with "#if 0" for the 2.26.0 release: it's not ready yet. + +2009-03-14 Vincent Untz + + * capplet/gsm-properties-dialog.c: + (gsm_properties_dialog_constructor): do not call gtk_widget_show_all on + the dialog, just gtk_widget_show + * data/session-properties.glade: hide the "save current session" button + since it doesn't do anything at the moment, so it's confusing to have + it there. + +2009-03-08 Lucas Rocha + + Bug 574399 – turn off debug spew + + * gnome-session/main.c: ditto. + +2009-03-03 Vincent Untz + + * configure.in: post-release bump to 2.26.0 + +==================== 2.25.92 ==================== + +2009-03-03 Vincent Untz + + * NEWS: + * configure.in: version 2.25.92 + +2009-03-01 Lucas Rocha + + * gnome-session/gsm-consolekit.c: add constant holding login window + session type value to be used in different places of the code. + * gnome-session/gsm-logout-dialog.c: use new consolekit constant for + login window session type. + * gnome-session/gsm-manager.c: don't save session if session type is + login window. + * gnome-session/main.c: don't load saved session if session type is + login window. + +2009-02-26 Matthias Clasen + + * gnome-session/gs-idle-monitor.c: Ask for AlertNotify in a way + that XSync understands. (#567958) + +2009-02-26 Vincent Untz + + * capplet/gsm-properties-dialog.c: (edit_app_dialog): + * tools/gnome-session-save.c: (display_error): use a Close button + instead of an Ok button in error dialogs. If considered an UI change, + then it's trivial and it doesn't affect documentation. + +2009-02-25 Paolo Borelli + + * gnome-session/gsm-client.c: + chain up finalize + +2009-02-23 Lucas Rocha + + * gnome-session/Makefile.am, gnome-session/gsm-resumed-app.[ch]: + remove GsmResumedApp code as it's being used anymore. + +2009-02-23 Lucas Rocha + + * gnome-session/main.c, gnome-session/gsm-manager.c: remove code for + handling legacy session saving files as it won't be supported anymore. + +2009-02-23 Lucas Rocha + + Bug 552387 – gnome-session doesn't save session anymore + + * gnome-session/Makefile.am: add gsm-session-save.[ch] to the build. + * gnome-session/gsm-session-save.[ch]: session saving functions. + * gnome-session/gsm-autostart-app.c (load_desktop_file): check if the + desktop file has X-GNOME-Autostart-startup-id to define startup id of + the GsmAutostartApp. + * gnome-session/gsm-client.[ch] (gsm_client_save): add gsm_client_save + virtual method which should be implemented by each type of client. + * gnome-session/gsm-dbus-client.c, gnome-session/gsm-xsmp-client.c: + add respective gsm_client_save implementations. D-Bus clients still + don't implement saving. + * gnome-session/gsm-manager.c (auto_save_is_enabled, + maybe_save_session): save session state if auto save is enable before + finalizing the session. + * gnome-session/main.c (load_standard_apps): load GsmApps from the + saved session directory. + +2009-02-23 Lucas Rocha + + * gnome-session/main.c, gnome-session/gsm-util.[ch]: move + find_desktop_file_for_app_name to gsm-util so that we can use it in + other places. + +2009-02-23 Lucas Rocha + + * gnome-session/gsm-manager.c (user_logout): use gconf client from + GsmManager instead of getting a new one. + +2009-02-23 Lucas Rocha + + * gnome-session/gsm-xsmp-client.c (do_save_yourself): add comments on + SmsSaveYourself parameters for clarity. + +2009-02-23 Lucas Rocha + + * gnome-session/gsm-manager.c (on_xsmp_client_logout_request): + improve readability of conditional code. + +2009-02-23 Lucas Rocha + + * gnome-session/gsm-manager.c: wrap too long lines into 80 cols. + +2009-02-23 Lucas Rocha + + * gnome-session/gsm-manager.c: rename forceful attribute to + forceful_logout for clarity. + +2009-02-22 Lucas Rocha + + * capplet/gsm-properties-dialog.c: use G_KEY_FILE_DESKTOP_* constants + instead of hardcoded groups and key names. + +2009-02-21 Lucas Rocha + + * gnome-session/gsm-manager.c: coding style fixes from last commit. + +2009-02-21 Lucas Rocha + + * gnome-session/gsm-manager.c (gsm_manager_start, cancel_end_session): + always use gsm_manager_set_phase to set manager phase for consistency. + +2009-02-21 Lucas Rocha + + * gnome-session/gsm-manager.c: rename load_from_gconf to + load_idle_delay_from_gconf for clarity. + +2009-02-21 Matthias Clasen + + * gnome-session/gsm-inhibit-dialog.c: Use system-log-out as icon, + instead of gnome-logout, which doesn't exist. + +2009-02-17 Frederic Crozat + + * data/gsm-inhibit-dialog.glade: + Ensure treeview is included in a scrolled window with a shadow. + +2009-02-17 Vincent Untz + + * configure.in: post-release bump to 2.25.92. + +==================== 2.25.91 ==================== + +2009-02-17 Vincent Untz + + * NEWS: + * configure.in: version 2.25.91 + +2009-02-13 Luca Ferretti + + * data/gnome-session.schemas.in: better phrase for + "required_components_list" key, thanks to Dan Winship + +2009-02-13 Luca Ferretti + + reviewed by: Vincent Untz + + * capplet/gsm-properties-dialog.c: (gsm_properties_dialog_init): + Use "Startup Applications Preference" as window title to mach + capplet launcher Name. + +2009-02-13 Luca Ferretti + + * data/gnome-session.schemas.in: + Removed obsolete "logout_option" key; fix and update long + description for "required_components_list" key. + +2009-02-12 Lucas Rocha + + Bug 570908 – capplet misnomer + + * data/session-properties.desktop.in.in: change capplet name to + "Startup Applications" and the description to "Choose what + applications to start when you log in" to better match what the + capplet actually does nowadays. + +2009-02-11 Lucas Rocha + + Bug 556439 – improve logout/shutdown dialog messages + + * gnome-session/gsm-consolekit.[ch]: add new + gsm_consolekit_get_current_session_type function to GsmConsolekit. + * gnome-session/gsm-logout-dialog.c (gsm_logout_dialog_timeout): only + message about logged user when using logout dialog from gdm. + Patch by Matthias Clasen. + +2009-02-11 Lucas Rocha + + Bug 565063 – Avoid restarting applications when shutting down + + * gnome-session/gdm-signal-handler.[ch] + (gdm_signal_handler_set_fatal_func): redefine this function to receive + custom callback. + * gnome-session/gsm-manager.[ch]: added gsm_manager_set_phase + function. + * gnome-session/main.c: set session manager phase to + GSM_MANAGER_PHASE_EXIT when gnome-session process is shutting down. + Patch by Brian Cameron. + +2009-02-07 Matthias Clasen + + * gnome-session/gs-idle-monitor.c (_xsync_alarm_set): Fix a + copy-and-paste error in debug output. + +2009-02-03 Vincent Untz + + * configure.in: post-release bump to 2.25.91. + +==================== 2.25.90 ==================== + +2009-02-03 Vincent Untz + + * NEWS: + * configure.in: version 2.25.90 + +2009-01-28 Vincent Untz + + * doc/dbus/spec-to-docbook.xsl: + * gnome-session/org.gnome.SessionManager.ClientPrivate.xml: fix + everything so that the dbus documentation is valid docbook. + Fix bug #569443. + +2009-01-28 Vincent Untz + + * gnome-session/gs-idle-monitor.c: (gs_idle_monitor_reset): fix build + when the XTest extension is not available. + +2009-01-26 Richard Hughes + + * gnome-session/org.gnome.SessionManager.xml: + Fix up the documentation to mention the session bus, not the + system bus. + +2009-01-23 Vincent Untz + + * splash/splash-window.c: (layout_icon): fix a crash I had at some + point. + (gsm_splash_window_start): use 22x22 icons in the splash + +2009-01-22 Vincent Untz + + * compat/Makefile.am: install autostart desktop files in + /etc/xdg/autostart + +2009-01-19 Vincent Untz + + * configure.in: post-release bump to 2.25.90. + +==================== 2.25.5 ==================== + +2009-01-19 Vincent Untz + + * NEWS: + * configure.in: version 2.25.5 + +2009-01-18 William Jon McCann + + * gnome-session/gsm-presence.c (on_bus_name_owner_changed): + Compare the correct string for name owner changes. + +2009-01-18 William Jon McCann + + * gnome-session/gsm-manager.c (load_from_gconf), + (on_gconf_key_changed): + * gnome-session/gsm-presence.c (set_session_idle), + (on_idle_timeout), (reset_idle_watch), + (on_screensaver_active_changed), (on_screensaver_proxy_destroy), + (on_bus_name_owner_changed), (register_presence), + (gsm_presence_constructor): + Fix timeout scale. Disable idle detection while screensaver + is active. + +2009-01-18 William Jon McCann + + * gnome-session/gsm-presence.c (reset_idle_watch), + (gsm_presence_set_idle_enabled), (gsm_presence_set_idle_timeout): + Reset the idle watch when the timeout property changes. + +2009-01-16 William Jon McCann + + * gnome-session/gsm-consolekit.c (gsm_consolekit_set_session_idle): + * gnome-session/gsm-consolekit.h: + * gnome-session/gsm-manager.c (on_presence_status_changed), + (gsm_manager_init): + Inform CK that session idle status has changed. + +2009-01-15 William Jon McCann + + * gnome-session/org.gnome.SessionManager.xml: + Add docs for inhibit idle. + +2009-01-15 William Jon McCann + + * data/gnome-session.schemas.in: + * gnome-session/gsm-manager.c (gsm_manager_dispose), + (invalid_type_warning), (load_from_gconf), (on_gconf_key_changed), + (gsm_manager_init): + Add gconf key for idle delay. + +2009-01-14 William Jon McCann + + * gnome-session/gsm-presence.c: + * gnome-session/gsm-presence.h: + * gnome-session/org.gnome.SessionManager.Presence.xml: + Some changes based on comments from Robert McQueen. + Expose properties for status and status-text. Remove + getters. + +2009-01-11 William Jon McCann + + * gnome-session/gsm-presence.c (gsm_presence_set_status_text): + Add status text size limit. + +2009-01-11 William Jon McCann + + * configure.in: + * gnome-session/Makefile.am: + * gnome-session/gs-idle-monitor.c (_xsyncvalue_to_int64), + (_int64_to_xsyncvalue), (gs_idle_monitor_dispose), (_find_alarm), + (find_watch_for_alarm), (send_fake_event), (gs_idle_monitor_reset), + (handle_alarm_notify_event), (xevent_filter), (init_xsync), + (_init_xtest), (gs_idle_monitor_constructor), + (gs_idle_monitor_class_init), (get_next_watch_serial), + (idle_monitor_watch_new), (idle_monitor_watch_free), + (gs_idle_monitor_init), (gs_idle_monitor_finalize), + (gs_idle_monitor_new), (_xsync_alarm_set), + (gs_idle_monitor_add_watch), (gs_idle_monitor_remove_watch): + * gnome-session/gs-idle-monitor.h: + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (end_phase), + (gsm_manager_is_idle_inhibited), (update_idle), (start_phase), + (on_store_inhibitor_added), (on_store_inhibitor_removed), + (gsm_manager_dispose), (gsm_manager_init): + * gnome-session/gsm-presence.c (gsm_presence_error_quark), + (gsm_presence_error_get_type), (register_presence), + (gsm_presence_constructor), (gsm_presence_init), + (gsm_presence_get_status_text), (gsm_presence_get_status), + (on_idle_timeout), (gsm_presence_set_idle_enabled), + (gsm_presence_set_status_text), (gsm_presence_set_status), + (gsm_presence_set_idle_timeout), (gsm_presence_set_property), + (gsm_presence_get_property), (gsm_presence_finalize), + (gsm_presence_class_init), (gsm_presence_new): + * gnome-session/gsm-presence.h: + * gnome-session/org.gnome.SessionManager.Presence.xml: + Add presence API. + +2009-01-09 Lucas Rocha + + Bug 502944 – application icon gets tiny on desktop + + * configure.in, data/icons/Makefile.am, data/icons/48x48/*: add icon + with 48x48 pixels. + +2009-01-09 Lucas Rocha + + 550726 – Apps with an icon not existing in the icon theme displayed + with no icon + + * capplet (append_app): check if defined icon name actually exists + in the icon theme. Use default icon otherwise. + +2009-01-08 Lucas Rocha + + Bug 554725 – resync gnome-session from libegg + + egg/*: ditto. Patch by Dan Winship. + +2009-01-08 Lucas Rocha + + Bug 559145 – Double-click startup program entry to open edit dialog + + * capplet/gsm-properties-dialog.c (setup_dialog, on_row_activated): + open the edit app dialog when activating the respective entry in the + view. + +2009-01-08 Lucas Rocha + + Bug 552218 – typo: "unable connect" + + * gnome-session/gsm-util.c: fix typo. + +2009-01-08 Lucas Rocha + + Bug 551826 – Add NoDisplay=True to desktop files + + * data/gnome-wm.desktop.in.in, + compat/gnome-settings-daemon-helper.desktop.in.in, + compat/at-spi-registryd-wrapper.desktop.in.in.in, + splash/gnome-session-splash.desktop.in.in.in: + define NoDisplay=true. + +2009-01-08 Lucas Rocha + + Bug 551766 – Automagic dependency on PolicyKit in configure.in + + * configure.in: added support for explicit --enable-polkit and + --disable-polkit. The default (if nothing is specified) is auto. + Patch by Nirbheek Chauhan. + +2009-01-08 Lucas Rocha + + Bug 555369 – gnome-session-properties work improperly when key + X-GNOME-Autostart-enabled=false in .desktop + + * capplet/gsm-properties-dialog.c (toggle_app, enable_app, + disable_app): move app enabling/disabling logic into toggle_app and + fix handling of X-GNOME-Autostart-enabled in .desktop files. + Patch by Halton Huo. + +2009-01-08 Lucas Rocha + + Bug 566858 – configure script does not check for sm package (needed to + check X11/SM/SMlib.h) + + * configure.am, gnome-session/Makefile.am, egg/Makefile.am, + tools/Makefile.am: check for sm and ice libs through pkgconfig and use + it in the build. + +2009-01-06 Lucas Rocha + + Bug 557634 – gnome-session doesn't inspect $XDG_DATA_HOME/applications + + * gnome-session/gsm-util.c (gsm_util_get_app_dirs): add + $XDG_DATA_HOME/applications to the list of app directories. + Patch by tuxce. + +2009-01-06 Lucas Rocha + + Bug 563640 – In all phases before APPLICATION, consider process + termination as completion + + Most clients register using the session protocol. But it's perfectly + fine if a client simply exits upon completion, or forks and exits in + the parent when ready. This is indeed how we were treating phase + INITIALIZATION. There is no reason to not treat other non-APPLICATION + phases that way. The default clients for those phases (gnome-panel, + metacity, nautilus) register to the session, but for example, + libcanberra installed a script for phase DESKTOP to play login sound, + and since it doesn't connect to the session, gnome-session was + timeout'ing for that phase. + + * gnome-session/gsm-manager.c (on_app_exited, _start_app): ditto. + Patch by Behdad Esfahbod. + +2009-01-06 Lucas Rocha + + Bug 563354 – gnome-session does not close ICE connection for qt3 apps + + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_disconnect): + disable shutdown negotiation before closing the ICE connection when + connection is known to be terminated. + Patch by Edward Sheldrake. + +2008-12-14 Vincent Untz + + * configure.in: post-release bump to 2.25.4. + +==================== 2.25.3 ==================== + +2008-12-14 Vincent Untz + + * NEWS: version 2.25.3 + +2008-12-10 Vincent Untz + + Kill libgnomeui dependency. + + * configure.in: remove libgnomeui dep for splash, remove check for + libgnomeui for eggsmclient + * egg/Makefile.am: remove eggsmclient-libgnomeui.* stuff + * egg/eggsmclient-libgnomeui.[ch]: killed + * splash/Makefile.am: updated + * splash/gnome-session-splash.c: (load_pixbuf): changed to a helper + function + (load_pixbuf_relative_path): use g_get_system_data_dirs() instead of + gnome_program_locate_file() + (load_splash_pixbuf): updated + (setup_splash_window): don't unref the pixbuf if we didn't have a + pixbuf + (main): setup gettext, use GOption + gtk_init() instead of + gnome_program_init() + +2008-12-10 Vincent Untz + + * gnome-session/Makefile.am: fix build + +2008-12-10 Vincent Untz + + * configure.in: + * compat/Makefile.am: + * gnome-session/Makefile.am: + * splash/Makefile.am: try to sanitize things a bit so we can know which + part of gnome-session depends on which library + +2008-12-10 Vincent Untz + + * configure.in: remove TIME_UTILITY and GNOME_SESSION_TARBALL_* since + it's unused, use GNOME_COMPILE_WARNINGS instead of some custom stuff + to define compiler warning flags + * capplet/Makefile.am: + * compat/Makefile.am: + * egg/Makefile.am: + * gnome-session/Makefile.am: + * splash/Makefile.am: + * tools/Makefile.am: add WARN_CFLAGS/DISABLE_DEPRECATED_CFLAGS + * gnome-session/gsm-inhibit-dialog.c: (add_inhibitor): fix compilation + warning + * splash/splash-window.c: (splash_window_expose_event): don't use + deprecated API + (splash_window_finalize): don't unref something we don't own + +2008-12-08 Ray Strode + + * gnome-session/gsm-dbus-client.c + (client_dbus_filter_function): + Add patch from Tim Kosse to address + issue with multiple clients trying + to use the QueryEndSession dbus api + (bug 559469) + +2008-12-02 Vincent Untz + + * configure.in: post-release bump to 2.25.3. + +==================== 2.25.2 ==================== + +2008-12-02 Vincent Untz + + * NEWS: + * configure.in: version 2.25.2 + +2008-11-26 Diego Escalante Urrelo + + * gnome-session/gsm-util.c: + * gnome-session/main.c: + Don't do single includes for glib. Fixes #560786. + +2008-11-14 Stef Walter + + * configure.in: + * compat/Makefile.am: + * compat/README: + * gnome-keyring-daemon-wrapper.c: (removed) + * gnome-keyring-daemon-wrapper.desktop.in.in.in: (removed) + Remove compat wrapper for gnome-keyring session interaction. + +2008-11-11 Ray Strode + + * gnome-session/org.gnome.SessionManager.xml (CanShutdown) + * gnome-session/gsm-manager.[ch] (gsm_manager_can_shutdown): + Add new dbus api to say whether shutdown dialog is available. + (bug 536915) + * gnome-session/gsm-consolekit.c + (gsm_consolekit_can_do_action): new function to query + policykit to determine whether the current session is + authorized to shutdown/reboot/etc. + +2008-11-10 Matthias Clasen + + * gnome-session/gsm-manager.c (gsm_manager_register_client): + Rewrite the app-finding code to make more sense. + +2008-11-10 Kjartan Maraas + + * gnome-session/gsm-util.c: (gsm_util_init_error): + Format specifier warning fix. + * splash/Makefile.am: Add GCONF_LIBS/GCONF_CFLAGS. + * tools/gnome-session-save.c: (display_error): + Format specifiers again. + +2008-10-29 William Jon McCann + + * gnome-session/main.c (acquire_name): + Don't try to print an undefined error message. + +2008-10-26 Matthias Clasen + + * capplet/gsm-properties-dialog.c: Make the window resizable, + since it shows scrollbars and ellipsized text. + +2008-10-24 William Jon McCann + + * configure.in: + Don't try to link to gnome-keyring and libgnomeui + since we don't use them. + +2008-10-22 Vincent Untz + + * configure.in: post-release bump to 2.24.2. + +==================== 2.24.1 ==================== + +2008-10-22 Vincent Untz + + * NEWS: version 2.24.1 + +2008-10-03 Luca Ferretti + + reviewed by: Vincent Untz + + * capplet/gsm-app-dialog.c: (setup_dialog): + * capplet/gsm-properties-dialog.c: (gsm_properties_dialog_init): + Fix untraslated strings from glade files + Fix bug #554340 + Patch from: Wouter Bolsterlee + +2008-09-29 Christian Persch + + Bug 551869 – minor HIG problems with the capplet + + * capplet/gsm-properties-dialog.c: (edit_app_dialog), + (gsm_properties_dialog_init): + * data/session-properties.glade: Part I: correct spacings and + paddings, and make the dialogue resizable. + +2008-09-29 Frederic Peters + + * tools/gnome-session-save.c: (main): rename kill variable to + kill_session to avoid conflict with kill(2). Fixes: #554202. + +2008-09-23 William Jon McCann + + * gnome-session/gsm-autostart-app.c (autostart_app_start_spawn): + Fix startup id leak. + Fixes #552815 + Patch from: Matthias Clasen + +2008-09-23 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (gsm_inhibit_dialog_dispose): + Fix a glade xml leak. + Fixes #552780 + Patch from: Matthias Clasen + +2008-09-23 Patryk Zawadzki + + * data/session-properties.desktop.in.in: add GTK and GNOME. + Fix bug #552050. + +2008-09-22 Vincent Untz + + * configure.in: post-release bump to 2.24.1. + +==================== 2.24.0 ==================== + +2008-09-22 Vincent Untz + + * NEWS: version 2.24.0 + +2008-09-22 Vincent Untz + + * gnome-session/main.c: turn off debugging by default. + Fix bug #551761. + +2008-09-15 Matthias Clasen + + Bug 552255 – leaks IceConnection objects + + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_disconnect): + Need to call IceCloseConnection always; SmsCleanUp doesn't do it + for us. + (client_iochannel_watch): ref client around the ICE processing, + since handling SM callbacks might otherwise cause it to be + destroyed. Clear client->priv->ice_connection on a + ConnectionClosed response to avoid a double free. + + Patch by Dan Winship + +2008-09-15 Matthias Clasen + + Bug 552302 – leaks empty strings + + * gnome-session/gsm-manager.c (_on_query_end_session_timeout): + (on_client_end_session_response): Plug a small string leak. + +2008-09-15 Matthias Clasen + + Bug 552294 – leaks EggDesktopFiles + + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor): Free + the desktop file when done with it. + +2008-09-15 Matthias Clasen + + Bug 552293 – leaks previous_id + + * gnome-session/gsm-xsmp-client.c (register_client_callback): + Free previous_id in all cases. + +2008-09-15 Matthias Clasen + + Bug 552292 – leaks ListenObjs + + * gnome-session/gsm-xsmp-server.c (gsm_xsmp_server_finalize): + Don't leak xsmp_sockets. + +2008-09-10 Frederic Crozat + + * gnome-session/gsm-logout-dialog.c: backport + fix from gnome-panel: conversion from username + to UTF-8 if locale is not UTF-8. + +2008-09-08 William Jon McCann + + * configure.in: Post release version bump + +==================== 2.23.92 ==================== + +2008-09-08 William Jon McCann + + * NEWS: Update for release. + +2008-09-08 William Jon McCann + + * gnome-session/main.c (append_required_apps): + Warn if no required_components are specified. + +2008-09-04 Vincent Untz + + * configure.in: + * compat/Makefile.am: + * compat/*.desktop.*: + * data/Makefile.am: + * data/gnome-wm.desktop.*: + * data/session-properties.desktop.in.in: + * po/POTFILES.in: + * po/POTFILES.skip: + * splash/Makefile.am: + * splash/gnome-session-splash.desktop.*: + Make all desktop files translatable. Add to rework a bit the build + system for this. + +2008-09-02 Vincent Untz + + * data/gnome-wm: avoid gnome-wm launching itself in loop when the + configuration tells us to use... gnome-wm. + +2008-09-02 Vincent Untz + + Remove required components from the default session. The required + components should always be in the default session anyway, and keeping + the list up-to-date in two places can break easily stuff (if someone + adds a required component or if the user change the value if + windowmanager only in required components, eg) + Note that it affects the failsafe session case: all required components + will also run in the failsafe session. This was intended to be this + way, as far as I understand. + + * data/gnome-session.schemas.in: remove metacity,gnome-panel,nautilus + from the default session + * gnome-session/main.c: (load_standard_apps): always call + append_required_apps() since the required applications are not in the + default session. + +2008-09-02 Vincent Untz + + * data/gnome-session.schemas.in: + * gnome-session/main.c: (append_required_apps): + Rename /desktop/gnome/session/required_components key to + /desktop/gnome/session/required_components_list avoid potential clash + that might happen because of the + /desktop/gnome/session/required_components directory. + +2008-09-02 Vincent Untz + + * data/gnome-session.schemas.in: revert string freeze break. Add a + FIXME for the future instead. + +2008-09-02 Vincent Untz + + * data/gnome-session.schemas.in: + * data/gnome-wm: + * gnome-session/main.c: + Do not use dash but underscore to separate words in gconf keys, as + recommended by the gconf naming conventions. Since they keys are new in + 2.23, it's not too late to do this change. + +2008-09-02 Vincent Untz + + * configure.in: post-release bump to 2.23.92. + +==================== 2.23.91 ==================== + +2008-09-02 Vincent Untz + + * NEWS:: version 2.23.91 + +2008-09-02 Vincent Untz + + Synchronize the environment set by the gnome-keyring daemon in the + gnome-keyring-daemon wrapper to the environment of gnome-session. + Fix the other part of bug #547272. + + * compat/gnome-keyring-daemon-wrapper.c: + (keyring_env_to_hashtable): new, put an environment in a hash table + (keyring_environment_updated_from_new): new, call Setenv dbus method to + have gnome-session aware of changed/new environment variables + (keyring_environment_removed_from_old): new, unset (kind of, since + that's the Setenv dbus method with an empty value) environment + variables that were unset + (keyring_export_environment): new, does the synchronization magic + (keyring_daemon_start): updated to use keyring_export_environment() + +2008-09-02 Vincent Untz + + * compat/gnome-keyring-daemon-wrapper.c: (keyring_daemon_start): call + gnome_keyring_daemon_prepare_environment_sync() so that the keyring + daemon has all the right environment variables. + Patch by Stef Walter + Fix part of bug #547272. + +2008-09-02 Vincent Untz + + * gnome-session/main.c: (main): set GNOME_DESKTOP_SESSION_ID to + "this-is-deprecated" to make it clear that people should stop relying + on this. + +2008-09-02 Vincent Untz + + * gnome-session/main.c: (main): export GNOME_DESKTOP_SESSION_ID. We + need this for compatibility reasons for third-party programs. + Fix bug #542880. + +2008-09-01 Vincent Untz + + Add --logout, --force-logout, --logout-dialog and --shutdown-dialog + arguments to gnome-session-save, and deprecate --kill. This will make + things less ambiguous. + + * tools/gnome-session-save.c: rename some variables + (display_error): updated + (get_sm_proxy): call get_session_bus() from there, since it simplifies + code elsewhere + (set_session_name): updated + (do_logout): renamed from logout_session(), and simplified. Also add + a mode argument for the logout dbus method. + (do_shutdown_dialog): new + (main): updated for new options + * doc/man/gnome-session-save.1: update man page + Fix bug #550211. + +2008-09-01 Vincent Untz + + * gnome-session/main.c: (require_dbus_session): make sure we have a + session bus by re-running ourself with "dbus-launch + --exit-with-session" if necessary. + (main): call require_dbus_session() at the early beginning + Based on patch by Colin Walters + Fix bug #546863. + +2008-08-30 Matthias Clasen + + * gnome-session/gsm-app.c: + * gnome-session/gsm-autostart-app.c: + * gnome-session/gsm-manager.c: + * gnome-session/gsm-resumed-app.c: Always chain up in dispose + handlers. + +2008-08-29 Matthias Clasen + + * splash/gnome-session-splash.c: Plug a small leak. + +2008-08-29 Matthias Clasen + + * egg/eggsmclient-xsmp.c (sm_client_xsmp_connect): Don't + leak cmdline. + +2008-08-29 William Jon McCann + + * gnome-session/main.c (find_desktop_file_for_app_name): + Add some debugging. + +2008-08-29 Matthias Clasen + + * compat/at-spi-registryd-wrapper.c (set_gtk_modules): Plug + another leak + +2008-08-29 William Jon McCann + + * egg/eggdesktopfile.c (egg_desktop_file_new_from_key_file), + (egg_desktop_file_launchv): + * gnome-session/gsm-autostart-app.c (setup_condition_monitor), + (is_conditionally_disabled): + * gnome-session/gsm-resumed-app.c + (gsm_resumed_app_new_from_legacy_session): + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_finalize), + (register_client_callback): + Fix some leaks found by valgrind. + Patch from: Matthias Clasen + +2008-08-29 William Jon McCann + + * data/Makefile.am: + Don't install the gnome-wm.desktop by default. + +2008-08-29 William Jon McCann + + * capplet/gsm-app-dialog.c (on_browse_button_clicked), + (setup_dialog), (gsm_app_dialog_dispose), + (gsm_app_dialog_get_name), (gsm_app_dialog_get_command), + (gsm_app_dialog_get_comment), (gsm_app_dialog_init), + (gsm_app_dialog_finalize): + * capplet/gsm-properties-dialog.c (gsm_properties_dialog_dispose), + (gsm_properties_dialog_finalize): + Fix add/edit dialog. + +2008-08-29 William Jon McCann + + * gnome-session/main.c (main): Fix typo. + +2008-08-28 William Jon McCann + + * gnome-session/main.c (append_default_apps), (load_standard_apps), + (load_override_apps), (main): + Add command line option to override the gconf key used + to look up the default session. + +2008-08-26 William Jon McCann + + * data/gnome-wm: + Use the required components key if possible. + +2008-08-26 William Jon McCann + + * data/gnome-session.schemas.in: + * data/gnome-wm: + Don't use gnome-wm by default. We should encourage + WMs to install a desktop file and to set + /desktop/gnome/session/required-components/windowmanager + +2008-08-26 William Jon McCann + + * gnome-session/main.c (find_desktop_file_for_app_name), + (append_default_apps), (append_required_apps): + Look in app dirs for required components. + +2008-08-26 William Jon McCann + + * gnome-session/main.c (append_required_apps): + Honor the list of required apps in the list key instead of + loading all component keys in the dir. + +2008-08-26 Frederic Crozat + + * compat/at-spi-registryd-wrapper.c: always set a11y gtk modules + but unset it if at-registry could not be started. Still fixes #548982. + +2008-08-22 Frederic Crozat + + * compat/at-spi-registryd-wrapper.c: don't set a11y gtk modules + if at registry could not be started. Fixes #548982. + +2008-08-22 Frederic Crozat + + * gnome-session/gsm-util.c: ensure non-fatal error + are treated as such. Fixes #548980. + +2008-08-22 Jens Granseuer + + * capplet/gsm-properties-dialog.c: add missing include for gio. + Fixes #548909. + +2008-08-21 William Jon McCann + + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_restart): + * gnome-session/gsm-manager.c (_app_has_startup_id), + (find_app_for_startup_id), (_disconnect_client): + Don't return an error if we can't stop an app that we want + to restart. It may be stopped. Also try to find the + app based on the startup ID first if we have one. + Probably fixes #548710 + +2008-08-20 William Jon McCann + + * configure.in: Post release version bump + +==================== 2.23.90 ==================== + +2008-08-20 William Jon McCann + + * NEWS: Update. + * configure.in: Bump version. + * gnome-session/gsm-manager.c (gsm_manager_dispose): + Disconnect signal handlers before disposing. + +2008-08-19 William Jon McCann + + * gnome-session/gsm-xsmp-client.c (interact_request_callback): + Fix debug to show correct dialog type for interact request. + +2008-08-19 Frederic Crozat + + * splash/gnome-session-splash.c: + Exit splash screen when last client startup + notification finished. Fixes #546410 + +2008-08-18 William Jon McCann + + * capplet/gsm-properties-dialog.c (add_app): + Fix a case where we don't create ~/.config/autostart + Based on patch from: James Westby + Fixes #548129 + +2008-08-18 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (gsm_inhibit_dialog_dispose): + Don't try to remove the signal handlers more than once. + +2008-08-18 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c + (gsm_inhibit_dialog_constructor): + Change a warning to a debug. + +2008-08-18 William Jon McCann + + * gnome-session/gsm-xsmp-client.c + (save_yourself_phase2_request_callback): + Honor SaveYourselfPhase2Request as a valid + SaveYourself response. + Fixes #548259 + +2008-08-18 Claude Paroz + + * data/gsm-inhibit-dialog.glade: Removed translatable property on stock + label. + +2008-08-16 Kjartan Maraas + + * capplet/gsm-app-dialog.c: + * egg/eggdesktopfile.h: + * egg/eggsmclient-libgnomeui.c: (egg_sm_client_module_info_get): + * egg/eggsmclient-xsmp.c: + * gnome-session/gsm-autostart-app.c: + * gnome-session/gsm-client.c: + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c: + * gnome-session/gsm-inhibit-dialog.c: (add_inhibitor): + * gnome-session/gsm-inhibit-dialog.h: + * gnome-session/gsm-inhibitor.c: + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c: + * gnome-session/gsm-store.c: + * gnome-session/gsm-util.c: + * gnome-session/gsm-xsmp-client.c: + * gnome-session/gsm-xsmp-server.c: + * gnome-session/test-inhibit.c: + * tools/gnome-session-save.c: + Fix some warnings from sparse and other tools. Closes + bug #521413 + +2008-08-15 William Jon McCann + + * gnome-session/gsm-manager.c (inhibitor_has_client_id), + (_disconnect_client): + Remove inhibitors for the client when it disconnects. + +2008-08-15 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor), + (gsm_inhibit_dialog_constructor): + Try again with fewer warnings this time. + +2008-08-15 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor): + Turn off the window snapshot feature for now. I think + it needs a bit more development. + +2008-08-15 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gdm-log.c (log_level_to_priority_and_prefix), + (gdm_log_default_handler), (gdm_log_toggle_debug), + (gdm_log_set_debug), (gdm_log_init), (gdm_log_shutdown): + * gnome-session/gdm-log.h: + * gnome-session/main.c (signal_cb), (main): + Add log/debugging framework. + +2008-08-15 William Jon McCann + + * gnome-session/gdm-signal-handler.c (signal_io_watch), + (gdm_signal_handler_set_fatal_func): + * gnome-session/gdm-signal-handler.h: + * gnome-session/main.c (main): + Allow the signal handler to call gtk_main_quit. + +2008-08-15 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gdm-signal-handler.c (block_signals_push), + (block_signals_pop), (signal_io_watch), (fallback_get_backtrace), + (crashlogger_get_backtrace), (gdm_signal_handler_backtrace), + (signal_handler), (catch_signal), (uncatch_signal), + (gdm_signal_handler_add), (gdm_signal_handler_add_fatal), + (callback_data_free), (gdm_signal_handler_remove_and_free_data), + (gdm_signal_handler_remove), (find_callback_data_by_func), + (gdm_signal_handler_remove_func), (gdm_signal_handler_class_init), + (signal_list_free), (gdm_signal_handler_set_main_loop), + (gdm_signal_handler_init), (gdm_signal_handler_finalize), + (gdm_signal_handler_new): + * gnome-session/gdm-signal-handler.h: + * gnome-session/gsm-manager.c (gsm_manager_dispose), + (gsm_manager_class_init), (gsm_manager_finalize): + * gnome-session/main.c (signal_cb), (main): + Add signal handling framework. + +2008-08-15 William Jon McCann + + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (_signal_pid), + (autostart_app_stop_spawn): + * gnome-session/gsm-manager.c (app_condition_changed): + Add support for killing apps. Try to stop app if + there isn't a client available for it. + +2008-08-14 William Jon McCann + + * gnome-session/main.c (load_standard_apps), (load_override_apps), + (main): + Add command line option to override autostart dirs. + +2008-08-14 William Jon McCann + + * gnome-session/gsm-manager.c (gsm_manager_constructor), + (append_app), (gsm_manager_add_autostart_app), + (gsm_manager_add_autostart_apps_from_dir), + (gsm_manager_add_legacy_session_apps): + * gnome-session/gsm-manager.h: + * gnome-session/main.c (append_default_apps), + (append_saved_session_apps), (append_required_apps), (load_apps), + (main): + Move the gconf key and dir loading code out of the manager. + +2008-08-14 Ghee Teo + + * data/gnome-wm: + Fixes bug #547769. Handle gconftool-2 errors properly. + +2008-08-14 William Jon McCann + + * gnome-session/main.c (main): + Fail when unknown options are given. Support a version option. + +2008-08-13 William Jon McCann + + * gnome-session/gsm-manager.c (append_app), (append_default_apps): + Correctly check if app-id has already been added to store. + +2008-08-13 William Jon McCann + + * gnome-session/gsm-autostart-app.c + (gsm_autostart_app_set_desktop_filename): + * gnome-session/gsm-manager.c (append_default_apps), + (append_autostart_apps): + Clean up some debug spew. + +2008-08-13 William Jon McCann + + * gnome-session/gsm-autostart-app.c (is_conditionally_disabled): + * gnome-session/gsm-manager.c (_debug_app_for_phase), + (debug_app_summary), (gsm_manager_start): + Add a debugging summary of all apps before starting. + +2008-08-13 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_error_quark), + (gsm_client_error_get_type), (gsm_client_cancel_end_session), + (gsm_client_query_end_session), (gsm_client_end_session): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c (dbus_client_query_end_session), + (dbus_client_end_session), (dbus_client_cancel_end_session): + * gnome-session/gsm-manager.c (_client_end_session), + (_client_query_end_session), (_client_cancel_end_session): + * gnome-session/gsm-xsmp-client.c (client_iochannel_watch), + (_client_protocol_timeout), (do_save_yourself), + (xsmp_cancel_end_session), (xsmp_query_end_session), + (xsmp_end_session), (gsm_xsmp_client_disconnect), + (gsm_xsmp_client_finalize), (interact_request_callback), + (close_connection_callback): + Make QES,ES,CES return errors. Check to make sure that + connection is valid before handling same. Set + status and disconnect when disconnected. + +2008-08-13 William Jon McCann + + * splash/Makefile.am: + * splash/gnome-login-sound.c: + * splash/gnome-login-sound.desktop.in: + * splash/gnome-logout-sound.sh: + Remove gnome-login-sound. It is superseded and + improved upon by libcanberra-login-sound. + +2008-08-13 Erwann Chenede - + + * gnome-session/Makefile.am: added XRENDER_LIBS to + enable compilation on Solaris. Fixes #547619 + +2008-08-12 William Jon McCann + + * gnome-session/gsm-manager.c (phase_num_to_name): + Add missing breaks; + +2008-08-12 William Jon McCann + + * gnome-session/gsm-autostart-app.c (autostart_app_start_spawn): + Initialize error. + Fixes #547443 + +2008-08-12 Matthias Clasen + + * compat/at-spi-registryd-wrapper.c: Fix a crash. + +2008-08-11 William Jon McCann + + * gnome-session/gsm-manager.c (on_xsmp_client_logout_request), + (on_store_client_added): + Add back support for logout via SaveYourselfRequest. + Based on patch from: Kim Woelders + Fixes #547069 + +2008-08-11 William Jon McCann + + * capplet/main.c (main): + Add support for --version. + +2008-08-11 William Jon McCann + + * capplet/gsm-properties-dialog.c (key_file_set_locale_string), + (write_desktop_file): + Try to handle null key values. + May fix #546896 + +2008-08-11 William Jon McCann + + * capplet/Makefile.am: + * capplet/commands.c: + * capplet/commands.h: + * capplet/gsm-app-dialog.c (make_exec_uri), + (on_browse_button_clicked), (on_entry_activate), (setup_dialog), + (gsm_app_dialog_constructor), (gsm_app_dialog_dispose), + (gsm_app_dialog_set_name), (gsm_app_dialog_set_command), + (gsm_app_dialog_set_comment), (gsm_app_dialog_get_name), + (gsm_app_dialog_get_command), (gsm_app_dialog_get_comment), + (gsm_app_dialog_set_property), (gsm_app_dialog_get_property), + (gsm_app_dialog_class_init), (gsm_app_dialog_init), + (gsm_app_dialog_finalize), (gsm_app_dialog_new): + * capplet/gsm-app-dialog.h: + * capplet/gsm-properties-dialog.c (on_response), (find_by_id), + (get_app_description), (append_app), (compare_app), + (append_autostart_apps), (populate_model), (on_selection_changed), + (system_desktop_entry_exists), (update_desktop_file), + (ensure_user_autostart_dir), (key_file_set_locale_string), + (key_file_to_file), (write_desktop_file), (enable_app), + (disable_app), (on_startup_enabled_toggled), (add_app), + (add_from_desktop_file), (on_drag_data), (edit_app_dialog), + (on_add_app_clicked), (delete_desktop_file), (delete_app), + (on_delete_app_clicked), (update_app), (on_edit_app_clicked), + (on_autosave_value_notify), (on_autosave_value_toggled), + (on_save_session_clicked), (setup_dialog), + (gsm_properties_dialog_constructor), + (gsm_properties_dialog_dispose), + (gsm_properties_dialog_class_init), (gsm_properties_dialog_init), + (gsm_properties_dialog_finalize), (gsm_properties_dialog_new): + * capplet/gsm-properties-dialog.h: + * capplet/main.c (dialog_response), (main): + * capplet/ui.c: + * capplet/ui.h: + * data/session-properties.glade: + * gnome-session/gsm-inhibit-dialog.h: + Rework the dialogs to use gobject. + +2008-08-08 William Jon McCann + + * gnome-session/gsm-manager.c (gsm_manager_error_get_type), + (gsm_manager_logout): + * gnome-session/gsm-manager.h: + * gnome-session/org.gnome.SessionManager.xml: + * tools/gnome-session-save.c (display_error), (get_sm_proxy), + (set_session_name), (logout_session), (main): + Melt the gnome-session-save tool and make it actually work. + Fix the api for Logout to take a uint. + +2008-08-08 Jonh Wendell + + * gnome-session/gsm-autostart-app.c (is_disabled): Dropped the + auto-restart check, it's useless in this context. + +2008-08-08 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor), + (gsm_inhibit_dialog_set_client_store), + (gsm_inhibit_dialog_set_property), + (gsm_inhibit_dialog_get_property), (gsm_inhibit_dialog_class_init), + (gsm_inhibit_dialog_new): + * gnome-session/gsm-inhibit-dialog.h: + * gnome-session/gsm-manager.c (query_end_session_complete), + (on_client_end_session_response), (request_reboot), + (request_shutdown), (request_suspend), (request_hibernate), + (request_switch_user): + Try to get application name for client when not responding + and we don't have an app-id for it. + Should fix #546755 + +2008-08-08 William Jon McCann + + * configure.in: Bump dbus-glib dep to 0.76 + Fixes #546722 + +2008-08-07 Matthias Clasen + + * data/gnome-session.schemas.in: Fix a typo. + +2008-08-07 Matthias Clasen + + * capplet/commands.c: Use standard icon name. + +2008-08-05 Jens Granseuer + + * gnome-session/gsm-gconf.c: include sys/types.h for pid_t. Fixes + #546439. + +2008-08-05 William Jon McCann + + * configure.in: Post release version bump + +==================== 2.23.6 ==================== + +2008-08-05 William Jon McCann + + * NEWS: Update for 2.23.6 release + +2008-08-05 William Jon McCann + + * gnome-session/gsm-app.h: + Removed unused item from vtable. + +2008-08-04 William Jon McCann + + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_init), + (is_disabled), (parse_condition_string), (if_exists_condition_cb), + (unless_exists_condition_cb), (gconf_condition_cb), + (setup_condition_monitor), (load_desktop_file), + (gsm_autostart_app_dispose), (is_conditionally_disabled), + (autostart_app_start_spawn): + Fix a number of bugs and leaks related to the monitoring + of the AutostartCondition keys. + + * gnome-session/gsm-manager.c (app_condition_changed), + (_app_has_app_id), (find_app_for_app_id): + Allow NULL clients on conditional disable. Fix + finding of clients. + +2008-08-04 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_peek_is_conditionally_disabled): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (is_conditionally_disabled), + (is_disabled), (gsm_autostart_app_class_init): + * gnome-session/gsm-manager.c (_start_app): + Add gsm_app_is_conditionally_disabled. Remove AutostartCondition + check from is_disabled. We want to be able to distinguish + the two. + +2008-08-04 William Jon McCann + + * gnome-session/main.c (acquire_name), (main): + Remove session bus launching code. The bus was + designed to be started before the session is run. + +2008-08-04 William Jon McCann + + * compat/at-spi-registryd-wrapper.c: + * egg/eggdesktopfile.c: + * gnome-session/gsm-util.c: + * gnome-session/gsm-util.h: + * gnome-session/main.c: + * splash/gnome-login-sound.c: + * splash/gnome-session-splash.c: + * splash/splash-window.h: + Use single GTK+ includes + Patch from: Wouter Bolsterlee + Fixes #544830 + +2008-08-04 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-app.c (gsm_app_error_quark), + (get_next_app_serial), (register_app), (gsm_app_constructor), + (gsm_app_class_init), (gsm_app_peek_id), (gsm_app_peek_app_id), + (gsm_app_peek_startup_id), (gsm_app_peek_phase), + (gsm_app_peek_is_disabled), (gsm_app_peek_autorestart), + (gsm_app_get_app_id), (gsm_app_get_startup_id), + (gsm_app_get_phase): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (is_disabled), + (autostart_app_start_spawn), (autostart_app_start_activate), + (gsm_autostart_app_get_app_id), (gsm_autostart_app_constructor), + (gsm_autostart_app_class_init): + * gnome-session/gsm-manager.c (app_condition_changed), + (on_phase_timeout), (_start_app), (_disconnect_client), + (_app_has_startup_id), (find_app_for_startup_id), + (on_xsmp_client_register_request), (append_app), + (gsm_manager_register_client), (_app_has_autostart_condition): + * gnome-session/gsm-resumed-app.c (gsm_resumed_app_get_app_id), + (gsm_resumed_app_class_init): + * gnome-session/org.gnome.SessionManager.App.xml: + Put the apps on the bus. + +2008-08-04 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_has_autostart_condition): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_dispose), + (is_disabled), (gsm_autostart_app_has_autostart_condition), + (gsm_autostart_app_class_init): + * gnome-session/gsm-manager.c (_start_app), (do_phase_startup), + (find_app_for_app_id), (find_app_for_startup_id), (append_app), + (append_required_apps), (gsm_manager_init), (gsm_manager_finalize), + (_app_has_autostart_condition), + (gsm_manager_is_autostart_condition_handled): + * gnome-session/gsm-manager.h: + * gnome-session/org.gnome.SessionManager.xml: + Add a method to ask if a certain AutostartCondition is + being handled. One use of this is for the settings daemon + to know if there are any a11y tools that will be started + for a certain gconf key. + +2008-08-04 William Jon McCann + + * data/Makefile.am: + * gnome-session/Makefile.am: + * gnome-session/gsm-inhibit-dialog.glade: + Move glade file to data as requested by Lucas. + +2008-08-04 William Jon McCann + + * capplet/commands.c (system_desktop_entry_exists), (find_by_id), + (ensure_user_autostart_dir), (key_file_to_file), + (key_file_set_locale_string), (delete_desktop_file), + (write_desktop_file), (append_app), (compare_app), + (append_autostart_apps), (spc_command_get_store), + (spc_command_enable_app), (spc_command_disable_app), + (spc_command_add_app): + * capplet/main.c (main): + * capplet/ui.c (make_exec_uri), (cmd_browse_button_clicked_cb), + (entry_activate_cb), (edit_app_dialog), (selection_changed_cb), + (startup_enabled_toggled_cb), (add_from_desktop_file), + (drag_data_cb), (setup_treeview), (add_app_cb), (delete_app_cb), + (edit_app_cb), (autosave_value_notify), (autosave_value_toggled), + (help_cb): + * compat/at-spi-registryd-wrapper.c (registry_ior_watch), + (set_gtk_modules), (main): + * compat/gnome-keyring-daemon-wrapper.c (keyring_daemon_stop), + (child_setup), (keyring_daemon_start), (quit), (main): + * compat/gnome-settings-daemon-helper.c (set_gtk1_theme_rcfile): + * gnome-session/gsm-gconf.c (gsm_gconf_init), (gsm_gconf_check), + (gsm_gconf_shutdown): + * gnome-session/gsm-util.c (gsm_util_get_autostart_dirs), + (gsm_util_get_app_dirs), (gsm_util_text_is_blank), + (gsm_util_init_error), (gsm_util_generate_startup_id), + (gsm_util_update_activation_environment), (gsm_util_setenv): + * splash/gnome-login-sound.c (get_sound_file_from_config), + (get_sound_file), (maybe_play_sound): + * splash/gnome-session-splash.c (get_session_bus), + (set_session_running_handler), (event_func), (splash_clicked), + (filter_func), (load_pixbuf), (load_splash_pixbuf), (main): + * splash/splash-window.c (re_scale), (splash_window_expose_event), + (splash_window_realize), (splash_icon_destroy), + (splash_window_finalize), (layout_icon), (re_laydown), + (update_trans_effect), (gsm_splash_window_new), + (gsm_splash_window_start), (gsm_splash_window_finish): + * tools/gnome-session-save.c (ping_reply), (ice_ping), (die_cb), + (cancelled_cb), (display_error), (ice_connection_watch), + (get_session_bus), (set_session_name), (main): + Some cosmetic / code-style changes requested by Lucas. + +2008-08-01 Matthias Clasen + + * gnome-session/gsm-util.c (gsm_util_get_autostart_dirs): Don't + look in /usr/share/autostart, since that is a KDE-specific + location using legacy KDE autostart conventions predating the + autostart spec. + +2008-07-31 William Jon McCann + + * data/Makefile.am: + * data/gnome-session.schemas.in: + * data/gnome-wm: + * data/gnome-wm.desktop.in: + * gnome-session/gsm-util.c (gsm_util_get_app_dirs): + Install a desktop file for gnome-wm and use that + as the default window manager instead of calling + metacity directly. Add a gconf key to allow + changing the default program for gnome-wm to use. + Remove the gnome/wm-properties directory from + the autostart search path. + +2008-07-30 William Jon McCann + + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_error_quark), + (gsm_inhibitor_error_get_type), (gsm_inhibitor_set_client_id), + (gsm_inhibitor_get_client_id), (gsm_inhibitor_class_init): + * gnome-session/gsm-inhibitor.h: + DBus doesn't allow NULL or empty object path strings. Throw + an error instead. + +2008-07-30 William Jon McCann + + * gnome-session/main.c (on_bus_name_lost), (acquire_name_on_proxy), + (acquire_name): + Handle NameLost signal and exit when disconnected from bus. + +2008-07-30 William Jon McCann + + * gnome-session/org.gnome.SessionManager.Client.xml: + * gnome-session/org.gnome.SessionManager.Inhibitor.xml: + Drop the properties for now until we can figure out + why they are causing the dbus-glib bindings to crash. + +2008-07-30 William Jon McCann + + * gnome-session/gsm-manager.c (listify_store_ids), + (gsm_manager_get_clients), (gsm_manager_get_inhibitors): + * gnome-session/gsm-manager.h: + * gnome-session/org.gnome.SessionManager.xml: + Add GetClients and GetInhibitors. + +2008-07-30 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_set_startup_id), + (gsm_client_set_app_id), (gsm_client_class_init): + * gnome-session/gsm-dbus-client.c (handle_end_session_response): + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor), + (on_store_inhibitor_added): + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_set_bus_name), + (gsm_inhibitor_set_client_id), (gsm_inhibitor_set_reason), + (gsm_inhibitor_get_app_id), (gsm_inhibitor_get_client_id), + (gsm_inhibitor_get_reason), (gsm_inhibitor_class_init): + * gnome-session/gsm-manager.c (_find_by_startup_id), + (_on_query_end_session_timeout), (_disconnect_client), + (_disconnect_dbus_client), (inhibitor_has_bus_name), + (_app_has_startup_id), (_client_has_startup_id), + (on_xsmp_client_register_request), (inhibitor_has_client_id), + (on_client_end_session_response), (append_app), + (append_default_apps), (gsm_manager_register_client), + (gsm_manager_inhibit): + * gnome-session/gsm-xsmp-client.c (register_client_callback): + DBus forces us to not use NULL strings for properties. Would + be nice if the bindings took care of this for us by converting + NULL strings into some "unset" value. + +2008-07-30 Matthias Clasen + + * gnome-session/gsm-client.c: Cosmetic fix to some + g_return_val_if_fail return values. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_get_unix_process_id): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c (get_caller_info), + (gsm_dbus_client_set_bus_name), (dbus_client_get_unix_process_id), + (gsm_dbus_client_class_init): + * gnome-session/gsm-xsmp-client.c (_parse_value_as_uint), + (xsmp_get_unix_process_id), (gsm_xsmp_client_class_init): + * gnome-session/org.gnome.SessionManager.Client.xml: + Add GetUnixProcessId to Client interface. + +2008-07-29 William Jon McCann + + * capplet/commands.c: + * capplet/ui.c: + * doc/dbus/gnome-session.xml.in: + Fix build. + +2008-07-29 Matthias Clasen + + * gnome-session/gconf.[hc]: Rename to gsm-gconf.[hc] + * gnome-session/util.[hc]: Rename to gsm-util.[hc] + + * gnome-session/*.c: + * gnome-session/Makefile.am: Adapt + +2008-07-29 Matthias Clasen + + * gnome-session/gsm-xsmp-client.c: + * gnome-session/gsm-manager.c: _-prefix static functions. + Pointed out by Lucas Rocha. + +2008-07-29 William Jon McCann + + * MAINTAINERS: Add myself. + +2008-07-29 William Jon McCann + + * configure.in: Bump to 2.23.6 to be in sync with trunk. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (on_store_inhibitor_added), + (on_store_inhibitor_removed), (setup_dialog): + * gnome-session/gsm-store.c (gsm_store_remove): + Fix double free. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-manager.c (_disconnect_client), + (_disconnect_dbus_client), (remove_clients_for_connection), + (on_client_disconnected): + Don't remove clients from the iterator func. Set + client status when disconnecting. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_dispose), + (gsm_client_class_init): + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_dispose), + (gsm_dbus_client_class_init): + * gnome-session/gsm-inhibit-dialog.c (on_response), + (model_has_one_entry), (on_store_inhibitor_removed), + (gsm_inhibit_dialog_dispose), (gsm_inhibit_dialog_finalize): + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_class_init): + * gnome-session/gsm-manager.c (bus_name_owner_changed), + (gsm_manager_register_client): + * gnome-session/gsm-store.c (gsm_store_foreach_remove): + * gnome-session/gsm-xsmp-server.c (accept_ice_connection): + Add introspection info to Inhibitor. Fix a few + refcounting problems. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-dbus-client.c (dbus_client_stop), + (dbus_client_query_end_session), (dbus_client_end_session), + (dbus_client_cancel_end_session), (gsm_dbus_client_class_init): + * gnome-session/gsm-dbus-client.h: + Remove some obsolete signals. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_class_init): + Fix the minimum value for guint property. + + * gnome-session/gsm-dbus-client.c (setup_connection), + (raise_error), (handle_end_session_response), + (client_dbus_filter_function), (gsm_dbus_client_constructor), + (dbus_client_stop), (dbus_client_query_end_session), + (dbus_client_end_session), (dbus_client_cancel_end_session), + (gsm_dbus_client_new): + * gnome-session/org.gnome.SessionManager.ClientPrivate.xml: + * gnome-session/test-client-dbus.c (on_client_query_end_session), + (on_client_end_session), (on_client_cancel_end_session), + (on_client_stop), (register_client), (unregister_client): + Unicast the client private signals. + +2008-07-29 William Jon McCann + + * doc/dbus/Makefile.am: + * gnome-session/Makefile.am: + * gnome-session/gsm-client.xml: + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_class_init): + * gnome-session/gsm-dbus-client.xml: + * gnome-session/gsm-inhibitor.xml: + * gnome-session/gsm-manager.xml: + Rename the introspection docs. Remove the + dbus-glib stuff from the DBusClient. + +2008-07-29 William Jon McCann + + * doc/dbus/Makefile.am: + * gnome-session/gsm-dbus-client.xml: + Rename the DBusClient interface to ClientPrivate. + Cuz well that's what it is. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_set_status), + (gsm_client_set_property), (gsm_client_get_property), + (gsm_client_class_init), (gsm_client_peek_status), + (gsm_client_get_status): + * gnome-session/gsm-client.h: + * gnome-session/gsm-client.xml: + * gnome-session/gsm-inhibitor.xml: + Make status uint. Add some more exported methods to Client. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_peek_id), + (gsm_client_peek_app_id), (gsm_client_peek_startup_id), + (gsm_client_peek_restart_style_hint), (gsm_client_get_startup_id), + (gsm_client_get_app_id), (gsm_client_get_restart_style_hint), + (gsm_client_get_app_name): + * gnome-session/gsm-client.h: + * gnome-session/gsm-client.xml: + * gnome-session/gsm-dbus-client.c (dbus_client_stop), + (dbus_client_query_end_session), (dbus_client_end_session): + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor): + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_peek_bus_name), + (gsm_inhibitor_get_app_id), (gsm_inhibitor_get_client_id), + (gsm_inhibitor_get_reason), (gsm_inhibitor_get_flags), + (gsm_inhibitor_get_toplevel_xid), (gsm_inhibitor_peek_id), + (gsm_inhibitor_peek_app_id), (gsm_inhibitor_peek_client_id), + (gsm_inhibitor_peek_reason), (gsm_inhibitor_peek_flags), + (gsm_inhibitor_peek_toplevel_xid), (gsm_inhibitor_peek_cookie): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (_debug_client), (_debug_inhibitor), + (_find_by_cookie), (_find_by_startup_id), (_client_end_session), + (_client_query_end_session), (inhibitor_has_flag), + (inhibitor_is_jit), (on_query_end_session_timeout), + (disconnect_client), (inhibitor_has_bus_name), + (_client_has_startup_id), (inhibitor_has_client_id), + (on_client_end_session_response), (gsm_manager_register_client), + (gsm_manager_inhibit), (gsm_manager_uninhibit): + * gnome-session/gsm-xsmp-client.c (set_description): + * gnome-session/gsm-xsmp-server.c (accept_ice_connection): + Add client introspection info. Fix the inhibitor methods. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-manager.c (gsm_manager_register_client): + * gnome-session/gsm-manager.xml: + * gnome-session/test-client-dbus.c (register_client): + Don't return the "new" startup ID from the register + client method. We can make this available via + the Client interface if necessary. + +2008-07-29 William Jon McCann + + * gnome-session/gsm-manager.c (append_default_apps): + Check for gnome vendor prefix on default apps. + +2008-07-28 William Jon McCann + + * doc/dbus/Makefile.am: + Install into docdir/dbus. + +2008-07-28 William Jon McCann + + * doc/dbus/Makefile.am: + Fix distcheck + +2008-07-28 William Jon McCann + + * gnome-session/gsm-manager.c (inhibitor_has_flag), + (gsm_manager_is_logout_inhibited), (gsm_manager_start), + (gsm_manager_setenv), (gsm_manager_initialization_error), + (gsm_manager_is_switch_user_inhibited), + (gsm_manager_is_suspend_inhibited), (gsm_manager_shutdown), + (gsm_manager_logout), (gsm_manager_register_client), + (gsm_manager_unregister_client), (gsm_manager_inhibit), + (gsm_manager_uninhibit), (gsm_manager_is_inhibited): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-manager.xml: + Export an IsInhibited method to the bus. + +2008-07-28 William Jon McCann + + * doc/dbus/Makefile.am: + * gnome-session/gsm-manager.c (on_store_client_added), + (on_store_client_removed), (gsm_manager_set_client_store), + (gsm_manager_class_init), (on_store_inhibitor_added), + (on_store_inhibitor_removed), (gsm_manager_init): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-manager.xml: + Add signals for client and inhibitor add/remove. + +2008-07-28 William Jon McCann + + * doc/dbus/Makefile.am: + * doc/dbus/gnome-session.xml.in: + * gnome-session/gsm-inhibitor.xml: + Add docs for inhibitors. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-manager.c (disconnect_client): + Use app_restart variable. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-manager.c (do_phase_query_end_session): + Add query timeout after signalling clients. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-store.c (gsm_store_dispose), + (gsm_store_class_init): + Clear store in dispose. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-manager.c (gsm_manager_class_init): + * gnome-session/gsm-store.c (gsm_store_remove), + (foreach_remove_wrapper), (gsm_store_foreach_remove): + * gnome-session/gsm-xsmp-server.c (accept_ice_connection), + (gsm_xsmp_server_finalize): + Emit removed signal after removing from store. + +2008-07-27 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-client.c: + * gnome-session/gsm-inhibitor.c (register_inhibitor), + (gsm_inhibitor_constructor): + * gnome-session/gsm-inhibitor.xml: + Put inhibitors on the bus. + +2008-07-27 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-client-store.c: + * gnome-session/gsm-client-store.h: + * gnome-session/gsm-inhibit-dialog.c (find_inhibitor), + (add_inhibitor), (on_store_inhibitor_added), + (on_store_inhibitor_removed), + (gsm_inhibit_dialog_set_inhibitor_store), (add_to_model), + (populate_model), (gsm_inhibit_dialog_class_init), + (gsm_inhibit_dialog_new): + * gnome-session/gsm-inhibit-dialog.h: + * gnome-session/gsm-inhibitor-store.c: + * gnome-session/gsm-inhibitor-store.h: + * gnome-session/gsm-inhibitor.c (get_next_inhibitor_serial), + (gsm_inhibitor_constructor), (gsm_inhibitor_get_id), + (gsm_inhibitor_finalize): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (_debug_client), (debug_clients), + (debug_inhibitors), (_find_by_cookie), (app_condition_changed), + (do_phase_end_session), (gsm_manager_is_logout_inhibited), + (cancel_end_session), (_generate_unique_cookie), + (on_query_end_session_timeout), (do_phase_query_end_session), + (disconnect_client), (remove_clients_for_connection), + (remove_inhibitors_for_connection), + (on_xsmp_client_register_request), + (on_client_end_session_response), (on_store_client_added), + (gsm_manager_set_client_store), (gsm_manager_get_property), + (gsm_manager_class_init), (gsm_manager_init), + (gsm_manager_finalize), (gsm_manager_new), + (gsm_manager_is_switch_user_inhibited), + (gsm_manager_is_suspend_inhibited), (gsm_manager_register_client), + (gsm_manager_unregister_client), (gsm_manager_inhibit), + (gsm_manager_uninhibit): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-store.c (gsm_store_error_quark), + (gsm_store_size), (gsm_store_remove), (gsm_store_foreach), + (gsm_store_find), (gsm_store_lookup), (foreach_remove_wrapper), + (gsm_store_foreach_remove), (_remove_all), (gsm_store_clear), + (gsm_store_add), (gsm_store_set_locked), (gsm_store_get_locked), + (gsm_store_set_property), (gsm_store_get_property), + (gsm_store_class_init), (_destroy_object), (gsm_store_init), + (gsm_store_finalize), (gsm_store_new): + * gnome-session/gsm-store.h: + * gnome-session/gsm-xsmp-server.c (accept_ice_connection), + (gsm_xsmp_server_set_client_store), (gsm_xsmp_server_class_init), + (gsm_xsmp_server_new): + * gnome-session/gsm-xsmp-server.h: + * gnome-session/main.c (main): + Unify the InhibitorStore and ClientStore classes. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-dbus-client.xml: + Add docs for dbus-client. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-manager.h: + * gnome-session/gsm-manager.xml: + Add docs for logout mode. + +2008-07-27 William Jon McCann + + * doc/dbus/Makefile.am: + * doc/dbus/spec-to-docbook.xsl: + * gnome-session/gsm-manager.xml: + Require fully qualified interface + names in links. + +2008-07-27 William Jon McCann + + * gnome-session/gsm-manager.xml: + Add more docs. + +2008-07-27 William Jon McCann + + * data/gnome-session.schemas.in: + * splash/Makefile.am: + * splash/README: + Restore splash. + +2008-07-27 William Jon McCann + + * Makefile.am: + * configure.in: + * doc/Makefile.am: + * doc/dbus/Makefile.am: + * doc/dbus/config.xsl: + * doc/dbus/dbus-introspect-docs.dtd: + * doc/dbus/docbook.css: + * doc/dbus/gnome-session.xml.in: + * doc/dbus/spec-to-docbook.xsl: + Add some D-Bus docs. + +2008-07-26 William Jon McCann + + * Makefile.am: + * configure.in: + * doc/Makefile.am: + * man/.cvsignore: + * man/Makefile.am: + * man/default.session.5.in: + * man/gnome-session-save.1: + * man/gnome-session.1.in: + * man/gnome-wm.1: + * man/session-properties-capplet.1: + * man/session-properties-capplet.sgml: + * man/session-properties.1: + * man/session-properties.sgml: + Move man to doc dir. + +2008-07-26 William Jon McCann + + * configure.in: + * gnome-session/Makefile.am: + * gnome-session/gsm-inhibit-dialog.c (scale_pixbuf), (get_cmap), + (pixbuf_get_from_pixmap), (get_pixmap_for_window), + (get_pixbuf_for_window), (add_inhibitor), (setup_dialog), + (gsm_inhibit_dialog_constructor): + * gnome-session/test-inhibit.c (do_inhibit_for_window), + (on_widget_show), (main): + Add ability to get a window snapshot of application. + +2008-07-25 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor): + Also check for desktop files using a gnome vendor prefix. + +2008-07-25 William Jon McCann + + * gnome-session/gsm-manager.c (on_query_end_session_timeout), + (on_client_end_session_response): + Use app name when id isn't available. + +2008-07-24 William Jon McCann + + * data/gnome-session.schemas.in: + * splash/Makefile.am: + * splash/README: + * splash/gnome-session-splash.c: + * splash/gnome-session-splash.desktop.in: + * splash/splash-window.c: + * splash/splash-window.h: + Make startup faster by removing the splash. + +2008-07-24 William Jon McCann + + * capplet/commands.c (append_autostart_apps), + (spc_command_get_store): Merge from trunk. + Correctly sort apps model by name. + +2008-07-24 William Jon McCann + + * gnome-session/gsm-manager.c (end_phase), + (bus_name_owner_changed): + Drop some unused code. + Pointed out by Lucas Rocha + +2008-07-24 William Jon McCann + + * gnome-session/gsm-client-store.c (gsm_client_store_remove), + (foreach_remove_wrapper), (gsm_client_store_foreach_remove), + (_remove_all), (gsm_client_store_clear): + * gnome-session/gsm-inhibitor-store.c (gsm_inhibitor_store_remove): + Make sure client-removed signals are emitted. + +2008-07-24 William Jon McCann + + * gnome-session/gsm-inhibitor-store.c (gsm_inhibitor_store_remove), + (_remove_all), (gsm_inhibitor_store_clear): + Make sure to always emit the removed signal. + +2008-07-24 William Jon McCann + + * gnome-session/gsm-xsmp-client.c (setup_connection): + Use add_seconds for timeout. + Pointed out by Matthias Clasen + +2008-07-24 William Jon McCann + + * gnome-session/gconf.c (gsm_gconf_check): + Remove gsm_gconf_get_client. + * gnome-session/gsm-autostart-app.c (is_disabled): + Don't leak a gconf client. + Pointed out by Matthias Clasen + +2008-07-24 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_dispose): + Don't leak id. + Pointed out by Matthias Clasen + +2008-07-24 William Jon McCann + + * gnome-session/gsm-autostart-app.c + (gsm_autostart_app_set_desktop_filename), (start_notify): + Make sure error is initialized. + + * gnome-session/gsm-manager.c (get_caller_info): + Move variable initialization. + +2008-07-24 Frederic Crozat + + * splash/gnome-login-sound.c: really disable login/logout sound + if disabled by user. Fix bug #544540. + +2008-07-24 William Jon McCann + + * gnome-session/gsm-manager.c (gsm_manager_class_init): + Drop unused signal. + + * gnome-session/gsm-manager.xml: + Start adding D-Bus API docs. + +2008-07-23 William Jon McCann + + * gnome-session/gsm-xsmp-client.c (xsmp_get_restart_style_hint): + Make sure hint is initialized. + +2008-07-22 William Jon McCann + + * compat/at-spi-registryd-wrapper.c (main): + * gnome-session/gsm-manager.c (gsm_manager_setenv): + * gnome-session/gsm-xsmp-server.c (setup_listener): + * gnome-session/main.c (main): + * gnome-session/util.c (gsm_util_update_activation_environment), + (gsm_util_setenv): + * gnome-session/util.h: + Use DBus API to set environment variables in activation environment. + Patch from: Ray Strode Fixes #360475 + +2008-07-22 Frederic Crozat + + * splash/splash-window.c: + Dither splash background, needed for 16bpp display. + Fix bug #544159. + +2008-07-22 William Jon McCann + + * gnome-session/gsm-consolekit.c (gsm_consolekit_init), + (gsm_consolekit_can_restart), (gsm_consolekit_can_stop): + * gnome-session/gsm-logout-dialog.c: + Add some more verbosity when not compiled with PK-gnome. + +2008-07-21 William Jon McCann + + * configure.in: Use FORTIFY_SOURCE + + * gnome-session/util.c: Add missing include + +2008-07-21 William Jon McCann + + * configure.in: Add our own warning flags + + * gnome-session/util.c: Add missing includes + +2008-07-21 William Jon McCann + + * gnome-session/gsm-xsmp-server.c: + Add some missing includes + +2008-07-21 William Jon McCann + + * gnome-session/gsm-logout-dialog.c: + Use standard icon names. + Patch from Matthias Clasen. Fixes #542256 + +2008-07-21 William Jon McCann + + * capplet/commands.c (spc_command_get_app_description): + Must escape the comment for displaying as markup + Patch from Matthias Clasen. Fixes #542086 + +2008-07-21 William Jon McCann + + * configure.in: Bump version number. + +2008-07-18 William Jon McCann + + * Makefile.am: Remove intltool crap + +2008-07-18 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_get_restart_style_hint): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c + (dbus_client_get_restart_style_hint), (gsm_dbus_client_class_init): + * gnome-session/gsm-manager.c (disconnect_client): + * gnome-session/gsm-xsmp-client.c (xsmp_get_restart_style_hint), + (gsm_xsmp_client_class_init): + Add support for legacy restart style hints from clients. + +2008-07-18 William Jon McCann + + * gnome-session/gsm-client.h: + * gnome-session/gsm-manager.c (phase_num_to_name), (end_phase), + (on_phase_timeout), (do_phase_startup), (_client_end_session), + (do_phase_end_session), (_client_query_end_session), + (inhibitor_has_flag), (gsm_manager_is_logout_inhibited), + (_client_cancel_end_session), (inhibitor_is_jit), + (cancel_end_session), (manager_switch_user), (do_attempt_reboot), + (do_attempt_shutdown), (manager_attempt_reboot), + (manager_attempt_shutdown), (manager_attempt_hibernate), + (manager_attempt_suspend), (do_dialog_action), + (inhibit_dialog_response), (query_end_session_complete), + (generate_cookie), (_generate_unique_cookie), + (on_query_end_session_timeout), (do_phase_query_end_session), + (start_phase), (gsm_manager_start), (find_app_for_app_id), + (disconnect_client), (_disconnect_dbus_client), + (remove_clients_for_connection), (inhibitor_has_bus_name), + (remove_inhibitors_for_connection), (_app_has_startup_id), + (on_xsmp_client_register_request), + (on_client_end_session_response), (gsm_manager_setenv), + (gsm_manager_initialization_error), (request_logout), + (logout_dialog_response), (show_shutdown_dialog), + (show_logout_dialog), (user_logout), (gsm_manager_logout), + (gsm_manager_register_client): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-xsmp-client.c (do_save_yourself), + (xsmp_query_end_session), (xsmp_end_session), + (save_yourself_request_callback), (save_yourself_done_callback): + Add a forceful shutdown path. Make shutdown path use + same state machine as phases. + +2008-07-17 William Jon McCann + + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_new_for_client): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (_debug_inhibitor), + (debug_inhibitors), (inhibitor_has_bus_name), + (remove_inhibitors_for_connection), + (on_client_end_session_response), (on_query_end_session_timeout): + Also clear JIT inhibitors from DBus clients when they leave the + bus. + +2008-07-17 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_cancel_end_session): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c (dbus_client_cancel_end_session), + (gsm_dbus_client_class_init): + * gnome-session/gsm-dbus-client.h: + * gnome-session/gsm-dbus-client.xml: + * gnome-session/gsm-manager.c (_cancel_shutdown_client), + (inhibitor_is_jit), (cancel_end_session), + (inhibit_dialog_response): + * gnome-session/gsm-xsmp-client.c (xsmp_cancel_end_session), + (gsm_xsmp_client_class_init), (interact_request_callback): + Send cancellation to all clients. Cancel JIT inhibitors. + +2008-07-17 William Jon McCann + + * gnome-session/gsm-xsmp-client.c (xsmp_shutdown_cancelled), + (interact_request_callback), (save_yourself_done_callback): + Try to work around some buggy grab behavior in session clients. + +2008-07-17 William Jon McCann + + * gnome-session/gsm-inhibit-dialog.c (update_dialog_text), + (name_cell_data_func): + * gnome-session/gsm-inhibit-dialog.glade: + Add back heading to inhibit dialog since it makes more + sense when some applications are not busy. + +2008-07-17 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_get_app_name): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c (dbus_client_get_app_name), + (gsm_dbus_client_class_init): + * gnome-session/gsm-manager.c (on_client_end_session_response): + * gnome-session/gsm-xsmp-client.c (xsmp_get_app_name), + (gsm_xsmp_client_class_init), (interact_request_callback): + Try to get something like an app-id for XSMP clients to + display info in inhibit dialog. + +2008-07-17 William Jon McCann + + * gnome-session/gsm-manager.c (on_xsmp_client_register_request), + (inhibitor_has_client_id), (generate_cookie), + (_generate_unique_cookie), (on_client_end_session_response), + (on_store_client_added), (gsm_manager_register_client): + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_class_init), + (save_yourself_phase2_request_callback), + (interact_request_callback), (interact_done_callback), + (save_yourself_done_callback), (close_connection_callback), + (gsm_xsmp_client_connect): + Start hooking up XSMP bit of query-end-session. + +2008-07-16 William Jon McCann + + * gnome-session/gsm-dbus-client.c (dbus_client_query_end_session), + (dbus_client_end_session), (gsm_dbus_client_class_init), + (gsm_dbus_client_new), (gsm_dbus_client_end_session_response): + * gnome-session/gsm-dbus-client.h: + * gnome-session/gsm-inhibit-dialog.c (add_inhibitor): + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_new_for_client): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (_debug_client), (debug_clients), + (disconnect_client), (remove_inhibitors_for_connection), + (manager_logout), (_client_query_end_session), + (query_end_session_complete), (on_client_end_session_response), + (on_query_end_session_timeout), (query_end_session), + (gsm_manager_register_client): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-resumed-app.c + (gsm_resumed_app_new_from_legacy_session): + * gnome-session/gsm-xsmp-client.c (register_client_callback): + * gnome-session/test-client-dbus.c (on_client_query_end_session), + (register_client), (quit_test), (main): + Fix up some missed property names. Hook up query-end-session stuff + for dbus client. + +2008-07-16 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-app.c (gsm_app_set_startup_id), + (gsm_app_set_property), (gsm_app_get_property), (gsm_app_dispose), + (gsm_app_class_init), (gsm_app_get_startup_id): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (load_desktop_file), + (autostart_app_start_spawn), (autostart_app_start_activate): + * gnome-session/gsm-client.c (gsm_client_finalize), + (gsm_client_set_startup_id), (gsm_client_set_property), + (gsm_client_get_property), (default_stop), (gsm_client_class_init), + (gsm_client_get_startup_id), (gsm_client_stop), + (gdm_client_end_session_response): + * gnome-session/gsm-client.h: + * gnome-session/gsm-client.xml: + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_error_quark), + (gsm_dbus_client_error_get_type), (gsm_dbus_client_class_init), + (gsm_dbus_client_end_session_response): + * gnome-session/gsm-dbus-client.h: + * gnome-session/gsm-dbus-client.xml: + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_set_client_id), + (gsm_inhibitor_get_client_id), (gsm_inhibitor_set_property), + (gsm_inhibitor_get_property), (gsm_inhibitor_finalize), + (gsm_inhibitor_class_init), (gsm_inhibitor_new_for_client): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (_find_by_startup_id), + (app_condition_changed), (app_registered), (phase_timeout), + (start_phase), (inhibitor_has_bus_name), (_app_has_startup_id), + (find_app_for_startup_id), (register_client_for_name), + (_client_has_startup_id), (on_xsmp_client_register_request), + (_client_query_end_session), (query_end_session_complete), + (inhibitor_has_client_id), (generate_cookie), + (_generate_unique_cookie), (on_client_end_session_response), + (on_query_end_session_timeout), (query_end_session), + (request_logout), (user_logout), (gsm_manager_logout), + (gsm_manager_register_client), (gsm_manager_unregister_client): + * gnome-session/gsm-manager.xml: + * gnome-session/gsm-marshal.list: + * gnome-session/gsm-xsmp-client.c (set_description): + * gnome-session/test-client-dbus.c (register_client): + * gnome-session/util.c (gsm_util_generate_startup_id): + * gnome-session/util.h: + Rename client-id to startup-id to distinguish from + Client's ID. Start adding a new shutdown path that + allows for more compatibility with xsmp. + +2008-07-15 William Jon McCann + + * gnome-session/gsm-client.c (gsm_client_query_end_session), + (gsm_client_end_session): + * gnome-session/gsm-client.h: + * gnome-session/gsm-client.xml: + * gnome-session/gsm-dbus-client.c (dbus_client_query_end_session), + (dbus_client_end_session), (gsm_dbus_client_class_init): + * gnome-session/gsm-manager.c (_shutdown_client): + * gnome-session/gsm-xsmp-client.c (xsmp_stop), + (xsmp_query_end_session), (xsmp_end_session), + (gsm_xsmp_client_class_init): + Add QueryEndSession and EndSession methods and signals. + +2008-07-15 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-inhibit-dialog.c (lock_screen), (on_response), + (gsm_inhibit_dialog_set_action), (find_inhibitor), (add_inhibitor), + (update_dialog_text), (on_store_inhibitor_added), + (on_store_inhibitor_removed), + (gsm_inhibit_dialog_set_inhibitor_store), + (gsm_inhibit_dialog_set_property), + (gsm_inhibit_dialog_get_property), (name_cell_data_func), + (add_to_model), (populate_model), (setup_dialog), + (gsm_inhibit_dialog_constructor), (gsm_inhibit_dialog_dispose), + (gsm_inhibit_dialog_class_init), (gsm_inhibit_dialog_init), + (gsm_inhibit_dialog_finalize), (gsm_inhibit_dialog_new): + * gnome-session/gsm-inhibit-dialog.h: + * gnome-session/gsm-logout-inhibit-dialog.c: + * gnome-session/gsm-logout-inhibit-dialog.glade: + * gnome-session/gsm-logout-inhibit-dialog.h: + * gnome-session/gsm-manager.c (inhibit_dialog_response), + (request_reboot), (request_shutdown), (request_suspend), + (request_hibernate), (request_logout), (request_switch_user): + * gnome-session/test-client-dbus.c (register_client): + Rename logout_inhibit_dialog to inhibit_dialog. + +2008-07-15 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_new): + * gnome-session/gsm-dbus-client.h: + * gnome-session/gsm-manager.c (register_client_for_name), + (gsm_manager_register_client): + * gnome-session/gsm-method-client.c: + * gnome-session/gsm-method-client.h: + * gnome-session/gsm-service-client.c: + * gnome-session/gsm-service-client.h: + * gnome-session/test-client-method.c: + Drop ServiceClient for now. Move MethodClient stuff + into DBusClient. + +2008-07-15 William Jon McCann + + * gnome-session/gsm-dbus-client.c (dbus_client_stop), + (gsm_dbus_client_class_init): + Unicast the stop signal to the client. + +2008-07-15 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_class_init), (gsm_app_get_id), + (gsm_app_is_disabled), (gsm_app_is_running), + (gsm_app_get_autorestart), (gsm_app_provides), (gsm_app_start), + (gsm_app_restart), (gsm_app_stop): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_class_init): + * gnome-session/gsm-client.c (default_stop), + (gsm_client_class_init), (gsm_client_notify_session_over), + (gsm_client_stop): + * gnome-session/gsm-client.h: + * gnome-session/gsm-resumed-app.c (gsm_resumed_app_class_init): + * gnome-session/gsm-resumed-app.h: + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_class_init): + By default emit stop signal from client. + +2008-07-15 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-client.c (register_client), + (gsm_client_constructor), (gsm_client_class_init): + * gnome-session/gsm-client.xml: + Register each client object with the bus. + +2008-07-07 William Jon McCann + + * gnome-session/gsm-logout-inhibit-dialog.c (lock_screen), + (on_response), (setup_dialog): + * gnome-session/gsm-logout-inhibit-dialog.glade: + Add ability to lock screen while waiting for processes to finish. + +2008-07-07 William Jon McCann + + * gnome-session/gsm-logout-inhibit-dialog.c (update_dialog_text), + (name_cell_data_func), (setup_dialog): + * gnome-session/gsm-logout-inhibit-dialog.glade: + Implement MPT's suggested rewording. + +2008-06-26 William Jon McCann + + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-manager.c (manager_logout), + (inhibitor_has_flag), (gsm_manager_is_switch_user_inhibited), + (gsm_manager_is_suspend_inhibited), + (gsm_manager_is_logout_inhibited), (gsm_manager_inhibit): + * gnome-session/test-inhibit.c (do_inhibit): + Change inhibit flags to be opt in for each scenario. + +2008-06-25 William Jon McCann + + * gnome-session/gsm-logout-inhibit-dialog.c (model_has_one_entry), + (update_dialog_text), (on_store_inhibitor_added), + (on_store_inhibitor_removed), (populate_model): + * gnome-session/gsm-logout-inhibit-dialog.glade: + Use the proper pluralization depending on how many inhibitors are present. + Fix up spacing. + +2008-06-25 William Jon McCann + + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_class_init): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-logout-inhibit-dialog.c (add_inhibitor): + * gnome-session/gsm-manager.c (do_attempt_reboot), + (do_attempt_shutdown), (manager_attempt_reboot), + (manager_attempt_shutdown), (manager_attempt_hibernate), + (manager_attempt_suspend), (gsm_manager_is_switch_user_inhibited), + (gsm_manager_is_suspend_inhibited), (do_action), (request_reboot), + (request_shutdown), (request_suspend), (request_hibernate), + (logout_dialog_response): + * gnome-session/gsm-manager.h: + Make inhibit work for shutdown, reboot, suspend, hibernate. + +2008-06-25 William Jon McCann + + * gnome-session/gsm-consolekit.c (get_current_session_id), + (get_seat_id_for_session), (get_current_seat_id), + (seat_can_activate_sessions), (gsm_consolekit_can_switch_user): + * gnome-session/gsm-consolekit.h: + * gnome-session/gsm-logout-dialog.c + (gsm_logout_supports_system_suspend), + (gsm_logout_supports_system_hibernate), + (gsm_logout_supports_switch_user), (gsm_get_dialog): + * gnome-session/gsm-logout-inhibit-dialog.c + (gsm_logout_inhibit_dialog_class_init): + * gnome-session/gsm-manager.c + (gsm_manager_is_switch_user_inhibited), (manager_switch_user), + (do_action), (request_switch_user), (logout_dialog_response): + Make switch user work. + +2008-06-24 William Jon McCann + + * gnome-session/gsm-logout-dialog.c (gsm_get_dialog): + Center the dialog and set the appropriate window icon. + +2008-06-24 William Jon McCann + + * AUTHORS: Update + +2008-06-24 William Jon McCann + + * configure.in: + * gnome-session/Makefile.am: + Remove test program for service client. + Bump intltool req. + +2008-06-24 William Jon McCann + + * egg/eggdesktopfile.c (egg_desktop_file_new_from_dirs): + * egg/eggdesktopfile.h: + * gnome-session/gsm-logout-inhibit-dialog.c (find_inhibitor), + (add_inhibitor): + * gnome-session/test-inhibit.c (do_inhibit): + Search the correct dirs when looking up app ids. + +2008-06-24 William Jon McCann + + * gnome-session/gsm-inhibitor-store.c (gsm_inhibitor_store_lookup), + (foreach_remove_wrapper), (gsm_inhibitor_store_foreach_remove), + (gsm_inhibitor_store_add), (gsm_inhibitor_store_init): + * gnome-session/gsm-inhibitor-store.h: + * gnome-session/gsm-logout-inhibit-dialog.c (find_inhibitor), + (_util_icon_remove_extension), (_find_icon), (_load_icon), + (add_inhibitor), (on_store_inhibitor_added), + (on_store_inhibitor_removed), + (gsm_logout_inhibit_dialog_set_inhibitor_store), + (gsm_logout_inhibit_dialog_set_property), + (gsm_logout_inhibit_dialog_get_property), (name_cell_data_func), + (add_to_model), (populate_model), (setup_dialog), + (gsm_logout_inhibit_dialog_class_init), + (gsm_logout_inhibit_dialog_init), + (gsm_logout_inhibit_dialog_finalize), + (gsm_logout_inhibit_dialog_new): + * gnome-session/gsm-logout-inhibit-dialog.h: + * gnome-session/gsm-manager.c (inhibitor_has_bus_name), + (bus_name_owner_changed), (logout_inhibit_dialog_response), + (request_logout), (_generate_unique_cookie), + (gsm_manager_uninhibit): + Populate inhibit dialog. + +2008-06-24 William Jon McCann + + * configure.in: + * gnome-session/Makefile.am: + * gnome-session/gsm-client-store.h: + * gnome-session/gsm-inhibitor-store.c + (gsm_inhibitor_store_error_quark), (gsm_inhibitor_store_size), + (gsm_inhibitor_store_clear), (remove_inhibitor), + (gsm_inhibitor_store_remove), (gsm_inhibitor_store_foreach), + (gsm_inhibitor_store_find), (gsm_inhibitor_store_lookup), + (gsm_inhibitor_store_foreach_remove), (gsm_inhibitor_store_add), + (gsm_inhibitor_store_set_property), + (gsm_inhibitor_store_get_property), + (gsm_inhibitor_store_class_init), (inhibitor_unref), + (gsm_inhibitor_store_init), (gsm_inhibitor_store_finalize), + (gsm_inhibitor_store_new): + * gnome-session/gsm-inhibitor-store.h: + * gnome-session/gsm-inhibitor.c (gsm_inhibitor_constructor), + (gsm_inhibitor_init), (gsm_inhibitor_set_bus_name), + (gsm_inhibitor_set_app_id), (gsm_inhibitor_set_reason), + (gsm_inhibitor_set_cookie), (gsm_inhibitor_set_flags), + (gsm_inhibitor_set_toplevel_xid), (gsm_inhibitor_get_bus_name), + (gsm_inhibitor_get_app_id), (gsm_inhibitor_get_reason), + (gsm_inhibitor_get_flags), (gsm_inhibitor_get_toplevel_xid), + (gsm_inhibitor_get_cookie), (gsm_inhibitor_set_property), + (gsm_inhibitor_get_property), (gsm_inhibitor_finalize), + (gsm_inhibitor_class_init), (gsm_inhibitor_new): + * gnome-session/gsm-inhibitor.h: + * gnome-session/gsm-logout-dialog.c (gsm_get_dialog): + * gnome-session/gsm-logout-dialog.h: + * gnome-session/gsm-logout-inhibit-dialog.c + (gsm_logout_inhibit_dialog_set_action), + (gsm_logout_inhibit_dialog_set_property), + (gsm_logout_inhibit_dialog_get_property), (on_response), + (setup_dialog), (gsm_logout_inhibit_dialog_constructor), + (gsm_logout_inhibit_dialog_dispose), + (gsm_logout_inhibit_dialog_class_init), + (gsm_logout_inhibit_dialog_init), + (gsm_logout_inhibit_dialog_finalize), + (gsm_logout_inhibit_dialog_new): + * gnome-session/gsm-logout-inhibit-dialog.glade: + * gnome-session/gsm-logout-inhibit-dialog.h: + * gnome-session/gsm-manager.c (inhibitor_has_bus_name), + (remove_inhibitors_for_connection), (bus_name_owner_changed), + (gsm_manager_init), (gsm_manager_finalize), + (gsm_manager_is_logout_inhibited), (do_action), + (logout_inhibit_dialog_response), (request_logout), + (logout_dialog_response), (initiate_logout), + (_generate_unique_cookie), (gsm_manager_inhibit), + (gsm_manager_uninhibit): + * gnome-session/gsm-manager.h: + * gnome-session/test-inhibit.c (do_inhibit): + Add an inhibitor class and store class to make it + easier to update the model for the inhibit dialog. + Add a stub for an inhibit dialog. + +2008-06-23 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-manager.c (gsm_inhibitor_free), + (inhibitor_has_bus_name), (inhibit_changed_check), + (remove_inhibitors_for_connection), (bus_name_owner_changed), + (gsm_manager_init), (gsm_manager_finalize), (generate_cookie), + (_generate_unique_cookie), (gsm_manager_inhibit), + (gsm_manager_uninhibit): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-manager.xml: + * gnome-session/test-client-method.c (register_client): + * gnome-session/test-inhibit.c (session_manager_connect), + (do_inhibit), (session_manager_disconnect), (do_uninhibit), (main): + Implement inhibit registration. Doesn't actually use it for + anything yet. + +2008-06-18 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_error_quark), (gsm_app_set_id), + (gsm_app_set_client_id), (gsm_app_set_property), + (gsm_app_get_property), (gsm_app_dispose), (gsm_app_class_init): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (load_desktop_file), + (gsm_autostart_app_set_desktop_filename), + (gsm_autostart_app_set_property), (gsm_autostart_app_get_property), + (gsm_autostart_app_dispose), (is_disabled), + (autostart_app_stop_spawn), (autostart_app_stop_activate), + (gsm_autostart_app_stop), (autostart_app_start_spawn), + (start_notify), (autostart_app_start_activate), + (gsm_autostart_app_start), (gsm_autostart_app_constructor), + (gsm_autostart_app_class_init), (gsm_autostart_app_new): + * gnome-session/gsm-autostart-app.h: + * gnome-session/gsm-manager.c (_app_has_client_id), + (find_app_for_client_id), (register_client_for_name), + (bus_name_owner_changed), (register_manager), + (append_default_apps), (append_autostart_apps), + (append_required_apps): + Add preliminary support for service clients. + +2008-06-18 William Jon McCann + + * gnome-session/gsm-manager.c (bus_name_owner_changed), + (on_xsmp_client_register_request), (gsm_manager_finalize): + * gnome-session/gsm-manager.xml: + Drop set_name. + +2008-06-18 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-app.c (gsm_app_class_init), + (gsm_app_get_autorestart), (gsm_app_restart): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_dispose), + (gsm_autostart_app_stop), (gsm_autostart_app_start), + (gsm_autostart_app_restart), (gsm_autostart_app_get_autorestart), + (gsm_autostart_app_class_init): + * gnome-session/gsm-client.c (gsm_client_class_init): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_set_bus_name), + (gsm_dbus_client_get_bus_name), (gsm_dbus_client_set_property), + (gsm_dbus_client_get_property), (gsm_dbus_client_class_init): + * gnome-session/gsm-dbus-client.h: + * gnome-session/gsm-manager.c (gsm_manager_error_get_type), + (find_app_for_app_id), (disconnect_client), + (_disconnect_dbus_client), (remove_clients_for_connection), + (on_client_disconnected), (on_xsmp_client_register_request), + (gsm_manager_register_client), (gsm_manager_unregister_client): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-manager.xml: + * gnome-session/gsm-method-client.c (gsm_method_client_class_init): + * gnome-session/gsm-resumed-app.c (app_exited), + (gsm_resumed_app_start), (gsm_resumed_app_restart), + (gsm_resumed_app_dispose), (gsm_resumed_app_class_init): + * gnome-session/gsm-service-client.c + (gsm_service_client_class_init): + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_class_init), + (register_client_callback): + * gnome-session/test-client-method.c (session_manager_connect), + (register_client), (session_manager_disconnect), + (unregister_client), (main): + Add dbus method client support. Add test client. Fix up + restart handling. + +2008-06-18 William Jon McCann + + * gnome-session/gsm-app.c: + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c: + * gnome-session/gsm-autostart-app.h: + * gnome-session/gsm-client.c: + * gnome-session/gsm-client.h: + * gnome-session/gsm-logout-dialog.c: + * gnome-session/gsm-manager.c: + * gnome-session/gsm-resumed-app.c: + * gnome-session/gsm-resumed-app.h: + * gnome-session/gsm-xsmp-client.c: + * gnome-session/gsm-xsmp-server.c: + * gnome-session/main.c: + Update copyright headers. + +2008-06-17 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gsm-app.c (gsm_app_class_init), (gsm_app_get_id): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c + (gsm_autostart_app_set_desktop_file), (gsm_autostart_app_dispose), + (is_disabled), (app_exited), (gsm_autostart_app_get_id), + (gsm_autostart_app_constructor), (gsm_autostart_app_class_init): + * gnome-session/gsm-client-store.c (gsm_client_store_get_locked): + * gnome-session/gsm-client-store.h: + * gnome-session/gsm-client.c (gsm_client_finalize), + (gsm_client_set_app_id), (gsm_client_set_property), + (gsm_client_get_property), (gsm_client_class_init), + (gsm_client_get_app_id), (gsm_client_notify_session_over), + (gsm_client_restart), (gsm_client_stop), (gsm_client_disconnected): + * gnome-session/gsm-client.h: + * gnome-session/gsm-dbus-client.c (gsm_dbus_client_constructor), + (gsm_dbus_client_init), (gsm_dbus_client_set_property), + (gsm_dbus_client_get_property), (gsm_dbus_client_finalize), + (gsm_dbus_client_class_init): + * gnome-session/gsm-dbus-client.h: + * gnome-session/gsm-manager.c (gsm_manager_error_get_type), + (app_condition_changed), (phase_timeout), (_start_app), + (find_app_for_client_id), (find_app_for_app_id), + (on_xsmp_client_register_request), (on_store_client_added), + (gsm_manager_class_init), (_shutdown_client), (get_caller_info), + (gsm_manager_register_client), (gsm_manager_unregister_client), + (gsm_manager_inhibit), (gsm_manager_uninhibit): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-manager.xml: + * gnome-session/gsm-method-client.c + (gsm_method_client_constructor), (gsm_method_client_init), + (gsm_method_client_set_property), (gsm_method_client_get_property), + (gsm_method_client_finalize), (gsm_method_client_stop), + (gsm_method_client_restart), (gsm_method_client_class_init), + (gsm_method_client_new): + * gnome-session/gsm-method-client.h: + * gnome-session/gsm-resumed-app.c (gsm_resumed_app_get_id), + (gsm_resumed_app_class_init): + * gnome-session/gsm-service-client.c + (gsm_service_client_constructor), (gsm_service_client_init), + (gsm_service_client_set_property), + (gsm_service_client_get_property), (gsm_service_client_finalize), + (gsm_service_client_stop), (gsm_service_client_restart), + (gsm_service_client_class_init), (gsm_service_client_new): + * gnome-session/gsm-service-client.h: + * gnome-session/gsm-xsmp-client.c (xsmp_restart), (xsmp_stop), + (_boolean_handled_accumulator), (gsm_xsmp_client_class_init), + (register_client_callback), (save_yourself_request_callback), + (save_yourself_phase2_request_callback), + (interact_request_callback), (interact_done_callback), + (save_yourself_done_callback), (gsm_xsmp_client_register_request), + (gsm_xsmp_client_save_state): + * gnome-session/gsm-xsmp-client.h: + Stub out some dbus based client classes. Make the GsmClient + class more generic. + +2008-06-16 William Jon McCann + + * gnome-session/gsm-consolekit.c (get_action_from_error): + * gnome-session/gsm-logout-dialog.c (gsm_get_dialog), + (gsm_get_shutdown_dialog), (gsm_get_logout_dialog): + * gnome-session/gsm-logout-dialog.h: + * gnome-session/gsm-manager.c (on_client_disconnected), + (gsm_manager_init), (manager_request_reboot), + (manager_request_shutdown), (_shutdown_client), (manager_logout), + (manager_request_hibernate), (manager_request_sleep), + (logout_dialog_response), (show_shutdown_dialog), + (show_logout_dialog), (initiate_logout), (gsm_manager_shutdown), + (gsm_manager_logout): + Fix and simplify shutdown handling. + +2008-06-15 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/gconf.c (gsm_gconf_shutdown): + * gnome-session/gdm.c (gdm_send_protocol_msg), + (get_display_number), (gdm_authenticate_connection), + (gdm_shutdown_protocol_connection), (gdm_init_protocol_connection), + (gdm_parse_query_response), (gdm_update_logout_actions), + (gdm_is_available), (gdm_set_logout_action), (gdm_new_login): + * gnome-session/gsm-logout-dialog.c: + * gnome-session/gsm-manager.c: + * gnome-session/gsm-power-manager.c (on_name_owner_changed), + (ensure_gpm_connection), (gsm_power_manager_init), + (gsm_power_manager_finalize), (gsm_power_manager_get_property), + (gsm_power_manager_can_suspend), (gsm_power_manager_can_hibernate), + (gsm_power_manager_attempt_suspend), + (gsm_power_manager_attempt_hibernate), (gsm_get_power_manager): + * gnome-session/gsm-power-manager.h: + * gnome-session/logout-dialog.c: + * gnome-session/logout-dialog.h: + * gnome-session/power-manager.c: + * gnome-session/power-manager.h: + Strip trailing whitespace. Make pretty. + +2008-06-15 William Jon McCann + + * configure.in: + * gnome-session/gsm-manager.c (initiate_shutdown), + (logout_dialog_response), (gsm_manager_logout): + * gnome-session/logout-dialog.c (gsm_logout_dialog_set_property), + (gsm_logout_dialog_get_property), (on_ck_request_completed), + (gsm_logout_dialog_destroy), (gsm_logout_supports_reboot), + (gsm_logout_supports_shutdown), (gsm_logout_dialog_timeout), + (gsm_logout_dialog_set_timeout), (gsm_get_logout_dialog): + * gnome-session/logout-dialog.h: + Add config summary. Add some debug spew. + +2008-06-15 William Jon McCann + + * gnome-session/gsm-manager.c (register_manager), + (gsm_manager_shutdown), (gsm_manager_logout): + * gnome-session/gsm-manager.h: + Register to the session bus. + +2008-06-15 William Jon McCann + + * gnome-session/main.c (maybe_start_session_bus), + (acquire_name_on_proxy), (acquire_name), (main): + Acquire a name on the bus. + +2008-06-15 William Jon McCann + + Don't use "capplet" anywhere as this term shouldn't used anymore. + #537310, Frederic Peters. + + * data/gnome-session.schemas.in: replaced "capplet" with "Session + Preferences". + +2008-06-15 William Jon McCann + + * configure.in: + * gnome-session/Makefile.am: + * gnome-session/gdm.c (gdm_init_protocol_connection), + (gdm_is_available): + * gnome-session/gdm.h: + * gnome-session/gsm-consolekit.c (gsm_consolekit_get_property), + (gsm_consolekit_class_init), (gsm_consolekit_ensure_ck_connection), + (gsm_consolekit_on_name_owner_changed), (gsm_consolekit_init), + (gsm_consolekit_finalize), (gsm_consolekit_error_quark), + (gsm_consolekit_new), (try_system_stop), (try_system_restart), + (emit_restart_complete), (emit_stop_complete), + (system_restart_auth_cb), (system_stop_auth_cb), + (get_action_from_error), (request_restart_priv), + (request_stop_priv), (gsm_consolekit_attempt_restart), + (gsm_consolekit_attempt_stop), (gsm_consolekit_can_restart), + (gsm_consolekit_can_stop), (gsm_get_consolekit): + * gnome-session/gsm-consolekit.h: + * gnome-session/gsm-manager.c (do_request_reboot), + (do_request_shutdown), (manager_shutdown): + * gnome-session/logout-dialog.c (on_ck_request_completed), + (gsm_logout_dialog_init), (gsm_logout_dialog_destroy), + (gsm_logout_supports_reboot), (gsm_logout_supports_shutdown), + (gsm_get_logout_dialog): + Add CK shutdown support. Merged from trunk. + +2008-06-13 William Jon McCann + + * gnome-session/gsm-manager.c (on_app_exited), (_start_app), + (on_client_disconnected), (on_manage_request): + Add restart support back. + +2008-06-13 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_class_init), (gsm_app_died): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (app_exited), (launch): + Wait on processes so we don't create zombies. + +2008-06-13 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_init), (gsm_app_set_phase), + (set_property), (gsm_app_class_init), (gsm_app_start): + * gnome-session/gsm-autostart-app.c (get_basename), + (gsm_autostart_app_constructor), (gsm_autostart_app_class_init), + (gsm_autostart_app_new): + * gnome-session/gsm-client-store.c (gsm_client_store_add): + * gnome-session/gsm-client.c (gsm_client_class_init): + * gnome-session/gsm-manager.c (end_phase), (_start_app), + (start_phase), (_client_has_client_id), (_app_has_client_id), + (on_manage_request), (on_store_client_added), + (gsm_manager_set_client_store), (append_app), + (append_default_apps), (append_autostart_apps), + (append_legacy_session_apps), (append_required_apps), + (gsm_manager_class_init): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-resumed-app.c (gsm_resumed_app_init), + (gsm_resumed_app_class_init): + * gnome-session/gsm-xsmp-client.c (client_iochannel_watch), + (client_protocol_timeout), (setup_connection), + (debug_print_property), (set_properties_callback), + (delete_properties_callback), (get_properties_callback), + (do_save_yourself), (xsmp_save_yourself), + (xsmp_save_yourself_phase2), (xsmp_interact), + (xsmp_shutdown_cancelled), (xsmp_stop), (gsm_xsmp_client_finalize), + (gsm_xsmp_client_class_init), (register_client_callback), + (save_yourself_request_callback): + * gnome-session/gsm-xsmp-server.c (accept_ice_connection), + (accept_xsmp_connection), (ice_error_handler), + (ice_io_error_handler), (sms_error_handler), (setup_listener): + Actually register clients. + +2008-06-12 William Jon McCann + + * gnome-session/gsm-app.c (gsm_app_init), (set_property), + (get_property), (dispose), (gsm_app_class_init), (gsm_app_get_id), + (gsm_app_get_client_id), (gsm_app_get_phase), (gsm_app_is_running), + (gsm_app_provides), (gsm_app_start), (gsm_app_stop), + (gsm_app_exited): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_init), + (gsm_autostart_app_set_desktop_file), + (gsm_autostart_app_set_property), (gsm_autostart_app_get_property), + (gsm_autostart_app_dispose), (if_exists_condition_cb), + (unless_exists_condition_cb), (is_running), (is_disabled), + (app_exited), (launch), (get_basename), + (gsm_autostart_app_provides), (gsm_autostart_app_class_init), + (gsm_autostart_app_new): + * gnome-session/gsm-client-store.c: + * gnome-session/gsm-client-store.h: + * gnome-session/gsm-client.c (gsm_client_finalize): + * gnome-session/gsm-manager.c (app_condition_changed), + (_start_app), (start_phase), (append_app), (_find_app_provides), + (append_required_apps), (gsm_manager_init), (gsm_manager_finalize), + (initiate_shutdown): + * gnome-session/gsm-resumed-app.c (launch), (get_basename), + (gsm_resumed_app_class_init), + (gsm_resumed_app_new_from_legacy_session): + * gnome-session/gsm-resumed-app.h: + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_finalize): + A bit more refactoring. + +2008-06-12 William Jon McCann + + * gnome-session/gsm-client-store.c (gsm_client_store_size), + (gsm_client_store_lookup), (_has_client_id), + (gsm_client_store_add), (gsm_client_store_set_locked), + (gsm_client_store_set_property), (gsm_client_store_get_property), + (gsm_client_store_class_init): + * gnome-session/gsm-client-store.h: + * gnome-session/gsm-client.c (gsm_client_set_status), + (gsm_client_set_client_id), (gsm_client_set_property), + (gsm_client_get_property), (_boolean_handled_accumulator), + (gsm_client_class_init), (gsm_client_get_client_id), + (gsm_client_stop), (gsm_client_manage_request), + (gsm_client_logout_request): + * gnome-session/gsm-client.h: + * gnome-session/gsm-manager.c (_find_by_client_id), + (app_condition_changed), (on_store_client_added), + (gsm_manager_set_client_store), (_stop_client), (manager_shutdown), + (_shutdown_client), (initiate_shutdown): + * gnome-session/gsm-marshal.list: + * gnome-session/gsm-xsmp-client.c (client_iochannel_watch), + (client_protocol_timeout), (find_property), (set_description), + (setup_connection), (gsm_xsmp_client_constructor), + (gsm_xsmp_client_init), (delete_property), (debug_print_property), + (set_properties_callback), (delete_properties_callback), + (get_properties_callback), (prop_to_command), + (xsmp_get_restart_command), (xsmp_get_discard_command), + (xsmp_get_autorestart), (xsmp_restart), (do_save_yourself), + (xsmp_save_yourself), (xsmp_save_yourself_phase2), (xsmp_interact), + (xsmp_shutdown_cancelled), (xsmp_stop), + (gsm_client_set_ice_connection), (gsm_xsmp_client_set_property), + (gsm_xsmp_client_get_property), (gsm_xsmp_client_finalize), + (gsm_xsmp_client_class_init), (gsm_xsmp_client_new), + (register_client_callback), (save_yourself_request_callback), + (save_yourself_phase2_request_callback), + (interact_request_callback), (interact_done_callback), + (save_yourself_done_callback), (close_connection_callback), + (gsm_xsmp_client_connect): + * gnome-session/gsm-xsmp-client.h: + * gnome-session/gsm-xsmp-server.c (accept_ice_connection): + Give the code another whacking. + +2008-06-11 William Jon McCann + + * gnome-session/Makefile.am: + * gnome-session/app-autostart.c: + * gnome-session/app-autostart.h: + * gnome-session/app-resumed.c: + * gnome-session/app-resumed.h: + * gnome-session/app.c: + * gnome-session/app.h: + * gnome-session/client-xsmp.c: + * gnome-session/client-xsmp.h: + * gnome-session/client.c: + * gnome-session/client.h: + * gnome-session/dbus.c: + * gnome-session/dbus.h: + * gnome-session/gconf.c (gsm_gconf_check): + * gnome-session/gsm-app.c (set_property), (get_property), + (dispose), (get_basename), (gsm_app_get_phase), + (gsm_app_is_disabled), (gsm_app_provides), (app_exited), (launch): + * gnome-session/gsm-app.h: + * gnome-session/gsm-autostart-app.c (gsm_autostart_app_init), + (gsm_autostart_app_class_init), (gsm_autostart_app_dispose), + (gsm_autostart_app_new), (unless_exists_condition_cb), + (if_exists_condition_cb), (gconf_condition_cb), (is_disabled): + * gnome-session/gsm-autostart-app.h: + * gnome-session/gsm-client-store.c (gsm_client_store_error_quark), + (gsm_client_store_clear), (remove_client), + (gsm_client_store_remove), (gsm_client_store_foreach), + (gsm_client_store_find), (gsm_client_store_foreach_remove), + (gsm_client_store_add), (gsm_client_store_class_init), + (client_unref), (gsm_client_store_init), + (gsm_client_store_finalize), (gsm_client_store_new): + * gnome-session/gsm-client-store.h: + * gnome-session/gsm-client.c (get_next_client_serial), + (gsm_client_constructor), (gsm_client_init), (gsm_client_finalize), + (gsm_client_class_init), (gsm_client_get_id), + (gsm_client_register_client), (gsm_client_request_logout): + * gnome-session/gsm-client.h: + * gnome-session/gsm-manager.c (gsm_manager_error_quark), + (app_condition_changed), (end_phase), (app_registered), + (phase_timeout), (start_phase), (gsm_manager_start), + (remove_client_for_connection), (remove_clients_for_connection), + (bus_name_owner_changed), (register_manager), + (gsm_manager_set_failsafe), (gsm_manager_set_client_store), + (gsm_manager_set_property), (gsm_manager_get_property), + (append_app), (append_default_apps), (append_autostart_apps), + (append_legacy_session_apps), (append_saved_session_apps), + (append_required_apps), (load_apps), (gsm_manager_constructor), + (gsm_manager_class_init), (gsm_manager_init), + (gsm_manager_finalize), (gsm_manager_new), (gsm_manager_setenv), + (gsm_manager_initialization_error), (manager_shutdown), + (initiate_shutdown), (logout_dialog_response), + (gsm_manager_initiate_shutdown), (gsm_manager_shutdown), + (gsm_manager_logout), (manager_set_name), (gsm_manager_set_name): + * gnome-session/gsm-manager.h: + * gnome-session/gsm-marshal.list: + * gnome-session/gsm-resumed-app.c (gsm_resumed_app_init), + (gsm_resumed_app_class_init), + (gsm_resumed_app_new_from_legacy_session), + (gsm_resumed_app_new_from_session), (get_basename), (launch): + * gnome-session/gsm-resumed-app.h: + * gnome-session/gsm-xsmp-client.c (gsm_xsmp_client_init), + (gsm_xsmp_client_class_init), (gsm_xsmp_client_new), + (xsmp_finalize), (client_iochannel_watch), + (client_protocol_timeout), (register_client_callback), + (do_save_yourself), (save_yourself_request_callback), + (xsmp_save_yourself), (save_yourself_phase2_request_callback), + (xsmp_save_yourself_phase2), (interact_request_callback), + (xsmp_interact), (interact_done_callback), + (xsmp_shutdown_cancelled), (xsmp_die), + (save_yourself_done_callback), (close_connection_callback), + (debug_print_property), (find_property), (delete_property), + (set_properties_callback), (delete_properties_callback), + (get_properties_callback), (xsmp_get_client_id), (xsmp_get_pid), + (xsmp_get_desktop_file), (prop_to_command), + (xsmp_get_restart_command), (xsmp_get_discard_command), + (xsmp_get_autorestart), (set_description), + (gsm_xsmp_client_connect): + * gnome-session/gsm-xsmp-client.h: + * gnome-session/gsm-xsmp-server.c (accept_ice_connection), + (gsm_xsmp_server_start), (gsm_xsmp_server_set_client_store), + (gsm_xsmp_server_set_property), (gsm_xsmp_server_get_property), + (accept_xsmp_connection), (ice_error_handler), + (ice_io_error_handler), (sms_error_handler), (auth_entry_new), + (update_iceauthority), (setup_listener), + (gsm_xsmp_server_constructor), (gsm_xsmp_server_class_init), + (gsm_xsmp_server_init), (gsm_xsmp_server_finalize), + (gsm_xsmp_server_new): + * gnome-session/gsm-xsmp-server.h: + * gnome-session/gsm.h: + * gnome-session/logout-dialog.c (gsm_logout_dialog_timeout), + (gsm_get_logout_dialog): + * gnome-session/logout-dialog.h: + * gnome-session/main.c (gsm_dbus_init), (gsm_dbus_check), (main): + * gnome-session/org.gnome.SessionManagement.xml: + * gnome-session/session.c: + * gnome-session/session.h: + * gnome-session/util.c (gsm_util_init_error), + (gsm_util_generate_client_id): + * gnome-session/util.h: + * gnome-session/xsmp.c: + * gnome-session/xsmp.h: + First crack at new new gnome-session based around D-Bus. + XSMP still provided but more as a legacy feature. Not quite + operational yet. See bug #535829 for more info. + +2008-06-10 Kjartan Maraas + + * compat/gnome-keyring-daemon-wrapper.c: (keyring_daemon_start), + (main): Fix some invalid reads and a leak reported by valgrind. Closes + bug #537577. + +2008-06-05 Lucas Rocha + + * data/session-properties.glade: add bevel to list of startup apps on + session properties capplet. #536833, Matthias Clasen. + +2008-06-03 Lucas Rocha + + * configure.in: post-release bump to 2.23.4 + +2008-06-03 Lucas Rocha + + * NEWS: + * README: Version 2.23.3. + +2008-05-31 Lucas Rocha + + * compat/at-spi-registryd-wrapper.c (show_error, registry_ior_watch, + registry_ior_watch_timeout, main): remove dialog shown after a timeout + in at-spi wrapper program in order to avoid false-positive at-spi + errors. #524263, Li Yuan. + +2008-05-31 Lucas Rocha + + * configure.in: properly check for broadcast startup message function + on Gdk to have icons shown on session startup. + +2008-05-31 Lucas Rocha + + Fix crash when appending resumed apps from legacy session file. + #532075, Ed Catmur. Patch by Ed Catmur. + + * gnome-session/app-resumed.c (get_basename): implement get_basename + by returning the program name for now. This will probably need to be + changed in the future with the new session saving implementation based + on desktop files. + * gnome-session/app.c (get_basename, gsm_app_get_basename, + gsm_app_class_init): turn gsm_app_get_basename into an overridable + method so that we can re-implement it on different types of apps. + * gnome-session/session.c (append_app): check if basename is NULL + before checking if app has been registered earlier. + +2008-05-29 Dan Winship + + * gnome-session/xsmp.c: Deal with the possibility of multiple + local connections, and recognize "unix/" as a local connection + prefix as well as "local/". Fixes XSMP under Fedora Rawhide. + Problem noted by Kjartan Maraas. + +2008-05-27 Lucas Rocha + + * gnome-session/session.c, gnome-session/xsmp.c, gnome-session/app.c: + fixed several memory leaks. #534641, Kjartan Maraas. + +2008-05-25 Lucas Rocha + + Add support for drag and drop of desktop files on Session Properties + capplet. #437206, Vincent Untz. Patch from Jared Moore + + * capplet/commands.c (spc_command_add_app): check if icon is set + on iter before using default app icon. + * capplet/ui.c + (setup_treeview, drag_data_cb, add_from_desktop_file): set drag and + drop handlers. The treeview now can receive a list of desktop file uris + from DnD. + +2008-05-25 Lucas Rocha + + Fix gnome-keyring-wrapper program to correctly set SSH_AUTH_SOCK env + variable on session initialization phase. #534055, Dan Winship. + + * compat/gnome-keyring-daemon-wrapper.c (keyring_daemon_start): + capture output from gnome-keyring-daemon and set SSH_AUTH_SOCK and + GNOME_KEYRING_PID env variables properly. + +2008-05-25 Lucas Rocha + + Make splash listen to "SessionRunning" to know when to go away on + session startup. #529602, Karsten Bräckelmann. + + * splash/Makefile.am: add D-Bus bits on INCLUDES and LDADD. + * splash/README: remove obsolete note about gnome-session-splash. + * splash/gnome-session-splash.c (get_session_bus, + set_session_running_handler, on_session_running, main): listen to + "SessionRunning" D-Bus signal to know when go away. + * splash/gnome-session-splash.desktop.in: move splash to Panel phase + as it's the phase just after window manager is started. + +2008-05-25 Lucas Rocha + + Emit "SessionRunning" D-Bus signal when session is fully up and + running with all autostart apps present. + + * gnome-session/dbus.[ch] + (gsm_dbus_server_class_init): add "session-running" signal to + GsmDBusServer class. + (gsm_dbus_emit_session_running): new method for emitting the new signal. + * gnome-session/org.gnome.SessionManagement.xml: added "SessionRunning" + signal. + (gsm_dbus_emit_session_over): rename gsm_dbus_session_over to + gsm_dbus_emit_session_over for consistency. + * gnome-session/session.c (end_phase): added + gsm_dbus_emit_session_emit() call when GSM_SESSION_PHASE_RUNNING is + reached. + +2008-05-24 Lucas Rocha + + Emit "SessionOver" D-Bus signal before ending the session. + + * gnome-session/dbus.[ch] + (gsm_dbus_server_class_init): add "session-over" signal to + GsmDBusServer class. + (gsm_dbus_session_over): new method for emitting the new signal. + * gnome-session/org.gnome.SessionManagement.xml: added "SessionOver" + signal. + * gnome-session/session.c (session_shutdown): added + gsm_dbus_session_over() call. + +2008-05-17 Lucas Rocha + + * gnome-session/logout-dialog.c: fixes small build warning. + +2008-05-17 Lucas Rocha + + * gnome-session/main.c + (main): call gsm_dbus_shutdown, gsm_xsmp_shutdown, and + gsm_gconf_shutdown after main quit. + (gsm_initialization_error): call gtk_main_quit after showing error + dialog. + +2008-05-17 Lucas Rocha + + Port gnome-session-save tool to new code base. + + * tools/gnome-session-save.c: tool source code. + * configure.in, Makefile.am, tools/Makefile.am: add tools to build. + * gnome-session/org.gnome.SessionManagement.xml, + gnome-session/dbus.c (gsm_dbus_server_set_name): new SetName D-Bus + method which should be used to set the name of current session. + * gnome-session/session.[ch] (gsm_session_set_name): new GsmSession + method for setting session name. + +2008-05-14 Lucas Rocha + + * configure.in: post-release bump to 2.23.3 + +2008-05-14 Lucas Rocha + + * NEWS: + * README: Version 2.23.2.2. + +2008-05-14 Lucas Rocha + + * capplet/ui.c (add_app_cb): remove iter from store if app is not + actually added. #532973, David Ronis. + +2008-05-14 Lucas Rocha + + * gnome-session/main.c (main): fixed a build warning on the + gtk_init_with_args() call. + +2008-05-14 Lucas Rocha + + * capplet/ui.c: fixed command entry widget name to match the one + in the glade. + +2008-05-14 Kjartan Maraas + + * data/session-properties.glade: Don't translate + widget labels. + +2008-05-13 Lucas Rocha + + * configure.in: post-release bump to 2.23.3 + +2008-05-13 Lucas Rocha + + * NEWS: + * README: Version 2.23.2.1. + +2008-05-13 Lucas Rocha + + * configure.in: fixed libglade dependency to 2.3.6. + #532835, Karsten Bräckelmann. + +2008-05-12 Lucas Rocha + + * configure.in: post-release bump to 2.23.3 + +2008-05-12 Lucas Rocha + + * NEWS: + * README: Version 2.23.2. + +2008-05-12 Lucas Rocha + + * capplet/main.c, capplet/ui.[ch], capplet/commands.[ch]: added + copyright headers. + +2008-05-10 Lucas Rocha + + Session properties capplet re-implemented for new code base. + #529601, Karsten Bräckelmann. + + * capplet/main.c, capplet/ui.[ch], capplet/commands.[ch]: session + properties capplet code. + * gnome-session/util.[ch]: utility functions shared among session + manager and capplet. + * gnome-session/session.c (gsm_session_new): use gsm_util_* functions + instead of local ones. + * data/session-properties.glade: capplet Glade file. + +2008-04-22 Lucas Rocha + + * configure.in: post-release bump to 2.23.2 + +2008-04-22 Lucas Rocha + + * NEWS: + * README: Version 2.23.1.1. + +2008-04-22 Lucas Rocha + + * splash/Makefile.am: install splash .desktop files in an autostart + directory instead of old default-session one. + * compat/Makefile.am: install compat .desktop files in an autostart + directory instead of old default-session one. + +2008-04-21 Lucas Rocha + + * configure.in: post-release bump to 2.23.2 + +==================== 2.23.1 ==================== + +2008-04-21 Lucas Rocha + + * NEWS: + * README: Version 2.23.1. + +2008-04-21 Lucas Rocha + + * data/Makefile.am, data/nautilus.desktop, + data/gnome-settings-daemon.desktop: don't install .desktop files for + nautilus and gnome-settings-daemon because gnome-session looks for + those in their origin paths now. + +2008-04-21 Lucas Rocha + + * data/gnome-wm: restore the gnome-wm script to keep backwards + compatibitility. + +2008-04-19 Lucas Rocha + + * gnome-session/app-autostart (file_condition_cb, is_disabled): + Separate callbacks for if-exists and unless-exists condition + to not need a condition_type private attribute. + +2008-04-13 Lucas Rocha + + Fully implement if-exists and unless-exists condition types. + + * configure.in: bump glib dependency to 2.16.0 and add gio bits. + * gnome-session/app-autostart.c: added condition and condition_type + private attribute to keep track of codition changes in the app. + (gsm_app_autostart_class_init, gsm_app_autostart_dispose): added + dispose to free internal resources. + (file_condition_cb): callback for file monitor used to keep track + of if-exists and unless-exists condition changes. + (gconf_condition_cb): only emit "condition-changed" if the condition + actually changed. + (is_disabled): added file monitors for if-exists and unless-exists + condition types. + +2008-04-10 Lucas Rocha + + * data/gnome-panel.desktop, data/Makefile.am: don't install + gnome-panel.desktop anymore as gnome-panel has all needed keys + in its .desktop file now. + +2008-04-10 Lucas Rocha + + Re-implemented the way we define the default session. Instead of a + directory full of .desktop files, we now get the list of default apps + from a gconf key. Then session manager then looks for those apps in + the standard applications and autostart directories. This way we don't + require default apps to export their .desktop files in a special + directory. #525157, Rob Bradford. + + * data/gnome-session.schemas.in: added a new gconf key + /desktop/gnome/session/default-session which stores the list of + default session apps. + * gnome-session/Makefile.am: no need to define default-session + directory anymore. + * gnome-session/gsm.h: added new constant called + GSM_GCONF_DEFAULT_SESSION_KEY refering to new gconf key. + * gnome-session/session.c + (gsm_session_new, append_default_apps): new function to load default + apps from gconf key. The gconf key only stores the application names + and GsmSession looks for a respective .desktop file in some standard + application and autostart directories. + (get_autostart_dirs, get_app_dirs): new utility functions which return + all autostart and applications directories respectively. + +2008-04-10 Lucas Rocha + + * gnome-session/README: fix small typo. + +2008-04-10 Lucas Rocha + + * gnome-session/Makefile.am: use GNOME_SESSION_FLAGS and + GNOME_SESSION_LIBS in INCLUDES and LDADD respectively. + +2008-04-10 Lucas Rocha + + * gnome-session/main.c (main): correctly set translation domain on + gtk_init_with_args() call. + +2008-04-10 Lucas Rocha + + * configure.in: several cosmetic changes. + +2008-04-10 Lucas Rocha + + * gnome-session/main.c (main), gnome-session/Makefile.am: uncommented + gettext-related code. Defined locale directory. + +2008-04-09 Lucas Rocha + + * HACKING: removed obsolete information and updated the content. + +2008-03-31 Lucas Rocha + + * gnome-session/app-autostart.c (is_disabled): Call + egg_desktop_file_can_launch() to check OnlyShowIn/NotShowIn and + TryExec. #525184, Owen Taylor. Patch by Dan Winship. + +2008-03-31 Lucas Rocha + + * data/default-session.in: removed default-session.in as this is + not necessary or used by gnome-session anymore. + +2008-03-30 Lucas Rocha + + * data/metacity.desktop, data/Makefile.am: don't install + metacity.desktop anymore as metacity is doing it now. + +2008-03-23 Lucas Rocha + + * AUTHORS, MAINTAINERS: updated with real content. + +2008-03-23 Lucas Rocha + + Fix relation between apps set with X-GNOME-Autorestart and + AutostartCondition. + + * gnome-session/session.c + (app_condition_changed, client_disconnected): don't restart apps if + their condition are set to false. + * gnome-session/app-autostart.c (is_disabled): don't keep track of + condition in case the app is not set with X-GNOME-Autorestart. + +2008-03-22 Lucas Rocha + + * configure.in: removed libnotify dependency and made some cleanups. + +2008-03-22 Lucas Rocha + + * configure.in: update version to 2.23.1 for future release. + * po/POTFILES.in, data/Makefile.am: Several fixes in the build files + in order to make it pass distcheck. + +2008-03-06 Lucas Rocha + + * egg/eggdesktopfile.c (egg_desktop_file_new_from_key_file), + gnome-session/xsmp.c (gsm_xsmp_init): fixed two memory leaks. + +2008-03-05 Lucas Rocha + + * egg/eggdesktopfile.c (egg_desktop_file_launchv): use g_ptr_array_add + instead of g_ptr_array_set_size to add NULL item to env array. + +2008-03-05 Lucas Rocha + + * egg/eggdesktopfile.c (egg_desktop_file_launchv): add a NULL item to + the environment vars array in order to avoid invalid memory access. + +2008-03-05 Lucas Rocha + + * gnome-session/client-xsmp.c (debug_print_property): removed useless + debug message. + +2008-03-04 Lucas Rocha + + Added support for stopping/starting autostart apps based on their + AutostartCondition key definition (GConf-only for now). + + * gnome-session/app-autostart.[ch]: added condition-changed signal and + keep track of gconf key changes from the .desktop AutostartCondition + key. + * gnome-session/session.c (start_phase): connect to condition-changed + signal and launch or kill autostart app depending on the new condition + state. + +2008-02-19 Lucas Rocha + + * gnome-session/Makefile.am: added app-resumed.[ch] to the build. + * gnome-session/app-resumed.[ch]: fix attribute name. + * gnome-session/session.c (gsm_session_new, + append_saved_session_apps): uncomment legacy saved session loading + code. + +2008-02-19 Lucas Rocha + + * data/Makefile.am: added autotools bits for session .desktop file. + * data/gnome.desktop.in: added xsession .desktop file. + +2008-02-19 Lucas Rocha + + * data/Makefile.am: added autotools bits for GConf schemas. + * gnome-session/gsm.schemas: moved schemas file to "data" directory as + gnome-session.schemas.in. + +2007-11-27 Lucas Rocha + + * gnome-session/dbus.c (gsm_dbus_init): use G_SPAWN_SEARCH_PATH flag + and do not use '--sh-syntax' option on dbus-launch in order to have it + correctly running and setting the respective environment vars. + +2007-11-26 Lucas Rocha + + New D-Bus APIs for logging out (org.gnome.SessionManager.Logout) + and shutting down the computer (org.gnome.SessionManager.Shutdown). + + * gnome-session/Makefile.am: added gdm.[ch], power-manager.[ch] + and logout-dialog.[ch] to the build. + * gnome-session/logout-dialog.[ch]: new logout dialog implementation + for logout and shutdown operations. + * gnome-session/power-manager.[ch]: new functions for powering down, + restarting, and suspending the computer through GNOME Power Manager. + * gnome-session/gdm.[ch]: new functions for communication with GDM. + * gnome-session/client-xsmp.c: (save_yourself_request_callback): update + with new gnome_session_initiate_shutdown() API. + * gnome-session/dbus.c (gsm_dbus_server_logout, + gsm_dbus_server_shutdown), gnome-session/org.gnome.SessionManagement.xml: + new D-Bus APIs for Logout and Shutdown. + * gnome-session/session.[ch]: + (logout_dialog_response, gsm_session_initiate_shutdown): new parameter + for determining which logout mode to use (normal logout or shutdown). Use + new logout dialog when a confirmation is requested. + (session_cancel_shutdown): reset the logout dialog response in case the + shutdown process is cancelled. + (initiate_shutdown): moved the code for initiating the session shutdown + to a separate function. + (session_shutdown): activate shutdown functions in case this is + requested in the logout dialog. + +2007-11-20 Lucas Rocha + + * gnome-session/session.c (app_registered): remove timeout function + when all applications from a certain phase are registered on time. + +2007-11-18 Lucas Rocha + + * compat/gnome-settings-daemon-helper.c: remove screen resolution + settings code as this is now handled by gnome-settings-daemon + accordingly. See bug #434982. + * configure.in: don't check XRandr bits anymore. + +2007-11-17 Dan Winship + + * gnome-session/xsmp.c: + * gnome-session/client-xsmp.c: + * gnome-session/app-resumed.c: add some comments explaining + various things + +2007-11-12 Lucas Rocha + + * gnome-session/session.c (start_phase): only add autostarted apps + to pending apps on phases before GSM_SESSION_PHASE_APPLICATION. + +2007-11-10 Lucas Rocha + + Add support for client autorestart which can be activated by the + "X-GNOME-AutoRestart" .desktop file key or by setting the restart + style accordingly through the session client API (GnomeClient's + gnome_client_set_restart_style()). + + * gnome-session/client-xsmp.c + (register_client_callback): do not generate new IDs itself, and have it just pass + the previous_id directly to gsm_session_register_client(), and if it's NULL, then + gsm_session_register_client() can generate the new client ID using + gsm_xsmp_generate_client_id(). + (gsm_client_xsmp_class_init, xsmp_restart): XSMP client implementation + of gsm_client_restart() method. + * gnome-session/client.[ch] (gsm_client_restart): new abstract method + for restarting a session client. + * gnome-session/session.c (gsm_session_register_client): change it to + generate a new client ID in case the provided ID is NULL and return the + generated ID in case the client is accepted. A client ID is accepted + by the session manager if it's not duplicated, belongs to one of the + autostarted apps or is NULL. + +2007-11-07 Lucas Rocha + + * egg/eggdesktopfile.c (egg_desktop_file_launchv): fix build warning. + +2007-10-27 Lucas Rocha + + * gnome-session/client-xsmp.c (xsmp_get_client_id, xsmp_get_pid, + xsmp_get_restart_command, xsmp_get_autorestart): cast correct variable + in order to make invalid memory accesses on wrong variable. + +2007-10-27 Lucas Rocha + + * gnome-session/client.c (gsm_client_get_client_id, + gsm_client_get_pid, gsm_client_get_desktop_file, + gsm_client_get_restart_command, gsm_client_get_discard_command, + gsm_client_get_autorestart, gsm_client_save_state): add definition for + abstract methods in GsmClient. + +2007-10-23 Lucas Rocha + + * gnome-session/gconf.c (unset_display_setup): revert change for + unsetting DISPLAY environment variable before running + gconf-sanity-check as now it can run without a display. + +2007-10-21 Lucas Rocha + + * gnome-session/session.c + (start_phase): correctly check if application was successfully + launched. Fix crasher when printing out error message in case application + failed to launch and returned no error. + (gsm_session_register_client): emit "registered" signal on application + with the registered session client id. + +2007-10-21 Lucas Rocha + + * gnome-session/app.[ch] + (gsm_app_class_init): added new GsmApp signals "registered" and "exited". + (launch, app_exited): if case the application belongs to + Initialization phase, monitor program exit in order to emit "exited" + signal accordingly. + (gsm_app_registered): new method for emitting "registered" signal on + an GsmApp object. + +2007-10-21 Lucas Rocha + + * gnome-session/gconf.c (unset_display_setup): do not unset DISPLAY + environment variable as gconf-sanity-check doesn't run if there's no + defined display. + +2007-10-21 Lucas Rocha + + * egg/eggsmclient.c (sm_client_post_parse_func): try to get session + client id from the DESKTOP_AUTOSTART_ID environment variable in case + no client id is given from command line option --sm-client-id. Unset + this environment variable just after using it in order to avoid child + processes to use the same client id. + +2007-10-21 Lucas Rocha + + * egg/eggdesktopfile.c (egg_desktop_file_launchv): fix leak and + invalid memory access on environment variables array. + +2007-10-21 Lucas Rocha + + * compat/gnome-keyring-daemon-wrapper.desktop.in, + compat/gnome-settings-daemon-helper.desktop.in, + data/gnome-panel.desktop, data/gnome-settings-daemon.desktop, + data/metacity.desktop, data/nautilus.desktop, + splash/gnome-login-sound.desktop.in, + splash/gnome-session-splash.desktop.in: use + X-GNOME-Autostart-Notify key for passing session client ids + through the DESKTOP_AUTOSTART_ID environment variable. + +2007-06-29 Dan Winship + + * Initial commit. Don't expect it to be useful yet. :) -- cgit v1.2.3