Replace @Published var currentTime/duration with plain vars and drive progress bars via TimelineView(.periodic) instead of SwiftUI observation. This stops objectWillChange from firing 20x/second on AudioPlayer, eliminating continuous body re-evaluation on NowPlayingView, MiniPlayerBar, and MyMusicView regardless of visualizer state. |
||
|---|---|---|
| .. | ||
| Common | ||
| Companion | ||
| Library | ||
| Login | ||
| NowPlaying | ||
| Visualizer | ||