frontend, plugins: Slideshow rework #13073
Open
+256
−178
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Rework for slideshow plugin with a lot of refactoring and changes as detailed below.
Settings
Stop button and Stop/Restart visibility behavior
Next/Prev button
Signaling changes
media_started/media_endedsignals if visibility behavior is stop/restart as does the respective media control actionsMotivation and Context
These are just my findings while working on other things.
A major issue was the not actually implemented Stop/Restart visibility behavior. Another is the subtle use of computing resources while the slideshow is not active/visible. The user might not realize the slideshow (maybe in another scene) is the source of that resource utilization. This stems from automatically rotating buffer of 11 slides that will repeatedly decode images from disk.
Slideshow' code is also in need of refactoring. Parts of it carry remnants older design and feels a bit of patchwork-y. I'm hoping this will make it easier to follow.
How Has This Been Tested?
Tested the changes by stopping, pausing, resuming, restarting and generally using the media controls. Tried switching the scenes while slideshow is in various states.
Types of changes
Checklist: