try to run gnome-screensaver, and if that fails, run xscreensaver.
2005-07-20 Rodrigo Moya <rodrigo@novell.com> * gnome-settings-screensaver.c (gnome_settings_screensaver_load): * gnome-settings-multimedia-keys.c (do_action): try to run gnome-screensaver, and if that fails, run xscreensaver.
This commit is contained in:
parent
cf87a9a2c9
commit
6e25211b2f
3 changed files with 37 additions and 5 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2005-07-20 Rodrigo Moya <rodrigo@novell.com>
|
||||||
|
|
||||||
|
* gnome-settings-screensaver.c (gnome_settings_screensaver_load):
|
||||||
|
* gnome-settings-multimedia-keys.c (do_action): try to run
|
||||||
|
gnome-screensaver, and if that fails, run xscreensaver.
|
||||||
|
|
||||||
2005-07-12 Sebastien Bacher <seb128@debian.org>
|
2005-07-12 Sebastien Bacher <seb128@debian.org>
|
||||||
|
|
||||||
* modmap-dialog.glade: fix a label form (Closes: #167739).
|
* modmap-dialog.glade: fix a label form (Closes: #167739).
|
||||||
|
|
|
@ -804,6 +804,8 @@ do_sound_action (Acme *acme, int type)
|
||||||
static void
|
static void
|
||||||
do_action (Acme *acme, int type)
|
do_action (Acme *acme, int type)
|
||||||
{
|
{
|
||||||
|
gchar *cmd;
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case MUTE_KEY:
|
case MUTE_KEY:
|
||||||
case VOLUME_DOWN_KEY:
|
case VOLUME_DOWN_KEY:
|
||||||
|
@ -829,7 +831,12 @@ do_action (Acme *acme, int type)
|
||||||
do_sleep_action ("apm", "xset dpms force off");
|
do_sleep_action ("apm", "xset dpms force off");
|
||||||
break;
|
break;
|
||||||
case SCREENSAVER_KEY:
|
case SCREENSAVER_KEY:
|
||||||
execute ("xscreensaver-command -lock", FALSE);
|
if ((cmd = g_find_program_in_path ("gnome-screensaver-command")))
|
||||||
|
execute ("gnome-screensaver-command --lock", FALSE);
|
||||||
|
else
|
||||||
|
execute ("xscreensaver-command -lock", FALSE);
|
||||||
|
|
||||||
|
g_free (cmd);
|
||||||
break;
|
break;
|
||||||
case HELP_KEY:
|
case HELP_KEY:
|
||||||
do_help_action (acme);
|
do_help_action (acme);
|
||||||
|
|
|
@ -35,6 +35,7 @@
|
||||||
#define START_SCREENSAVER_KEY "/apps/gnome_settings_daemon/screensaver/start_screensaver"
|
#define START_SCREENSAVER_KEY "/apps/gnome_settings_daemon/screensaver/start_screensaver"
|
||||||
#define SHOW_STARTUP_ERRORS_KEY "/apps/gnome_settings_daemon/screensaver/show_startup_errors"
|
#define SHOW_STARTUP_ERRORS_KEY "/apps/gnome_settings_daemon/screensaver/show_startup_errors"
|
||||||
#define XSCREENSAVER_COMMAND "xscreensaver -nosplash"
|
#define XSCREENSAVER_COMMAND "xscreensaver -nosplash"
|
||||||
|
#define GSCREENSAVER_COMMAND "gnome-screensaver"
|
||||||
|
|
||||||
void
|
void
|
||||||
gnome_settings_screensaver_init (GConfClient *client)
|
gnome_settings_screensaver_init (GConfClient *client)
|
||||||
|
@ -42,8 +43,12 @@ gnome_settings_screensaver_init (GConfClient *client)
|
||||||
/*
|
/*
|
||||||
* do nothing.
|
* do nothing.
|
||||||
*
|
*
|
||||||
* our settings only apply to startup, and the screensaver
|
* with gnome-screensaver, all settings are loaded internally
|
||||||
* settings are all in xscreensaver and not gconf.
|
* from gconf at startup
|
||||||
|
*
|
||||||
|
* with xscreensaver, our settings only apply to startup, and
|
||||||
|
* the screensaver settings are all in xscreensaver and not
|
||||||
|
* gconf.
|
||||||
*
|
*
|
||||||
* we could have xscreensaver-demo run gconftool-2 directly,
|
* we could have xscreensaver-demo run gconftool-2 directly,
|
||||||
* and start / stop xscreensaver here
|
* and start / stop xscreensaver here
|
||||||
|
@ -69,16 +74,30 @@ void
|
||||||
gnome_settings_screensaver_load (GConfClient *client)
|
gnome_settings_screensaver_load (GConfClient *client)
|
||||||
{
|
{
|
||||||
GError *gerr = NULL;
|
GError *gerr = NULL;
|
||||||
gboolean start_screensaver;
|
gboolean start_screensaver, use_gscreensaver = FALSE;
|
||||||
gboolean show_error;
|
gboolean show_error;
|
||||||
GtkWidget *dialog, *toggle;
|
GtkWidget *dialog, *toggle;
|
||||||
|
gchar *ss_command;
|
||||||
|
|
||||||
start_screensaver = gconf_client_get_bool (client, START_SCREENSAVER_KEY, NULL);
|
start_screensaver = gconf_client_get_bool (client, START_SCREENSAVER_KEY, NULL);
|
||||||
|
|
||||||
if (!start_screensaver)
|
if (!start_screensaver)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (g_spawn_command_line_async (XSCREENSAVER_COMMAND, &gerr))
|
if ((ss_command = g_find_program_in_path ("gnome-screensaver")))
|
||||||
|
use_gscreensaver = TRUE;
|
||||||
|
else {
|
||||||
|
if (!(ss_command = g_find_program_in_path ("xscreensaver")))
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
g_free (ss_command);
|
||||||
|
if (use_gscreensaver)
|
||||||
|
ss_command = GSCREENSAVER_COMMAND;
|
||||||
|
else
|
||||||
|
ss_command = XSCREENSAVER_COMMAND;
|
||||||
|
|
||||||
|
if (g_spawn_command_line_async (ss_command, &gerr))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
show_error = gconf_client_get_bool (client, SHOW_STARTUP_ERRORS_KEY, NULL);
|
show_error = gconf_client_get_bool (client, SHOW_STARTUP_ERRORS_KEY, NULL);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue