|
152 | 152 | resumeButton = m.top.findNode("resumeButton") |
153 | 153 |
|
154 | 154 | if isValid(item) and isValidAndNotEmpty(item.id) |
| 155 | + resumeText = getResumeButtonText(item) |
155 | 156 | if not isValid(resumeButton) |
156 | 157 | currentFocusIndex = m.buttonGrp.buttonFocused |
157 | 158 | currentFocusedButton = invalid |
|
162 | 163 | resumeButton = CreateObject("roSGNode", "ResumeButton") |
163 | 164 | resumeButton.id = "resumeButton" |
164 | 165 | resumeButton.icon = "pkg:/images/icons/resume.png" |
165 | | - resumeButton.text = tr("Resume") |
| 166 | + resumeButton.text = resumeText |
166 | 167 | resumeButton.playbackPositionTicks = item.playbackPositionTicks |
167 | 168 | resumeButton.runtimeTicks = item.runTimeTicks |
168 | 169 | m.buttonGrp.insertChild(resumeButton, 0) |
|
176 | 177 | end if |
177 | 178 | focusButtonGroupChild() |
178 | 179 | else |
179 | | - ' Resume button already present — update tick values |
| 180 | + ' Resume button already present — update text and tick values |
| 181 | + resumeButton.text = resumeText |
180 | 182 | resumeButton.playbackPositionTicks = item.playbackPositionTicks |
181 | 183 | resumeButton.runtimeTicks = item.runTimeTicks |
182 | 184 | end if |
|
185 | 187 | end if |
186 | 188 | end sub |
187 | 189 |
|
| 190 | +' getResumeButtonText: Return "Resume S{n}E{n}" when season and episode numbers are known, |
| 191 | +' otherwise fall back to plain "Resume". |
| 192 | +' @param {object} item - nextUpEpisode JellyfinBaseItem node |
| 193 | +' @return {string} Localised button label |
| 194 | +function getResumeButtonText(item as object) as string |
| 195 | + if item.parentIndexNumber > 0 and item.indexNumber > 0 |
| 196 | + return tr("Resume") + " S" + item.parentIndexNumber.toStr() + "E" + item.indexNumber.toStr() |
| 197 | + end if |
| 198 | + return tr("Resume") |
| 199 | +end function |
| 200 | + |
188 | 201 | ' manageResumeButton: Add or remove Resume button based on playback position (non-Series types) |
189 | 202 | sub manageResumeButton() |
190 | 203 | resumeButton = m.top.findNode("resumeButton") |
|
0 commit comments