Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Respect system light/dark appearance #666

Closed
2 tasks done
NilsEnevoldsen opened this issue Oct 8, 2019 · 3 comments
Closed
2 tasks done

Respect system light/dark appearance #666

NilsEnevoldsen opened this issue Oct 8, 2019 · 3 comments

Comments

@NilsEnevoldsen
Copy link
Contributor

NilsEnevoldsen commented Oct 8, 2019

Feature request

  • I understand the difference between Streamlink and Streamlink Twitch GUI.
  • This is a feature request and I have read the contribution guidelines.

Description

Now that macOS Catalina has been released with automatic switching between system light appearance and dark appearance, it is more important for apps to automatically follow the system appearance, as there will now be a large number of users who no longer "set it and forget it", but instead have their system appearance change automatically based on the time of day. I believe Windows also has a system appearance for apps to follow.

I imagine this would take the form of a third Streamlink Twitch GUI theme option: change the options from Default/Dark to Auto/Light/Dark with Auto as the default for new installations.

I believe nwjs/nw.js#6819 is the associated nw.js issue. See https://electronjs.org/docs/tutorial/mojave-dark-mode-guide for an example of how it works in Electron.

@bastimeyer
Copy link
Member

bastimeyer commented Oct 8, 2019

I've already implemented this in early August in 5d06774 (see the v1.8.0 changelog) but had to revert it in 15a0e9e because NW.js 0.40, which added support for it (with Chromium 76), was crashing on Windows when the window badge label for showing the number of followed streams was set. I didn't notice the crashes when I published v1.8.0, because I was not logged in and no badge label was set when I tested the NW.js bump in my Windows VMs. As a result of this, I had to downgrade the used NW.js version in the v1.8.1 release to 0.39.3 and revert the automatic theme switching. I also didn't know what exactly caused the crashes, so all I could do was open an issue on the NW.js bug tracker with a crash dump, but this didn't seem to be enough information. The issue however has been found last week and it got fixed three days ago (nwjs/nw.js@f27c5a0), but there's no new NW.js release yet (will be 0.41.3), so I will have to wait for it until I can bump the version here and re-implement the automatic theme switcher.
https://nwjs.io/blog/

@NilsEnevoldsen
Copy link
Contributor Author

Thanks for the explanation! I searched the issues, but didn’t think to search the change log. 😀

@bastimeyer
Copy link
Member

NW.js 0.41.3 has been released today with the necessary bugfix.

I've pushed the nwjs-41 branch with a re-implementation of the ThemeService that checks for the light/dark system theme configuration.
https://github.com/streamlink/streamlink-twitch-gui/commits/nwjs-41

It'll be merged into master once I've found the time to make sure that this new NW.js version is working correctly (tomorrow I think). I just want to be extra careful with these release bumps now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants