Methods

(static) init() → {void}

Returns:
Type: 
void

(static) isDialogOpen() → {boolean}

Is ANY dialog currently on screen? Callers use this to hold off on something that would interfere — the OSD's inactivity auto-hide, the player's end-of-playback teardown.

There are TWO channels and this must answer for both. It used to check only Roku's modal channel, so it began silently returning false for every dialog in the app when the JRDialog family moved to scene-appended overlays. The OSD read that false and hid itself out from under an open dialog, taking focus with it — the dialog stayed on screen but deaf, and Back fell through to the player.

Returns:
Type: 
boolean

(static) refreshThemeColors() → {void}

Refresh theme colors on JRScene and overhang. Called after theme color settings change (settings exit, login, logout). Uses refreshThemeOnTree() to walk the overhang's node tree and update all themed elements (labels, buttons, icons) in place — no component recreation or per-component refresh functions needed.

Returns:
Type: 
void

(static) reloadHome() → {void}

Signal that home screen should be reloaded (used after theme color changes) Main.bs observes reloadHomeRequested field and handles the actual reload

Returns:
Type: 
void

(static) resetTime() → {void}

Reset time

Returns:
Type: 
void

(static) setBackgroundImage(uri, isAnimatedopt, forceBackdropopt) → {void}

Set the background image

Parameters:
NameTypeAttributesDefaultDescription
uristring

The image URI to display

isAnimatedboolean<optional>
true

Whether to animate the transition

forceBackdropboolean<optional>
false

Force show backdrop regardless of user setting (used for login splashscreen)

Returns:
Type: 
void

(static) updateUser() → {void}

Update username in overhang

Returns:
Type: 
void