-
Notifications
You must be signed in to change notification settings - Fork 21
Add Liquid Glass effect for Karaoke view (macOS 26+) #159
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
base: main
Are you sure you want to change the base?
Conversation
|
Awesome. I'll give it a try. |
Remove preferred dark scheme for floating panel
|
Hmm... not a good fix... I generate the color to ensure legibility with white text. (the color I fetch from Spotify is also generated with the use case of having enough contrast against white text). Perhaps we can set a dark mode color scheme on whatever container is holding the NSGlassView? Not sure how to set that in AppKit |
then choose the larger one
let SwiftUI manage colors
|
No worries. I am not offended at all. 😄 And sorry for the late reply, I have edited the code locally and forgot to sync commits to GitHub 😅. I was working on rewriting the code in SwiftUI because it automatically manages the font/background colors. The current work, in my opinion, looks wonderful! CleanShot.2025-11-05.at.17.13.36.mp4When the transparency > 35%, the code forces the foregroundStyle to be white. Otherwise, it is adjusted by SwiftUI. I have committed the code; only KaraokeView.swift is modified. Currently, there is a drag when a small Karaoke window is expanded to a larger one, because of the default animation of the Liquid Glass (I am finding ways to disable it). Except that, no obvious bugs are observed. |
|
By the way, because I merged my old branch with your newest one, some other files have changed (to your newest code). I have only changed |
|
Lemme know if the new method works for you! |
|
Ahh I'm so sorry I haven't been able to review this in time! I graduate in a couple days. I'll take a look soon-ish! Sorry for the wait. |





If current system >= 26, use
NSGlassEffectView.Opacity = 0% (with comparison of

NSVisualEffectView):Opacity = 20%:

Opacity = 50%:
