X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=driver%2Fxscreensaver.h;h=4e430c32be2be4e6c8378f6a05efcb4386f9123b;hb=49f5b54f312fe4ac2e9bc47581a72451bd0e8439;hp=1ede883662a8c0ead0253750f9d4c2a2764559c9;hpb=bbd0773f2adde4927a6196361d4061e70bf48cd9;p=xscreensaver diff --git a/driver/xscreensaver.h b/driver/xscreensaver.h index 1ede8836..4e430c32 100644 --- a/driver/xscreensaver.h +++ b/driver/xscreensaver.h @@ -1,4 +1,4 @@ -/* xscreensaver, Copyright (c) 1993-2003 Jamie Zawinski +/* xscreensaver, Copyright (c) 1993-2006 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -80,6 +80,10 @@ struct saver_info { int sgi_saver_ext_event_number; int sgi_saver_ext_error_number; # endif +# ifdef HAVE_RANDR + int randr_event_number; + int randr_error_number; +# endif /* ======================================================================= @@ -93,7 +97,9 @@ struct saver_info { int keyboard_grab_screen; /* The screen number the keyboard grab is on */ Bool fading_possible_p; /* Whether fading to/from black is possible. */ Bool throttled_p; /* Whether we should temporarily just blank - the screen, not run hacks. */ + the screen, not run hacks. (Deprecated: + users should use "xset dpms force off" + instead.) */ time_t blank_time; /* The time at which the screen was blanked (if currently blanked) or unblanked (if not blanked.) */ @@ -153,6 +159,9 @@ struct saver_info { XtIntervalId watchdog_id; /* Timer to implement `prefs.watchdog */ XtIntervalId check_pointer_timer_id; /* `prefs.pointer_timeout' */ + XtIntervalId de_race_id; /* Timer to make sure screen un-blanks */ + int de_race_ticks; + time_t last_activity_time; /* Used only when no server exts. */ time_t last_wall_clock_time; /* Used to detect laptop suspend. */ saver_screen_info *last_activity_screen; @@ -261,6 +270,7 @@ struct saver_screen_info { int poll_mouse_last_root_y; Window poll_mouse_last_child; unsigned int poll_mouse_last_mask; + time_t poll_mouse_last_time; /* ======================================================================= @@ -299,6 +309,9 @@ extern Bool query_sgi_saver_extension (saver_info *); #ifdef HAVE_XIDLE_EXTENSION extern Bool query_xidle_extension (saver_info *); #endif +#ifdef HAVE_RANDR +extern Bool query_randr_extension (saver_info *); +#endif #ifdef HAVE_PROC_INTERRUPTS extern Bool query_proc_interrupts_available (saver_info *, const char **why); #endif @@ -318,6 +331,7 @@ extern void raise_window (saver_info *si, Bool dont_clear); extern Bool blank_screen (saver_info *si); extern void unblank_screen (saver_info *si); +extern void resize_screensaver_window (saver_info *si); extern void get_screen_viewport (saver_screen_info *ssi, int *x_ret, int *y_ret, @@ -375,8 +389,11 @@ extern void cycle_timer (XtPointer si, XtIntervalId *id); extern void activate_lock_timer (XtPointer si, XtIntervalId *id); extern void reset_watchdog_timer (saver_info *si, Bool on_p); extern void idle_timer (XtPointer si, XtIntervalId *id); +extern void de_race_timer (XtPointer si, XtIntervalId *id); extern void sleep_until_idle (saver_info *si, Bool until_idle_p); extern void reset_timers (saver_info *si); +extern void schedule_wakeup_event (saver_info *si, Time when, Bool verbose_p); + /* ======================================================================= remote control @@ -400,6 +417,7 @@ extern void hack_environment (saver_info *si); extern void hack_subproc_environment (saver_screen_info *ssi); extern void init_sigchld (void); extern void spawn_screenhack (saver_info *si, Bool first_time_p); +extern pid_t fork_and_exec (saver_screen_info *ssi, const char *command); extern void kill_screenhack (saver_info *si); extern void suspend_screenhack (saver_info *si, Bool suspend_p); extern Bool screenhack_running_p (saver_info *si); @@ -407,8 +425,6 @@ extern void emergency_kill_subproc (saver_info *si); extern Bool select_visual (saver_screen_info *ssi, const char *visual_name); extern void store_saver_status (saver_info *si); extern const char *signal_name (int signal); -extern void exec_command (const char *shell, const char *command, - int nice_level); /* ======================================================================= subprocs diagnostics