MidnightJava
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-05-2011
08:10 AM
Can I make the screensaver run immediately?
I'm developing a screensaver script, and every time I test I have to wait five minutes for the screensaver to activate, because that's the lowest value available in the screensaver settings menu. Is there a way to make the screen saver come on much quicker? This is a very inconvenient way to develop.
3 REPLIES 3

TheEndless
Channel Surfer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-05-2011
10:09 AM
Re: Can I make the screensaver run immediately?
Unless you specifically need it to run in a separate thread while the main app runs (i.e., to get data from the main app that's not available otherwise), why not just call RunScreensaver() directly from Main()/RunUserInterface()?
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
MidnightJava
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-05-2011
06:32 PM
Re: Can I make the screensaver run immediately?
Thanks, I should have thought of that. And actually, running in the main thread solved a vexing problem I was having. It looked like the screensaver was failing to launch. However I was getting a black screen instead of the default screensaver (roku logo), and no debug statements were printing, even when placed as the first line in RunScreenSaver().
So when I ran the screensaver from the main thread, I saw that in fact there's a bug in one of the functions in the sample code that comes with the SDK (libScreensaver.brs#screensaverLib_CornerLocations) and when RunScreenSaver() is called from the platform it apparently swallows all the output and fails silently. I don't know if this is a problem or a feature, but it sure had me scratching my head until I ran the screensaver from the main thread and the debugger finally started talking to me.
So when I ran the screensaver from the main thread, I saw that in fact there's a bug in one of the functions in the sample code that comes with the SDK (libScreensaver.brs#screensaverLib_CornerLocations) and when RunScreenSaver() is called from the platform it apparently swallows all the output and fails silently. I don't know if this is a problem or a feature, but it sure had me scratching my head until I ran the screensaver from the main thread and the debugger finally started talking to me.

TheEndless
Channel Surfer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-05-2011
09:02 PM
Re: Can I make the screensaver run immediately?
The screensaver thread can be debugged on port 8087 instead of 8085.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)