committing gnome session changes programmatically...



Hello.

I'm the author of grdb and have received a bug report which I'm not
sure I can solve :)

Basically the report that is grdb's capplet doesn't save an entry into 
the session unless the session is saved manually. I have my desktop set
to save automatically on logout, which must be sufficient as well (I don't
see this problem.) Of course, I may have accidentally/subconsciously
done a manual save at some point and its just always worked. (I'll have
to check that)

What I'm wondering is, can I force just the new entry for the capplet
to be saved when the capplet is first run?

Currently, I've copied from standard capplets (the mouse-properties
specifically). Here's (the hopefully relevant) part of the code I have:

	token = gnome_startup_acquire_token (
		"GRDB_CAPP_PROPERTIES",
		gnome_client_get_id (client));

	if (token) {
		session_args[0] = argv[0];
		session_args[1] = "--init-session-settings";
		session_args[2] = NULL;
		gnome_client_set_priority (client, 20);
		gnome_client_set_restart_style (client,
						GNOME_RESTART_ANYWAY);
		gnome_client_set_restart_command (client, 2,
						  session_args);
	} else {
		gnome_client_set_restart_style (client,
						GNOME_RESTART_NEVER);
	}

	gnome_client_flush (client);

Thanks in advance for any pointers. Also, I haven't looked recently,
but can anyone point me documentation on the gnome-client stuff?
I couldn't find it when I first wrote the capplet and my network
connection tonight is so painfully slow I can't effectively look right
now.

Thanks again,
Sam Hunter <shunter@bigsky.net>





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]