Descrição
Use a API chrome.idle para detectar quando o estado de inatividade da máquina muda.
Permissões
idleManifesto
Você precisa declarar a permissão "idle" no manifesto da extensão para usar a API idle. Por exemplo:
{
  "name": "My extension",
  ...
  "permissions": [
    "idle"
  ],
  ...
}
Tipos
IdleState
Enumeração
"ativo" 
 
"idle" 
 
"locked" 
 
Métodos
getAutoLockDelay()
chrome.idle.getAutoLockDelay(
callback?: function,
): Promise<number>
Recebe o tempo, em segundos, até que a tela seja bloqueada automaticamente enquanto estiver inativa. Retorna uma duração zero se a tela nunca for bloqueada automaticamente. Atualmente, só há suporte no Chrome OS.
Parâmetros
- 
    callbackfunção opcional O parâmetro callbacktem esta aparência:(delay: number) => void - 
    delaynúmero Tempo, em segundos, até que a tela seja bloqueada automaticamente enquanto estiver inativa. É zero se a tela nunca for bloqueada automaticamente. 
 
- 
    
Retorna
- 
            Promise<number> Chrome 116 ou mais recenteAs promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks. 
queryState()
chrome.idle.queryState(
detectionIntervalInSeconds: number,
callback?: function,
): Promise<IdleState>
Retorna "locked" se o sistema estiver bloqueado, "idle" se o usuário não tiver gerado nenhuma entrada por um número especificado de segundos ou "active" caso contrário.
Parâmetros
- 
    detectionIntervalInSecondsnúmero O sistema é considerado inativo se detectionIntervalInSeconds segundos tiverem decorrido desde a última entrada do usuário detectada. 
- 
    callbackfunção opcional O parâmetro callbacktem esta aparência:(newState: IdleState) => void - 
    newState
 
- 
    
Retorna
- 
            Promise<IdleState> Chrome 116 ou mais recenteAs promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks. 
setDetectionInterval()
chrome.idle.setDetectionInterval(
intervalInSeconds: number,
): void
Define o intervalo, em segundos, usado para determinar quando o sistema está em estado ocioso para eventos onStateChanged. O intervalo padrão é de 60 segundos.
Parâmetros
- 
    intervalInSecondsnúmero Limite, em segundos, usado para determinar quando o sistema está inativo. 
Eventos
onStateChanged
chrome.idle.onStateChanged.addListener(
callback: function,
)
Disparado quando o sistema muda para um estado ativo, inativo ou bloqueado. O evento é acionado com "locked" se a tela estiver bloqueada ou o protetor de tela for ativado, "idle" se o sistema estiver desbloqueado e o usuário não tiver gerado nenhuma entrada por um número especificado de segundos e "active" quando o usuário gera entrada em um sistema inativo.