Methods

(static) OnScreenShown() → {void}

Returns:
Type: 
void

(static) createSubtitleDividerNode() → {object}

Returns:
Type: 
object

(static) createSubtitleLabelNode(labelId) → {object}

Parameters:
NameTypeDescription
labelIdstring
Returns:
Type: 
object

(static) destroy() → {void}

destroy: Full teardown releasing all resources before component removal Called by VideoPlayerView.destroy() since OSD is a child component, not a SceneManager scene

Returns:
Type: 
void

(static) displaySubtitleNode(node) → {void}

Parameters:
NameTypeDescription
nodeobject
Returns:
Type: 
void

(static) inactiveCheck() → {void}

inactiveCheck: Checks if the time since last keypress is greater than or equal to the allowed inactive time of the menu.

Returns:
Type: 
void

(static) init() → {void}

Returns:
Type: 
void

(static) onButtonSelected() → {void}

Returns:
Type: 
void

(static) onFocusChanged() → {void}

Returns:
Type: 
void

(static) onItemDataChanged() → {void}

onItemDataChanged: Reads typed fields from JellyfinBaseItem node and populates OSD display.

Replaces the old JSON-parsing setFields(). The item node is immutable - all metadata is read directly from typed fields (item.type, item.name, item.communityRating, etc.)

Content Type Detection (isMovie/isSeries): These flags determine which user settings control ratings display:

  • isMovie=true: Uses uiMoviesShowRatings setting
  • isSeries=true: Uses uiTvShowsDisableCommunityRating setting

Detection Priority (applied in order):

  1. API flags: Uses isMovie/isSeries from JellyfinBaseItem if provided
  2. Flag validation: Ensures mutual exclusivity (both cannot be true)
  3. Type-based: Recording types always classified as series content
  4. Metadata heuristic: Presence of seriesName/parentIndexNumber indicates series
  5. Default fallback: Assumes movie content if no other indicators
Returns:
Type: 
void

(static) onKeyEvent(key, press) → {boolean}

Parameters:
NameTypeDescription
keystring
pressboolean
Returns:
Type: 
boolean

(static) onPlaybackStateChanged() → {void}

Returns:
Type: 
void

(static) onProgressPercentageChanged() → {void}

Returns:
Type: 
void

(static) onVisibleChanged() → {void}

Returns:
Type: 
void

(static) populateData() → {void}

Returns:
Type: 
void

(static) resetFocusToDefaultButton() → {void}

Returns:
Type: 
void

(static) setButtonStates() → {void}

setButtonStates: Disable previous/next buttons if needed and remove any other unneeded buttons

Returns:
Type: 
void

(static) setEndsAtText() → {void}

Returns:
Type: 
void

(static) setVideoLogoGroup() → {void}

Returns:
Type: 
void

(static) setVideoSubTitle() → {void}

Returns:
Type: 
void

(static) setVideoTitle() → {void}

Returns:
Type: 
void