From 0d887c9ede626d1fc4135f3d4c31a9c3c74b8502 Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Wed, 21 Jun 2006 08:14:45 +0000 Subject: [PATCH] Cope with a lack of a KeyboardManager, base our idle check time on our minimum idle time. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4206 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- src/java/com/threerings/util/IdleTracker.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/java/com/threerings/util/IdleTracker.java b/src/java/com/threerings/util/IdleTracker.java index a3529246d..7c0b170fa 100644 --- a/src/java/com/threerings/util/IdleTracker.java +++ b/src/java/com/threerings/util/IdleTracker.java @@ -64,19 +64,22 @@ public abstract class IdleTracker } }, eventMask); - // and tie into the keyboard manager as well - keymgr.registerKeyObserver(new KeyboardManager.KeyObserver() { - public void handleKeyEvent (int id, int keyCode, long timestamp) { - handleUserActivity(); - } - }); + // and tie into the keyboard manager if one is provided + if (keymgr != null) { + keymgr.registerKeyObserver(new KeyboardManager.KeyObserver() { + public void handleKeyEvent ( + int id, int keyCode, long timestamp) { + handleUserActivity(); + } + }); + } // register an interval to periodically check our last activity time new Interval(rqueue) { public void expired () { checkIdle(); } - }.schedule(IDLE_INTERVAL, true); + }.schedule(_toIdleTime/3, true); } /** @@ -166,8 +169,5 @@ public abstract class IdleTracker protected long _lastEvent; /** Whether the user is currently active, idle or abandoned. */ - protected State _state; - - /** The delay in milliseconds between checks for user idle. */ - protected static final long IDLE_INTERVAL = 60L * 1000L; + protected State _state = State.ACTIVE; }