mirror of
https://github.com/FBukovina/Atoll.git
synced 2026-10-27 07:04:32 +00:00
BluetoothAudioManager - Replace Timer.scheduledTimer polling with DispatchSourceTimer on a utility queue so main-thread back-pressure no longer stalls the 3s connect-detection cadence. - Distinguish "host controller unavailable" from "powered off" via a new bluetoothIsPoweredOn() helper, so transient IOBluetooth registry blips at launch no longer clear connectedDevices. - Re-read device metadata (name, type, battery) at +500ms and +2s after IOBluetoothDeviceConnectedNotification to catch IORegistry's late-population window; the existing HUD wait-task then updates the shown battery in place. - Declare BluetoothAudioDeviceType: Equatable to support the change-detection diff in the re-read pass. LockSoundPlayer - Add a 1.2s cross-type cooldown so a rapid lid close->open no longer plays lock-then-unlock chimes as a doubled sound (the per-type throttle never covered this case). - Bump per-type throttle 0.25s -> 0.6s. - Reset throttle state when enableLockSounds is toggled back on, so the first chime after re-enable is never suppressed by a stale timestamp. StatsManager - Shorten notchCloseStopDelay 3.0s -> 1.0s so the monitoring timer is invalidated sooner after the user closes the notch, freeing the main-thread tick budget for animation work. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| animations | ||
| Assets.xcassets | ||
| audio | ||
| BluetoothHUDAnimations | ||
| components | ||
| enums | ||
| extensions | ||
| helpers | ||
| managers | ||
| MediaControllers | ||
| menu | ||
| metal | ||
| models | ||
| observers | ||
| Preview Content/Preview Assets.xcassets | ||
| private | ||
| Providers | ||
| services/Extensions | ||
| Shortcuts | ||
| sizing | ||
| strings | ||
| tr.lproj | ||
| utils | ||
| audio-feedback.m4a | ||
| ContentView.swift | ||
| dynamic.m4a | ||
| DynamicIsland-Bridging-Header.h | ||
| DynamicIsland.entitlements | ||
| DynamicIslandApp.swift | ||
| DynamicIslandViewCoordinator.swift | ||
| Info.plist | ||
| Localizable.xcstrings | ||
| lock.mp3 | ||
| lowbattery.mp3 | ||
| timer.mp3 | ||
| unlock.mp3 | ||