New Features:
Album art settings
- showAlbumArt - Toggle wallpaper on/off (default: false)
- albumArtBlurred - Toggle blur effect (default: true)
- albumArtBlurValue - Blur intensity 1-90, where lower = more blur (default: 15)
- albumArtOverlayAlpha - Darkness overlay 0-255 (default: 180)
New Functions:
- drawImage() - Handles image scaling and drawing (from JS Smooth Playlist)
- draw_blurred_image() - Creates the blur effect by downscaling/upscaling
- formatAlbumArt() - Resizes album art to fit window and applies blur
- seAlbumArt() - Gets current playing track's album art and formats it
3. Updated on_paint():
Now draws the wallpaper as background when enabled, otherwise uses your normal background color.
4. New Menu Options (cases 15-18):
- Show Album Art - Toggle wallpaper on/off (✓ checkmark when active)
- Blur Album Art - Toggle blur effect (disabled if wallpaper is off)
- Set Blur Amount - Adjust blur intensity (1-90)
- Set Overlay Darkness - Adjust dark overlay (0-255)
5. Playback Callbacks:
- on_playback_new_track() - Updates wallpaper when song changes
- on_playback_stop() - Clears wallpaper when playback stops
- on_playback_starting()`- Sets wallpaper when playback starts
Complete Changes:
- Removed all old functions - No more
coverKeyPrefixorcoverKeyForName() - Single JSON storage - All custom covers stored in
SMP_CustomCovers_JSON - Automatic cleanup - Deleted playlists are automatically removed from the JSON object
More QoL features:'
- Double-click any playlist cover → plays a random song from that playlist
- Sets that playlist as the active playlist
- If the playlist is empty, shows a message
- on_mouse_lbtn_dblclk(x, y) - New double-click handler
- Uses Math.random() to select a random track index
- plman.ExecutePlaylistDefaultAction(idx, randomTrack) - Plays the selected track
- Updates the selected playlist visually
User Experience:
-
Single click - Selects/switches to the playlist (current behavior)
-
Double click - Plays a random song from that playlist
-
Removed unused functions
-
General renaming to panel properties to enhance readability.