Home | History | Annotate | Download | only in browser
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "chrome/browser/idle.h"
      6 
      7 #include "ash/session/session_state_delegate.h"
      8 #include "ash/shell.h"
      9 #include "base/time/time.h"
     10 #include "ui/wm/core/user_activity_detector.h"
     11 
     12 void CalculateIdleTime(IdleTimeCallback notify) {
     13 #if defined(USE_ATHENA)
     14   // TODO(oshima): Implement this for athena. crbug.com/408752
     15   base::TimeDelta idle_time;
     16   NOTIMPLEMENTED();
     17 #else
     18   base::TimeDelta idle_time = base::TimeTicks::Now() -
     19       ash::Shell::GetInstance()->user_activity_detector()->last_activity_time();
     20 #endif
     21   notify.Run(static_cast<int>(idle_time.InSeconds()));
     22 }
     23 
     24 bool CheckIdleStateIsLocked() {
     25 #if defined(USE_ATHENA)
     26   return false;
     27 #else
     28   return ash::Shell::GetInstance()->session_state_delegate()->IsScreenLocked();
     29 #endif
     30 }
     31