github alxndlk/wallper-app 1.6.2

9 hours ago

Wallper v1.6.2

Performance (major) & Polish

Performance

CPU Optimization

  • Mesh gradient timer reduced from 30 fps to 20 fps — visually identical, 33% less CPU
  • Removed per-frame GradientTheme allocation — colors computed directly without intermediate struct
  • Cached blended colors in MusicThemeHolder — no heap allocations when not transitioning between tracks
  • Replaced global + local NSEvent monitors with direct NSEvent.mouseLocation polling in the existing timer — zero additional callbacks

Fullscreen Detection

  • Replaced 2-second CGWindowListCopyWindowInfo polling with workspace notifications (didActivateApplication, activeSpaceDidChange)
  • Fullscreen check now triggers only on app switch, not continuously

Settings Observer

  • Replaced broad UserDefaults.didChangeNotification with KVO on 7 specific keys
  • Previously fired on every UserDefaults write system-wide — now only on actual setting changes

Video Rendering

  • Removed shouldRasterize from AVPlayerLayer quality reduction — was creating unnecessary VRAM bitmap cache per screen
  • Quality scaling now uses contentsScale directly, letting preferredMaximumResolution handle the decoder side

Bug Fixes

Lockscreen Restore on Music Pause

  • Fixed lockscreen not reverting to the previous wallpaper when music is paused or stopped
  • Now restores both desktop wallpaper and lockscreen from the saved state

Smooth Mouse Tracking

  • Added lerp interpolation for cursor-reactive gradients — mesh follows mouse with smooth easing instead of snapping to position each tick

Don't miss a new wallper-app release

NewReleases is sending notifications on new releases.