idle.queryState()
Returns "locked"
if the system is locked, "idle"
if the user has not generated any input for a specified number of seconds, or "active"
otherwise.
This is an asynchronous function that returns a Promise
.
Syntax
var querying = browser.idle.queryState(
detectionIntervalInSeconds // integer
)
Parameters
Return value
A Promise
that will be fulfilled with an idle.IdleState
string, indicating the current state.
Browser compatibility
Report problems with this compatibility data on GitHubwebextensions-desktop | webextensions-mobile | |||||
---|---|---|---|---|---|---|
queryState | ChromeFull supportYes | EdgeFull support15 | FirefoxFull support45
| OperaFull supportYes | SafariNo supportNo | Firefox for AndroidFull support48
|
locked | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
Legend
- Full support
- Full support
- No support
- No support
- See implementation notes.
Examples
In this simple snippet, we call queryState()
and then check if the returned newState
is idle
or active
, logging a message as appropriate. Because we have specified a detectionIntervalInSeconds
of 15, an idle
state will only be reported if there has been no user activity for at least 15 seconds
function onGot(newState) {
if (newState === 'idle') {
console.log('Please come back — we miss you!');
} else if (newState === 'active') {
console.log('Glad to still have you with us!');
}
}
var querying = browser.idle.queryState(15);
querying.then(onGot);
This API is based on Chromium's chrome.idle
API. This documentation is derived from idle.json
in the Chromium code.
Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.