setKeepScreenOn method
Controls whether the screen should stay on (prevent sleeping).
Implementation
@override
Future<void> setKeepScreenOn(bool enabled) async {
if (enabled) {
try {
// Use .toDart to convert JSPromise to Future
final promise = web.window.navigator.wakeLock.request('screen');
_wakeLockSentinel = await promise.toDart;
} catch (e) {
web.console.warn('WakeLock not supported or failed: $e'.toJS);
}
} else {
if (_wakeLockSentinel != null) {
await _wakeLockSentinel!.release().toDart;
_wakeLockSentinel = null;
}
}
}