Usage
import { useScreenSleep } from 'node-fullykiosk';
function App() {
const { isScreenOn, turnOff, turnOn } = useScreenSleep({
screenOff: () => console.log('Screen turned off'),
screenOn: () => console.log('Screen turned on'),
});
return (
<div>
<p>Screen is {isScreenOn ? 'on' : 'off'}</p>
<button onClick={turnOff}>Turn Off</button>
<button onClick={turnOn}>Turn On</button>
</div>
);
}
Parameters
Configuration object for screen sleep callbacks.
Callback function invoked when the screen turns off.
Callback function invoked when the screen turns on.
Return Value
Returns an object with the following properties:
Indicates whether the screen is currently on. Returns false if not running in Fully Kiosk Browser.
Function to turn the screen off.
Function to turn the screen on.
Function to force the device into sleep mode.
Function to start the screensaver.
Function to stop the screensaver.
Function to start the Android Daydream (screensaver).
Function to stop the Android Daydream.
Examples
Screen Power Controls
import { useScreenSleep } from 'node-fullykiosk';
function ScreenControls() {
const { isScreenOn, turnOff, turnOn, forceSleep } = useScreenSleep();
return (
<div>
<p>Screen Status: {isScreenOn ? 'On' : 'Off'}</p>
<button onClick={turnOff}>Turn Off Screen</button>
<button onClick={turnOn}>Turn On Screen</button>
<button onClick={forceSleep}>Force Sleep</button>
</div>
);
}
Screensaver Management
import { useScreenSleep } from 'node-fullykiosk';
function ScreensaverControls() {
const { startScreensaver, stopScreensaver } = useScreenSleep();
return (
<div>
<button onClick={startScreensaver}>Start Screensaver</button>
<button onClick={stopScreensaver}>Stop Screensaver</button>
</div>
);
}
Screen Event Monitoring
import { useScreenSleep } from 'node-fullykiosk';
import { useState } from 'react';
function ScreenMonitor() {
const [events, setEvents] = useState<string[]>([]);
const { isScreenOn } = useScreenSleep({
screenOn: () => {
setEvents(prev => [...prev, `Screen turned on at ${new Date().toLocaleTimeString()}`]);
},
screenOff: () => {
setEvents(prev => [...prev, `Screen turned off at ${new Date().toLocaleTimeString()}`]);
},
});
return (
<div>
<p>Current state: {isScreenOn ? 'On' : 'Off'}</p>
<h3>Event Log:</h3>
<ul>
{events.map((event, i) => (
<li key={i}>{event}</li>
))}
</ul>
</div>
);
}