Date: 28 Jan 1998 22:08:32 +0100 From: dag-erli@ifi.uio.no (Dag-Erling Coidan Smørgrav) To: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp> Cc: hackers@FreeBSD.ORG, msmith@FreeBSD.ORG Subject: Re: Graphical screen saver Message-ID: <xzpiur4488f.fsf@hrotti.ifi.uio.no> In-Reply-To: Kazutaka YOKOTA's message of "Wed, 28 Jan 1998 15:40:35 %2B0900" References: <xzpyb01it8y.fsf@grjottunagard.ifi.uio.no> <199801280640.PAA25860@zodiac.mech.utsunomiya-u.ac.jp>
next in thread | previous in thread | raw e-mail | index | archive | help
Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp> writes: > We have to be careful about VT switching while the graphical saver > is active. I will check several things in syscons and contact you > later. (I suspect we need to patch syscons...) I patched my syscons to always stop the screensaver before switching. I can't see *any* reason why we should want to keep the screensaver running during a switch. I can see several reasons why we should *not* want that. The following diff is relative to the -stable version of syscons.c (unless it has changed very recently): *** syscons.c.orig Tue Jan 27 16:49:04 1998 --- syscons.c Wed Jan 28 22:07:13 1998 *************** *** 2187,2192 **** --- 2187,2197 ---- scintr(0); } + /* should we stop the screen saver? */ + if (mono_time.tv_sec <= scrn_time_stamp + scrn_blank_time) + if (scrn_blanked > 0) + stop_scrn_saver(current_saver); + /* should we just return ? */ if ((scp->status&UNKNOWN_MODE) || blink_in_progress || switch_in_progress) { timeout(scrn_timer, NULL, hz / 10); *************** *** 2194,2204 **** return; } - /* should we stop the screen saver? */ - if (mono_time.tv_sec <= scrn_time_stamp + scrn_blank_time) - if (scrn_blanked > 0) - stop_scrn_saver(current_saver); - if (scrn_blanked <= 0) { /* update screen image */ if (scp->start <= scp->end) { --- 2199,2204 ---- *************** *** 2320,2325 **** --- 2320,2328 ---- static int switch_scr(scr_stat *scp, u_int next_scr) { + if (scrn_blanked > 0) + stop_scrn_saver(current_saver); + if (switch_in_progress && (cur_console->proc != pfind(cur_console->pid))) switch_in_progress = FALSE; -- * Finrod (INTJ) * Unix weenie * dag-erli@ifi.uio.no * cellular +47-92835919 * RFC1123: "Be liberal in what you accept, and conservative in what you send"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?xzpiur4488f.fsf>