X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=driver%2Fxscreensaver.h;h=92cba9672b3960b9e4257ffc6a99bb8744691fb2;hb=0bd2eabab3e404c6769fe8f59b639275e960c415;hp=6dba82a64bf5fa951d655efbf95150bf216c698b;hpb=f3e0240915ed9f9b3a61781f5c7002d587563fe0;p=xscreensaver diff --git a/driver/xscreensaver.h b/driver/xscreensaver.h index 6dba82a6..92cba967 100644 --- a/driver/xscreensaver.h +++ b/driver/xscreensaver.h @@ -1,4 +1,4 @@ -/* xscreensaver, Copyright (c) 1993-1997 Jamie Zawinski +/* xscreensaver, Copyright (c) 1993-1998 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 @@ -112,6 +112,8 @@ struct saver_info { ======================================================================= */ Bool screen_blanked_p; /* Whether the saver is currently active. */ + Window mouse_grab_window; /* Window holding our mouse grab */ + Window keyboard_grab_window; /* Window holding our keyboard grab */ /* ======================================================================= @@ -124,7 +126,6 @@ struct saver_info { Bool dbox_up_p; /* Whether the demo-mode or passwd dialogs are currently visible */ - /* ======================================================================= demoing ======================================================================= */ @@ -134,6 +135,15 @@ struct saver_info { dialog box, which should be run next. */ + /* ======================================================================= + asking questions + ======================================================================= */ + + Bool question_up_p; /* Whether the question dialog is currently + visible. */ + Widget question_dialog; /* The question dialog, if any. */ + + /* ======================================================================= timers ======================================================================= */ @@ -185,6 +195,9 @@ struct saver_screen_info { destroy and recreate it on different visuals. */ Colormap cmap; /* The colormap that goes with the window. */ + Bool install_cmap_p; /* whether we should use our own colormap. + This can be overridden on a per-hack basis. + */ Visual *current_visual; /* The visual of the window. */ Visual *default_visual; /* visual to use when none other specified */ int current_depth; /* How deep the visual (and the window) are. */ @@ -245,7 +258,7 @@ struct saver_screen_info { extern void restore_real_vroot (saver_info *si); extern void disable_builtin_screensaver (saver_info *si, Bool turn_off_p); -extern void ensure_no_screensaver_running (Display *, Screen *); +extern Bool ensure_no_screensaver_running (Display *, Screen *); #ifdef HAVE_MIT_SAVER_EXTENSION extern Bool query_mit_saver_extension (saver_info *); @@ -254,6 +267,10 @@ extern Bool query_mit_saver_extension (saver_info *); extern Bool query_sgi_saver_extension (saver_info *); #endif +/* Display Power Management System (DPMS) interface. */ +extern Bool monitor_powered_on_p (saver_info *si); +extern void monitor_power_on (saver_info *si); + /* ======================================================================= blanking @@ -265,8 +282,8 @@ extern void raise_window (saver_info *si, Bool dont_clear); extern void blank_screen (saver_info *si); extern void unblank_screen (saver_info *si); -extern void grab_keyboard_and_mouse (Display *, Window, Cursor); -extern void ungrab_keyboard_and_mouse (Display *dpy); +extern void grab_keyboard_and_mouse (saver_info *si, Window, Cursor); +extern void ungrab_keyboard_and_mouse (saver_info *si); /* ======================================================================= locking @@ -296,6 +313,11 @@ extern void format_into_label (Widget label, const char *arg); extern void steal_focus_and_colormap (Widget dialog); #endif +#ifdef HAVE_MOTIF +extern void disable_motif_drag_and_drop(Widget w); +#endif + + /* ======================================================================= timers ======================================================================= */ @@ -317,6 +339,7 @@ extern Bool handle_clientmessage (saver_info *, XEvent *, Bool); subprocs ======================================================================= */ +extern void hack_environment (saver_info *si); extern void init_sigchld (void); extern void spawn_screenhack (saver_info *si, Bool first_time_p); extern void kill_screenhack (saver_info *si); @@ -362,7 +385,7 @@ extern Bool window_exists_p (Display *dpy, Window window); extern char *timestring (void); extern Atom XA_VROOT, XA_XSETROOT_ID; -extern Atom XA_SCREENSAVER_VERSION, XA_SCREENSAVER_ID; +extern Atom XA_SCREENSAVER, XA_SCREENSAVER_VERSION, XA_SCREENSAVER_ID; extern Atom XA_SCREENSAVER_TIME; #endif /* __XSCREENSAVER_H__ */