-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Describe the bug
Brought up in Issue StreamController/StreamController#169
When using the media plugin from the StreamController Store, having no active media present (playing or paused, does not matter) will cause errors and overall function with StreamController.
Buttons that don't even have media plugin actions on them will also be affected. The actions will still work, but the image rendering of said icon will fail.
If buttons are all blank from initial page render, and then media is brought in; icons will still not render. Changing pages to force an update does not seem to fix this either. Using the play / pause however will cause it render when active media is introduced.
Media players being stuff like:
Browser (I am personally using Vivaldi) and playing YouTube
Spotify (Music Streaming)
Strawberry or SwingMusic (for local audio files)
I don't believe this is a StreamDeck+ issue, and will also affect the other StreamDeck hardware (minus the foot-petal)
I want to throw in that StreamController will just crash either open or in background at times. I'm wondering if these errors can potentially lead to that? Though I don't have a 100% way to replicate the crashing, so take this last part with a grain of salt.
Steps to reproduce the behavior:
This happens on new instances of StreamController, and can be replicated both via systemboot (if option is selected), or by terminating the background process and re-opening.
-
Terminate StreamController and it's background process (I personally use Btop)
-
Having applications that play media that also include media controls be closed. (that can be used with media keyboard hotkeys, widgets, apis)
- Having an application (like browser or media player) open without media selected
Ex: Having browser on Google homepage does not need to be closed.
Ex2: Having Strawberry open with a clear playlist will not be considered media and will still cause said issue
- Having an application (like browser or media player) open without media selected
-
Open a new instance of StreamController, either from it's desktop shortcut or via terminal with:
$ flatpak run com.core447.StreamController
- Now have user swap to a page with the media plugin binded to buttons
Expected behavior
I don't entirely know the expected behavior.
I've noticed that when no media is present, the play / pause button doesn't render. This seems to be expected
behavior?
However when no active media is present, the next track & previous track button still seem to render?
I'd prefer if instead we did something like KDE Plasma media widget? Where when no active media is happening, to just render a STOP square?
Media not present

Media present

What I expect would icons to still render. For it to not halt the other icons that aren't even associated with media plugin to render. For errors to not show within the console output.
Screenshots
This is what StreamController is showing

When the physical deck will also render (no desync).
Note: My volume knobs don't render, even though they aren't part of the media plugin

Here's how my "media" page on my deck is setup and supposed to look:







Additional context
Logs for this can be found here
900 lines would bloat this issue
My Linux system outputted from Fastfetch via Konsole:

If an active media was present on initial page render, then the icons will render.
However once an active media is no longer present, icons will still show but continue to throw errors within the console.
- Basically redo steps, but have an active media that is paused, open new instance of StreamController, and swipe to media page
Metadata
Metadata
Assignees
Labels
Type
Projects
Status