2009-04-14 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.26.2
==================== 2.26.1 ====================
2009-04-14 Vincent Untz <vuntz@gnome.org>
* NEWS: version 2.26.1
2009-04-10 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* configure.in: post-release bump to 2.26.1
==================== 2.26.0.90 ====================
2009-04-08 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.26.0.90
2009-04-08 Vincent Untz <vuntz@gnome.org>
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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <mclasen@redhat.com>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
Create a END_SESSION_LAST phase during which we handle the clients
which wanted to be ended last.
For this, we need to keep a list of clients in that case.
* gnome-session/gsm-client.h: add a new
GSM_CLIENT_END_SESSION_FLAG_LAST flag, to tell the client it's running
last.
* gnome-session/gsm-manager.[ch]: (phase_num_to_name): handle new phase
(end_phase): empty the list of clients that wants to be ended last if
it's not a relevant phase. Also handle new phase.
(on_phase_timeout): handle new phase
(_client_end_session_last): new, to tell a client that the session is
being ended. Works like _client_end_session()
(do_phase_end_session_last): prepare the right flags to be used for
each clients via _client_end_session_last(). Note that we don't use all
clients in the session here, but the list of clients that wanted to be
ended last.
We use a 10 seconds timeout for that phase to not block on clients that
don't reply. Also, if there's no client in the session, then save the
session if auto-save is enabled.
(start_phase): empty the list of clients that wants to be ended last if
it's not a relevant phase. Also handle new phase.
(maybe_save_session): make this call valid in END_SESSION_LAST instead
of END_SESSION
(on_client_end_session_response): save the client in a specific list if
it wants to be ended last.
* gnome-session/gsm-xsmp-client.c: (xsmp_save_yourself_phase2):
uncomment
(xsmp_end_session): if the client is running last, then it means it's
phase2 of SaveYourself, so use xsmp_save_yourself_phase2()
2009-03-25 Vincent Untz <vuntz@gnome.org>
s/gdm_client_end_session_response/gsm_client_end_session_response/g
* gnome-session/gsm-client.c: (gsm_client_end_session_response):
* 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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
* gnome-session/gsm-manager.c: (do_phase_end_session),
(auto_save_is_enabled): coding style nit-picking
2009-03-25 Vincent Untz <vuntz@gnome.org>
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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* gnome-session/gsm-inhibit-dialog.c: use a 32x32 icon size for icons,
looks better this way.
2009-03-24 Vincent Untz <vuntz@gnome.org>
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 <vuntz@gnome.org>
* configure.in:
* doc/man/*: rework the man pages so that they're up-to-date.
2009-03-16 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.26.1
==================== 2.26.0 ====================
2009-03-16 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.26.0
2009-03-16 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <lucasr@gnome.org>
Bug 574399 – turn off debug spew
* gnome-session/main.c: ditto.
2009-03-03 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.26.0
==================== 2.25.92 ====================
2009-03-03 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.25.92
2009-03-01 Lucas Rocha <lucasr@gnome.org>
* 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 <mclasen@redhat.com>
* gnome-session/gs-idle-monitor.c: Ask for AlertNotify in a way
that XSync understands. (#567958)
2009-02-26 Vincent Untz <vuntz@gnome.org>
* 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 <pborelli@katamail.com>
* gnome-session/gsm-client.c:
chain up finalize
2009-02-23 Lucas Rocha <lucasr@gnome.org>
* gnome-session/Makefile.am, gnome-session/gsm-resumed-app.[ch]:
remove GsmResumedApp code as it's being used anymore.
2009-02-23 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* gnome-session/gsm-manager.c (user_logout): use gconf client from
GsmManager instead of getting a new one.
2009-02-23 Lucas Rocha <lucasr@gnome.org>
* gnome-session/gsm-xsmp-client.c (do_save_yourself): add comments on
SmsSaveYourself parameters for clarity.
2009-02-23 Lucas Rocha <lucasr@gnome.org>
* gnome-session/gsm-manager.c (on_xsmp_client_logout_request):
improve readability of conditional code.
2009-02-23 Lucas Rocha <lucasr@gnome.org>
* gnome-session/gsm-manager.c: wrap too long lines into 80 cols.
2009-02-23 Lucas Rocha <lucasr@gnome.org>
* gnome-session/gsm-manager.c: rename forceful attribute to
forceful_logout for clarity.
2009-02-22 Lucas Rocha <lucasr@gnome.org>
* capplet/gsm-properties-dialog.c: use G_KEY_FILE_DESKTOP_* constants
instead of hardcoded groups and key names.
2009-02-21 Lucas Rocha <lucasr@gnome.org>
* gnome-session/gsm-manager.c: coding style fixes from last commit.
2009-02-21 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* gnome-session/gsm-manager.c: rename load_from_gconf to
load_idle_delay_from_gconf for clarity.
2009-02-21 Matthias Clasen <mclasen@redhat.com>
* 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 <fcrozat@mandriva.com>
* data/gsm-inhibit-dialog.glade:
Ensure treeview is included in a scrolled window with a shadow.
2009-02-17 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.25.92.
==================== 2.25.91 ====================
2009-02-17 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.25.91
2009-02-13 Luca Ferretti <elle.uca@libero.it>
* data/gnome-session.schemas.in: better phrase for
"required_components_list" key, thanks to Dan Winship
2009-02-13 Luca Ferretti <elle.uca@libero.it>
reviewed by: Vincent Untz <vuntz@gnome.org>
* 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 <elle.uca@libero.it>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <mclasen@redhat.com>
* gnome-session/gs-idle-monitor.c (_xsync_alarm_set): Fix a
copy-and-paste error in debug output.
2009-02-03 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.25.91.
==================== 2.25.90 ====================
2009-02-03 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.25.90
2009-01-28 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* gnome-session/gs-idle-monitor.c: (gs_idle_monitor_reset): fix build
when the XTest extension is not available.
2009-01-26 Richard Hughes <richard@hughsie.com>
* gnome-session/org.gnome.SessionManager.xml:
Fix up the documentation to mention the session bus, not the
system bus.
2009-01-23 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* compat/Makefile.am: install autostart desktop files in
/etc/xdg/autostart
2009-01-19 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.25.90.
==================== 2.25.5 ====================
2009-01-19 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.25.5
2009-01-18 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-presence.c (on_bus_name_owner_changed):
Compare the correct string for name owner changes.
2009-01-18 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/org.gnome.SessionManager.xml:
Add docs for inhibit idle.
2009-01-15 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-presence.c (gsm_presence_set_status_text):
Add status text size limit.
2009-01-11 William Jon McCann <jmccann@redhat.com>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
Bug 554725 – resync gnome-session from libegg
egg/*: ditto. Patch by Dan Winship.
2009-01-08 Lucas Rocha <lucasr@gnome.org>
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 <lucasr@gnome.org>
Bug 552218 – typo: "unable connect"
* gnome-session/gsm-util.c: fix typo.
2009-01-08 Lucas Rocha <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <vuntz@gnome.org>
* configure.in: post-release bump to 2.25.4.
==================== 2.25.3 ====================
2008-12-14 Vincent Untz <vuntz@gnome.org>
* NEWS: version 2.25.3
2008-12-10 Vincent Untz <vuntz@gnome.org>
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 <vuntz@gnome.org>
* gnome-session/Makefile.am: fix build
2008-12-10 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <rstrode@redhat.com>
* 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 <vuntz@gnome.org>
* configure.in: post-release bump to 2.25.3.
==================== 2.25.2 ====================
2008-12-02 Vincent Untz <vuntz@gnome.org>
* NEWS:
* configure.in: version 2.25.2
2008-11-26 Diego Escalante Urrelo <diegoe@gnome.org>
* gnome-session/gsm-util.c:
* gnome-session/main.c:
Don't do single includes for glib. Fixes #560786.
2008-11-14 Stef Walter <stef@memberwebs.com>
* 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 <rstrode@redhat.com>
* 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 <mclasen@redhat.com>
* gnome-session/gsm-manager.c (gsm_manager_register_client):
Rewrite the app-finding code to make more sense.
2008-11-10 Kjartan Maraas <kmaraas@gnome.org>
* 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 <jmccann@redhat.com>
* gnome-session/main.c (acquire_name):
Don't try to print an undefined error message.
2008-10-26 Matthias Clasen <mclasen@redhat.com>
* capplet/gsm-properties-dialog.c: Make the window resizable,
since it shows scrollbars and ellipsized text.
2008-10-24 William Jon McCann <jmccann@redhat.com>
* configure.in:
Don't try to link to gnome-keyring and libgnomeui
since we don't use them.
2008-10-22 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.24.2.
==================== 2.24.1 ====================
2008-10-22 Vincent Untz <vuntz@gnome.org>
* NEWS: version 2.24.1
2008-10-03 Luca Ferretti <elle.uca@libero.it>
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 <wbolster@gnome.org>
2008-09-29 Christian Persch <chpe@gnome.org>
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 <fpeters@0d.be>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-autostart-app.c (autostart_app_start_spawn):
Fix startup id leak.
Fixes #552815
Patch from: Matthias Clasen <mclasen@redhat.com>
2008-09-23 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-inhibit-dialog.c (gsm_inhibit_dialog_dispose):
Fix a glade xml leak.
Fixes #552780
Patch from: Matthias Clasen <mclasen@redhat.com>
2008-09-23 Patryk Zawadzki <patrys@pld-linux.org>
* data/session-properties.desktop.in.in: add GTK and GNOME.
Fix bug #552050.
2008-09-22 Vincent Untz <vuntz@gnome.org>
* configure.in: post-release bump to 2.24.1.
==================== 2.24.0 ====================
2008-09-22 Vincent Untz <vuntz@gnome.org>
* NEWS: version 2.24.0
2008-09-22 Vincent Untz <vuntz@gnome.org>
* gnome-session/main.c: turn off debugging by default.
Fix bug #551761.
2008-09-15 Matthias Clasen <mclasen@redhat.com>
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 <mclasen@redhat.com>
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 <mclasen@redhat.com>
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 <mclasen@redhat.com>
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 <mclasen@redhat.com>
Bug 552292 – leaks ListenObjs
* gnome-session/gsm-xsmp-server.c (gsm_xsmp_server_finalize):
Don't leak xsmp_sockets.
2008-09-10 Frederic Crozat <fcrozat@mandriva.com>
* 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 <jmccann@redhat.com>
* configure.in: Post release version bump
==================== 2.23.92 ====================
2008-09-08 William Jon McCann <jmccann@redhat.com>
* NEWS: Update for release.
2008-09-08 William Jon McCann <jmccann@redhat.com>
* gnome-session/main.c (append_required_apps):
Warn if no required_components are specified.
2008-09-04 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* data/gnome-wm: avoid gnome-wm launching itself in loop when the
configuration tells us to use... gnome-wm.
2008-09-02 Vincent Untz <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* data/gnome-session.schemas.in: revert string freeze break. Add a
FIXME for the future instead.
2008-09-02 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* configure.in: post-release bump to 2.23.92.
==================== 2.23.91 ====================
2008-09-02 Vincent Untz <vuntz@gnome.org>
* NEWS:: version 2.23.91
2008-09-02 Vincent Untz <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <stef@memberwebs.com>
Fix part of bug #547272.
2008-09-02 Vincent Untz <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
* 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 <vuntz@gnome.org>
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 <vuntz@gnome.org>
* 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 <walters@verbum.org>
Fix bug #546863.
2008-08-30 Matthias Clasen <mclasen@redhat.com>
* 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 <mclasen@redhat.com>
* splash/gnome-session-splash.c: Plug a small leak.
2008-08-29 Matthias Clasen <mclasen@redhat.com>
* egg/eggsmclient-xsmp.c (sm_client_xsmp_connect): Don't
leak cmdline.
2008-08-29 William Jon McCann <jmccann@redhat.com>
* gnome-session/main.c (find_desktop_file_for_app_name):
Add some debugging.
2008-08-29 Matthias Clasen <mclasen@redhat.com>
* compat/at-spi-registryd-wrapper.c (set_gtk_modules): Plug
another leak
2008-08-29 William Jon McCann <jmccann@redhat.com>
* 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 <mclasen@redhat.com>
2008-08-29 William Jon McCann <jmccann@redhat.com>
* data/Makefile.am:
Don't install the gnome-wm.desktop by default.
2008-08-29 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/main.c (main): Fix typo.
2008-08-28 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* data/gnome-wm:
Use the required components key if possible.
2008-08-26 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <fcrozat@mandriva.com>
* 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 <fcrozat@mandriva.com>
* 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 <fcrozat@mandriva.com>
* gnome-session/gsm-util.c: ensure non-fatal error
are treated as such. Fixes #548980.
2008-08-22 Jens Granseuer <jensgr@gmx.net>
* capplet/gsm-properties-dialog.c: add missing include for gio.
Fixes #548909.
2008-08-21 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* configure.in: Post release version bump
==================== 2.23.90 ====================
2008-08-20 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-xsmp-client.c (interact_request_callback):
Fix debug to show correct dialog type for interact request.
2008-08-19 Frederic Crozat <fcrozat@mandriva.com>
* splash/gnome-session-splash.c:
Exit splash screen when last client startup
notification finished. Fixes #546410
2008-08-18 William Jon McCann <jmccann@redhat.com>
* capplet/gsm-properties-dialog.c (add_app):
Fix a case where we don't create ~/.config/autostart
Based on patch from: James Westby <jw+debian@jameswestby.net>
Fixes #548129
2008-08-18 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-inhibit-dialog.c
(gsm_inhibit_dialog_constructor):
Change a warning to a debug.
2008-08-18 William Jon McCann <jmccann@redhat.com>
* 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 <claude@2xlibre.net>
* data/gsm-inhibit-dialog.glade: Removed translatable property on stock
label.
2008-08-16 Kjartan Maraas <kmaraas@gnome.org>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <ghee.teo@sun.com>
* data/gnome-wm:
Fixes bug #547769. Handle gconftool-2 errors properly.
2008-08-14 William Jon McCann <jmccann@redhat.com>
* gnome-session/main.c (main):
Fail when unknown options are given. Support a version option.
2008-08-13 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 - <erwann.chenede@sun.com>
* gnome-session/Makefile.am: added XRENDER_LIBS to
enable compilation on Solaris. Fixes #547619
2008-08-12 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-manager.c (phase_num_to_name):
Add missing breaks;
2008-08-12 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-autostart-app.c (autostart_app_start_spawn):
Initialize error.
Fixes #547443
2008-08-12 Matthias Clasen <mclasen@redhat.com>
* compat/at-spi-registryd-wrapper.c: Fix a crash.
2008-08-11 William Jon McCann <jmccann@redhat.com>
* 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 <kim@woelders.dk>
Fixes #547069
2008-08-11 William Jon McCann <jmccann@redhat.com>
* capplet/main.c (main):
Add support for --version.
2008-08-11 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jwendell@gnome.org>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* configure.in: Bump dbus-glib dep to 0.76
Fixes #546722
2008-08-07 Matthias Clasen <mclasen@redhat.com>
* data/gnome-session.schemas.in: Fix a typo.
2008-08-07 Matthias Clasen <mclasen@redhat.com>
* capplet/commands.c: Use standard icon name.
2008-08-05 Jens Granseuer <jensgr@gmx.net>
* gnome-session/gsm-gconf.c: include sys/types.h for pid_t. Fixes
#546439.
2008-08-05 William Jon McCann <jmccann@redhat.com>
* configure.in: Post release version bump
==================== 2.23.6 ====================
2008-08-05 William Jon McCann <jmccann@redhat.com>
* NEWS: Update for 2.23.6 release
2008-08-05 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-app.h:
Removed unused item from vtable.
2008-08-04 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <wbolster@gnome.org>
Fixes #544830
2008-08-04 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <mclasen@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <mclasen@redhat.com>
* gnome-session/gsm-client.c: Cosmetic fix to some
g_return_val_if_fail return values.
2008-07-29 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* capplet/commands.c:
* capplet/ui.c:
* doc/dbus/gnome-session.xml.in:
Fix build.
2008-07-29 Matthias Clasen <mclasen@redhat.com>
* 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 <mclasen@redhat.com>
* 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 <jmccann@redhat.com>
* MAINTAINERS: Add myself.
2008-07-29 William Jon McCann <jmccann@redhat.com>
* configure.in: Bump to 2.23.6 to be in sync with trunk.
2008-07-29 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-manager.c (append_default_apps):
Check for gnome vendor prefix on default apps.
2008-07-28 William Jon McCann <jmccann@redhat.com>
* doc/dbus/Makefile.am:
Install into docdir/dbus.
2008-07-28 William Jon McCann <jmccann@redhat.com>
* doc/dbus/Makefile.am:
Fix distcheck
2008-07-28 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-manager.c (disconnect_client):
Use app_restart variable.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-manager.c (do_phase_query_end_session):
Add query timeout after signalling clients.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-store.c (gsm_store_dispose),
(gsm_store_class_init):
Clear store in dispose.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-dbus-client.xml:
Add docs for dbus-client.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-manager.h:
* gnome-session/gsm-manager.xml:
Add docs for logout mode.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-manager.xml:
Add more docs.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* data/gnome-session.schemas.in:
* splash/Makefile.am:
* splash/README:
Restore splash.
2008-07-27 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-inhibit-dialog.c (add_inhibitor):
Also check for desktop files using a gnome vendor prefix.
2008-07-25 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-manager.c (end_phase),
(bus_name_owner_changed):
Drop some unused code.
Pointed out by Lucas Rocha <lucasr@gnome.org>
2008-07-24 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-xsmp-client.c (setup_connection):
Use add_seconds for timeout.
Pointed out by Matthias Clasen <mclasen@redhat.com>
2008-07-24 William Jon McCann <jmccann@redhat.com>
* 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 <mclasen@redhat.com>
2008-07-24 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-app.c (gsm_app_dispose):
Don't leak id.
Pointed out by Matthias Clasen <mclasen@redhat.com>
2008-07-24 William Jon McCann <jmccann@redhat.com>
* 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 <fcrozat@mandriva.com>
* splash/gnome-login-sound.c: really disable login/logout sound
if disabled by user. Fix bug #544540.
2008-07-24 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-xsmp-client.c (xsmp_get_restart_style_hint):
Make sure hint is initialized.
2008-07-22 William Jon McCann <jmccann@redhat.com>
* 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 <fcrozat@mandriva.com>
* splash/splash-window.c:
Dither splash background, needed for 16bpp display.
Fix bug #544159.
2008-07-22 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* configure.in: Use FORTIFY_SOURCE
* gnome-session/util.c: Add missing include
2008-07-21 William Jon McCann <jmccann@redhat.com>
* configure.in: Add our own warning flags
* gnome-session/util.c: Add missing includes
2008-07-21 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-xsmp-server.c:
Add some missing includes
2008-07-21 William Jon McCann <jmccann@redhat.com>
* gnome-session/gsm-logout-dialog.c:
Use standard icon names.
Patch from Matthias Clasen. Fixes #542256
2008-07-21 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* configure.in: Bump version number.
2008-07-18 William Jon McCann <jmccann@redhat.com>
* Makefile.am: Remove intltool crap
2008-07-18 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* gnome-session/gsm-logout-dialog.c (gsm_get_dialog):
Center the dialog and set the appropriate window icon.
2008-06-24 William Jon McCann <jmccann@redhat.com>
* AUTHORS: Update
2008-06-24 William Jon McCann <jmccann@redhat.com>
* configure.in:
* gnome-session/Makefile.am:
Remove test program for service client.
Bump intltool req.
2008-06-24 William Jon McCann <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <jmccann@redhat.com>
* 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 <kmaraas@gnome.org>
* 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 <lucasr@gnome.org>
* data/session-properties.glade: add bevel to list of startup apps on
session properties capplet. #536833, Matthias Clasen.
2008-06-03 Lucas Rocha <lucasr@gnome.org>
* configure.in: post-release bump to 2.23.4
2008-06-03 Lucas Rocha <lucasr@gnome.org>
* NEWS:
* README: Version 2.23.3.
2008-05-31 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* configure.in: properly check for broadcast startup message function
on Gdk to have icons shown on session startup.
2008-05-31 Lucas Rocha <lucasr@gnome.org>
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 <danw@gnome.org>
* 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 <lucasr@gnome.org>
* gnome-session/session.c, gnome-session/xsmp.c, gnome-session/app.c:
fixed several memory leaks. #534641, Kjartan Maraas.
2008-05-25 Lucas Rocha <lucasr@gnome.org>
Add support for drag and drop of desktop files on Session Properties
capplet. #437206, Vincent Untz. Patch from Jared Moore <jaredm@gmx.com>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* gnome-session/logout-dialog.c: fixes small build warning.
2008-05-17 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* configure.in: post-release bump to 2.23.3
2008-05-14 Lucas Rocha <lucasr@gnome.org>
* NEWS:
* README: Version 2.23.2.2.
2008-05-14 Lucas Rocha <lucasr@gnome.org>
* capplet/ui.c (add_app_cb): remove iter from store if app is not
actually added. #532973, David Ronis.
2008-05-14 Lucas Rocha <lucasr@gnome.org>
* gnome-session/main.c (main): fixed a build warning on the
gtk_init_with_args() call.
2008-05-14 Lucas Rocha <lucasr@gnome.org>
* capplet/ui.c: fixed command entry widget name to match the one
in the glade.
2008-05-14 Kjartan Maraas <kmaraas@gnome.org>
* data/session-properties.glade: Don't translate
widget labels.
2008-05-13 Lucas Rocha <lucasr@gnome.org>
* configure.in: post-release bump to 2.23.3
2008-05-13 Lucas Rocha <lucasr@gnome.org>
* NEWS:
* README: Version 2.23.2.1.
2008-05-13 Lucas Rocha <lucasr@gnome.org>
* configure.in: fixed libglade dependency to 2.3.6.
#532835, Karsten Bräckelmann.
2008-05-12 Lucas Rocha <lucasr@gnome.org>
* configure.in: post-release bump to 2.23.3
2008-05-12 Lucas Rocha <lucasr@gnome.org>
* NEWS:
* README: Version 2.23.2.
2008-05-12 Lucas Rocha <lucasr@gnome.org>
* capplet/main.c, capplet/ui.[ch], capplet/commands.[ch]: added
copyright headers.
2008-05-10 Lucas Rocha <lucasr@gnome.org>
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 <lucasr@gnome.org>
* configure.in: post-release bump to 2.23.2
2008-04-22 Lucas Rocha <lucasr@gnome.org>
* NEWS:
* README: Version 2.23.1.1.
2008-04-22 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* configure.in: post-release bump to 2.23.2
==================== 2.23.1 ====================
2008-04-21 Lucas Rocha <lucasr@gnome.org>
* NEWS:
* README: Version 2.23.1.
2008-04-21 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* data/gnome-wm: restore the gnome-wm script to keep backwards
compatibitility.
2008-04-19 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* gnome-session/README: fix small typo.
2008-04-10 Lucas Rocha <lucasr@gnome.org>
* gnome-session/Makefile.am: use GNOME_SESSION_FLAGS and
GNOME_SESSION_LIBS in INCLUDES and LDADD respectively.
2008-04-10 Lucas Rocha <lucasr@gnome.org>
* gnome-session/main.c (main): correctly set translation domain on
gtk_init_with_args() call.
2008-04-10 Lucas Rocha <lucasr@gnome.org>
* configure.in: several cosmetic changes.
2008-04-10 Lucas Rocha <lucasr@gnome.org>
* gnome-session/main.c (main), gnome-session/Makefile.am: uncommented
gettext-related code. Defined locale directory.
2008-04-09 Lucas Rocha <lucasr@gnome.org>
* HACKING: removed obsolete information and updated the content.
2008-03-31 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* data/default-session.in: removed default-session.in as this is
not necessary or used by gnome-session anymore.
2008-03-30 Lucas Rocha <lucasr@gnome.org>
* data/metacity.desktop, data/Makefile.am: don't install
metacity.desktop anymore as metacity is doing it now.
2008-03-23 Lucas Rocha <lucasr@gnome.org>
* AUTHORS, MAINTAINERS: updated with real content.
2008-03-23 Lucas Rocha <lucasr@gnome.org>
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 <lucasr@gnome.org>
* configure.in: removed libnotify dependency and made some cleanups.
2008-03-22 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* gnome-session/client-xsmp.c (debug_print_property): removed useless
debug message.
2008-03-04 Lucas Rocha <lucasr@gnome.org>
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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* data/Makefile.am: added autotools bits for session .desktop file.
* data/gnome.desktop.in: added xsession .desktop file.
2008-02-19 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <danw@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
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 <lucasr@gnome.org>
* egg/eggdesktopfile.c (egg_desktop_file_launchv): fix build warning.
2007-10-27 Lucas Rocha <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* 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 <lucasr@gnome.org>
* egg/eggdesktopfile.c (egg_desktop_file_launchv): fix leak and
invalid memory access on environment variables array.
2007-10-21 Lucas Rocha <lucasr@gnome.org>
* 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 <danw@gnome.org>
* Initial commit. Don't expect it to be useful yet. :)