zachwinter / kaleidosync

A WebGL Spotify visualizer made with Vue, D3, and Three.js.
https://www.kaleidosync.com
807 stars 61 forks source link

Persist some user preferences #67

Closed r-Larch closed 2 years ago

r-Larch commented 2 years ago

Actually, all user preferences get lost on page reload.

This pull request adds a mechanism to persist user preferences to localStorage, sessionStorage or cookies.

Persisted user preferences:

Hope this pull request helps. Please reach out to me, if I should change something to be consistent with your code style.

The-RIPster commented 2 years ago

Thanks for trying. I tested on MAC OS with Safari, Chrome and Edge with private browsing modes and with Chrome I deleted all browsing data / cleared all caches and history. Tested full screen and windowed mode, tested changing preferences... there is no way to prevent the bottom bar from auto-hiding. Or actually there IS: if I leave the right-side config pane open, THEN they both stay on screen. That must mean there clearly are conditions where the auto-hide will not get executed but for some reason the slider switch has no effect on the behavior.

For me the problem is not saving preferences across sessions (although that would be super), but making the bottom bar (i.e. "now playing" -data) stay visible during current session.

Anyways, Kaleidosync has brought us a great booster for parties and music listening sessions so thanks for everything! :)

Technically I can make the bottom bar stay on screen using CLICLICK mouse automation utility to click the bottom left pixel of screen once per second (calling the utility in an AppleScript loop) but that's probably not a solution for everyone :D

r-Larch commented 2 years ago

Hi @The-RIPster,

I think this fix is not online yet.

The-RIPster commented 2 years ago

All right, thanks. I'll test and report in a couple weeks.

The-RIPster commented 1 year ago

P.S. To comment here (in addition to the issues-tab): no change so far unfortunately. Still, several enjoyable sessions using mouse automation to keep the bar in view :D