Update API docs

This commit is contained in:
jellyfin-bot 2023-11-12 18:13:07 +00:00
parent 1037fe01eb
commit 04dd79a9e0
7 changed files with 47 additions and 13 deletions

View File

@ -167,7 +167,7 @@ sub audioPositionChanged()
' Update displayed position timestamp
if isValid(m.global.audioPlayer.position)
m.positionTimestamp.text = secondsToHuman(m.global.audioPlayer.position)
m.positionTimestamp.text = secondsToHuman(m.global.audioPlayer.position, false)
else
m.positionTimestamp.text = "0:00"
end if

View File

@ -9,9 +9,14 @@ sub init()
m.inactivityTimer = m.top.findNode("inactivityTimer")
m.itemTitle = m.top.findNode("itemTitle")
m.videoPlayPause = m.top.findNode("videoPlayPause")
m.videoPositionTime = m.top.findNode("videoPositionTime")
m.videoRemainingTime = m.top.findNode("videoRemainingTime")
m.progressBar = m.top.findNode("progressBar")
m.progressBarBackground = m.top.findNode("progressBarBackground")
m.top.observeField("visible", "onVisibleChanged")
m.top.observeField("hasFocus", "onFocusChanged")
m.top.observeField("progressPercentage", "onProgressPercentageChanged")
m.top.observeField("playbackState", "onPlaybackStateChanged")
m.top.observeField("itemTitleText", "onItemTitleTextChanged")
@ -25,6 +30,14 @@ sub init()
m.deviceInfo = CreateObject("roDeviceInfo")
end sub
' onProgressPercentageChanged: Handler for changes to m.top.progressPercentage param
'
sub onProgressPercentageChanged()
m.videoPositionTime.text = secondsToHuman(m.top.positionTime, true)
m.videoRemainingTime.text = secondsToHuman(m.top.remainingPositionTime, true)
m.progressBar.width = m.progressBarBackground.width * m.top.progressPercentage
end sub
' onPlaybackStateChanged: Handler for changes to m.top.playbackState param
'
sub onPlaybackStateChanged()

View File

@ -439,6 +439,12 @@ end sub
' When Video Player state changes
sub onPositionChanged()
' Pass video position data into pause menu
m.pauseMenu.progressPercentage = m.top.position / m.top.duration
m.pauseMenu.positionTime = m.top.position
m.pauseMenu.remainingPositionTime = m.top.duration - m.top.position
if isValid(m.captionTask)
m.captionTask.currentPos = Int(m.top.position * 1000)
end if
@ -614,7 +620,7 @@ function onKeyEvent(key as string, press as boolean) as boolean
if not press then return false
if key = "down"
if key = "down" and not m.top.trickPlayBar.visible
if not m.LoadMetaDataTask.isIntro
m.pauseMenu.visible = true
m.pauseMenu.hasFocus = true
@ -622,7 +628,7 @@ function onKeyEvent(key as string, press as boolean) as boolean
return true
end if
else if key = "up"
else if key = "up" and not m.top.trickPlayBar.visible
if not m.LoadMetaDataTask.isIntro
m.pauseMenu.visible = true
m.pauseMenu.hasFocus = true

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -45,16 +45,31 @@ function ticksToHuman(ticks as longinteger) as string
return r
end function
function secondsToHuman(totalSeconds as integer) as string
function secondsToHuman(totalSeconds as integer, addLeadingMinuteZero as boolean) as string
humanTime = ""
hours = stri(int(totalSeconds / 3600)).trim()
minutes = stri(int((totalSeconds - (val(hours) * 3600)) / 60)).trim()
seconds = stri(totalSeconds - (val(hours) * 3600) - (val(minutes) * 60)).trim()
if val(hours) > 0 and val(minutes) < 10 then minutes = "0" + minutes
if val(seconds) < 10 then seconds = "0" + seconds
r = ""
if val(hours) > 0 then r = hours + ":"
r = r + minutes + ":" + seconds
return r
if val(hours) > 0 or addLeadingMinuteZero
if val(minutes) < 10
minutes = "0" + minutes
end if
end if
if val(seconds) < 10
seconds = "0" + seconds
end if
if val(hours) > 0
hours = hours + ":"
else
hours = ""
end if
humanTime = hours + minutes + ":" + seconds
return humanTime
end function
' Format time as 12 or 24 hour format based on system clock setting