Claude 40d5ed71b2 v0.9.5-9: CRITICAL fix - inactivity lockout now works (simplified)
CRITICAL FIX: Removed lockoutActivityTime reset from markActivity()
- markActivity() was resetting lockoutActivityTime on EVERY activity
- This prevented inactivity lockout from EVER triggering
- Now lockout timer only resets when user unlocks or selects extension

ROOT CAUSE:
The markActivity() function was resetting lockoutActivityTime (line 3904):
  if(enablePasswordProtection && lockoutTimeout > 0){
    lockoutActivityTime = now;  // ← PROBLEM
  }

markActivity() is called on EVERY:
- Mouse move
- Mouse click
- Keyboard press
- Page load
- Focus change

Result: lockoutActivityTime was CONSTANTLY being reset, so lockout could
NEVER reach the configured timeout (user reported 17 minutes wasn't working).

FIX:
Removed the lockoutActivityTime reset from markActivity() entirely (line 3908).

Now lockoutActivityTime only resets when:
1. User unlocks screen (unlockScreen() function)
2. User selects time extension (showPauseDialog/showInactivityPrompt)

This is the correct, simple behavior: lockout should trigger after X minutes
of inactivity, period. If user wants to extend, they can select an extension.

USER REPORT:
- Scheduled lockout works ✓ (lock at 15:00)
- Inactivity lockout doesn't work ✗ (lock after 17 min idle)
- This fix addresses the inactivity lockout issue

SIMPLIFIED: Removed unnecessary complexity added in v0.9.5-7 and v0.9.5-8.
The simple fix was just to stop resetting the timer on every activity.
2025-11-22 04:19:50 +00:00
S
Description
Mirror of outis1one/ubuntu-based-kiosk from GitHub
GPL-3.0
4.1 MiB
Languages
Shell 94.1%
JavaScript 4.7%
HTML 0.9%
CSS 0.3%