else
{
maybe_reload_init_file (si);
- if (p->verbose_p)
- fprintf (stderr, "%s: changing graphics hacks.\n", blurb());
kill_screenhack (si);
if (!si->throttled_p)
}
}
- si->cycle_id = XtAppAddTimeOut (si->app, how_long, cycle_timer,
- (XtPointer) si);
+ if (how_long > 0)
+ {
+ si->cycle_id = XtAppAddTimeOut (si->app, how_long, cycle_timer,
+ (XtPointer) si);
-#ifdef DEBUG_TIMERS
- if (p->verbose_p)
- fprintf (stderr, "%s: starting cycle_timer (%ld, %ld)\n",
- blurb(), how_long, si->cycle_id);
-#endif /* DEBUG_TIMERS */
+# ifdef DEBUG_TIMERS
+ if (p->verbose_p)
+ fprintf (stderr, "%s: starting cycle_timer (%ld, %ld)\n",
+ blurb(), how_long, si->cycle_id);
+# endif /* DEBUG_TIMERS */
+ }
+# ifdef DEBUG_TIMERS
+ else
+ {
+ if (p->verbose_p)
+ fprintf (stderr, "%s: not starting cycle_timer: how_long == %d\n",
+ blurb(), how_long);
+ }
+# endif /* DEBUG_TIMERS */
}
/* Call this when user activity (or "simulated" activity) has been noticed.
*/
-static void
+void
reset_timers (saver_info *si)
{
saver_preferences *p = &si->prefs;
else
fprintf (stderr, "%s: pointer moved at %s on screen %d.\n",
blurb(), timestring(), i);
+
+# if 0
+ fprintf (stderr, "%s: old: %d %d 0x%x ; new: %d %d 0x%x\n",
+ blurb(),
+ ssi->poll_mouse_last_root_x,
+ ssi->poll_mouse_last_root_y,
+ (unsigned int) ssi->poll_mouse_last_child,
+ root_x, root_y, (unsigned int) child);
+# endif /* 0 */
+
#endif /* DEBUG_TIMERS */
si->last_activity_screen = ssi;
if (event.xany.type == KeyPress)
{
char s[2];
- int size = XLookupString (&event, s, 1, 0, 0);
+ int size = XLookupString ((XKeyEvent *) &event, s, 1, 0, 0);
if (size != 1) continue;
switch (*s)
{
watchdog_timer (XtPointer closure, XtIntervalId *id)
{
saver_info *si = (saver_info *) closure;
+ saver_preferences *p = &si->prefs;
disable_builtin_screensaver (si, False);
+ /* If the DPMS settings on the server have changed, change them back to
+ what ~/.xscreensaver says they should be. */
+ sync_server_dpms_settings (si->dpy, p->dpms_enabled_p,
+ p->dpms_standby / 1000,
+ p->dpms_suspend / 1000,
+ p->dpms_off / 1000,
+ False);
+
if (si->screen_blanked_p)
{
Bool running_p = screenhack_running_p (si);
raise_window (si, True, True, running_p);
}
- if (!monitor_powered_on_p (si))
+ if (screenhack_running_p (si) &&
+ !monitor_powered_on_p (si))
{
if (si->prefs.verbose_p)
fprintf (stderr,
- "%s: server reports that monitor has powered down; "
+ "%s: X says monitor has powered down; "
"killing running hacks.\n", blurb());
kill_screenhack (si);
}