This PR moves the entire project to Typescript. Due to the ~1000 ignores this will lead to a messy codebase for a while, but the churn is worth it – all of those ignore comments are places that were never type-safe previously. closes #1282
24 lines
622 B
TypeScript
24 lines
622 B
TypeScript
let hidden = "hidden";
|
|
let visibilityChange = "visibilitychange";
|
|
|
|
if ("hidden" in document) {
|
|
hidden = "hidden";
|
|
visibilityChange = "visibilitychange";
|
|
} else if ("mozHidden" in document) {
|
|
// Firefox up to v17
|
|
hidden = "mozHidden";
|
|
visibilityChange = "mozvisibilitychange";
|
|
} else if ("webkitHidden" in document) {
|
|
// Chrome up to v32, Android up to v4.4, Blackberry up to v10
|
|
hidden = "webkitHidden";
|
|
visibilityChange = "webkitvisibilitychange";
|
|
}
|
|
|
|
export function getVisibilityListener(): string {
|
|
return visibilityChange;
|
|
}
|
|
|
|
export function getPageVisible(): boolean {
|
|
return !document[hidden];
|
|
}
|