From 38043b33c8d382ffeed3d9e74de63d913356672b Mon Sep 17 00:00:00 2001 From: Autli Date: Tue, 6 Oct 2026 14:52:17 +0500 Subject: [PATCH] fix: robust connected device resolution and aggressive process restart --- Sources/blts_tracker/BLTSTrackerApp.swift | 5 +++-- install.sh | 8 +++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Sources/blts_tracker/BLTSTrackerApp.swift b/Sources/blts_tracker/BLTSTrackerApp.swift index 2726d33..2185098 100644 --- a/Sources/blts_tracker/BLTSTrackerApp.swift +++ b/Sources/blts_tracker/BLTSTrackerApp.swift @@ -79,7 +79,8 @@ final class AppDelegate: NSObject, NSApplicationDelegate { return } - let active = tracker.activeHeadphone + // Find best active device (either marked active or any connected device with battery data) + let active = tracker.activeHeadphone ?? tracker.devices.first(where: { $0.isConnected && $0.primaryBatteryPercent != nil }) let isConn = active?.isConnected == true let percent = active?.primaryBatteryPercent @@ -95,7 +96,7 @@ final class AppDelegate: NSObject, NSApplicationDelegate { private func setupMenu() { let menu = NSMenu() - let active = tracker.activeHeadphone + let active = tracker.activeHeadphone ?? tracker.devices.first(where: { $0.isConnected && $0.primaryBatteryPercent != nil }) if let dev = active, dev.isConnected { let percentStr = dev.primaryBatteryPercent != nil ? "\(dev.primaryBatteryPercent!)%" : "Подключено" let titleItem = NSMenuItem(title: "🎧 \(dev.name): \(percentStr)", action: nil, keyEquivalent: "") diff --git a/install.sh b/install.sh index b863d2e..48479f4 100755 --- a/install.sh +++ b/install.sh @@ -5,8 +5,10 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" APP_NAME="BLTS Tracker.app" SOURCE_APP="$DIR/$APP_NAME" -echo "🛑 Завершение запущенных копий..." -killall blts_tracker 2>/dev/null || true +echo "🛑 Завершение всех запущенных копий..." +killall -9 blts_tracker 2>/dev/null || true +pkill -9 -f "BLTS Tracker" 2>/dev/null || true +pkill -9 -f "blts_tracker" 2>/dev/null || true sleep 1 echo "🔨 Сборка приложения..." @@ -29,4 +31,4 @@ osascript -e "tell application \"System Events\" to make login item at end with echo "🚀 Запуск $TARGET_APP..." open "$TARGET_APP" -echo "✅ Готово! BLTS Tracker обновлен." +echo "✅ Готово! BLTS Tracker обновлен и запущен."