Google's "secure browsers" policy refuses OAuth inside any WKWebView
regardless of UA, so signing into Spotify with a Google-linked account
in the in-app sheet dead-ended on Google's "browser may be insecure"
page. Intercept navigations to accounts.google.com / accounts.youtube.com
in both decidePolicyFor and the createWebViewWith popup path, redirect
back to Spotify's login screen, and surface a status message pointing
users at email/password/Apple/Facebook sign-in or the existing
"Open in Browser" escape hatch for Google accounts. Update the sheet's
initial banner so the limitation is visible before the user tries it.
Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
Wraps accounts.spotify.com login in a WKWebView so users can sign in
without opening the browser inspector to copy the sp_dc cookie. The
sheet uses a non-persistent data store, observes the cookie store, and
hands the captured value to the existing SpotifyAuthManager.validate
flow on a match.
Spotify's anti-bot blocks the WebView path for some accounts, so this
sits alongside (not replaces) the manual paste field, with an "Open in
Browser" escape hatch in the sheet toolbar.
Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
Replace the transparent canvas-fallback panel background with a soft
ultra-thin dark scrim plus a gentle vertical gradient and hairline
stroke, and add a subtle drop shadow on the foreground so titles, time
labels, and controls stay readable on bright or busy canvas videos.
Restore consistent horizontal and vertical padding in canvas-fallback
mode so the marquee title and inline elapsed/remaining timers no longer
hug the panel edges.
Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
The lockscreen battery widget treated any plugged-in-but-not-charging
state as 'Fully charged'. macOS pauses charging for battery health
(e.g., optimized battery charging at 80%), so this misreported the
actual battery state.
Now 'Fully charged' shows only at 100% + plugged in; otherwise the
detail label reads '<level>% • On hold' (with a matching accessibility
string). Charging-in-progress and fully-charged states are unchanged.
The widget is too small to display both the title and countdown
comfortably. Replaced the title section with a spacer so the
controls and countdown spread out cleanly.
Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
Right-click on the album art in the lock screen music panel to set it
as the desktop wallpaper. Right-click again or click anywhere on the
background to restore the original wallpaper. Wallpaper also restores
automatically on track change or screen unlock.
Uses direct plist manipulation of the wallpaper config to avoid leaving
traces in the wallpaper picker. Album art PNG is pre-cached in the
background on track change for instant application.
Adds video artwork URL fetching from iTunes catalog for Apple Music
tracks (musicVideo entity search).
Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
fix: stabilize terminal notch open/close, focus, and opacity
Improve terminal tab behavior in notch by preventing hover re-open races, keeping outside-click close logic accurate, and reliably restoring terminal opacity/translucency after remounts. Also ensure terminal receives focus on open and resigns cleanly on close so keyboard input and close/open cycles behave consistently.
Open conference meetings directly via native app URL schemes instead of routing through the browser. Adds native scheme support for Zoom, Teams, FaceTime, and Discord with fallback to HTTPS.