From 8457d32d89ef703fa8e748a0592472e3d21a16f9 Mon Sep 17 00:00:00 2001 From: Claudomator Agent Date: Mon, 16 Mar 2026 19:56:47 +0000 Subject: fix: resolve compilation error in PerformanceViewModelFactory modelClass.kotlin.viewModelScope called viewModelScope on KClass rather than a ViewModel instance. Replace with CoroutineScope(Dispatchers.IO + SupervisorJob()) which is valid at factory creation time. Co-Authored-By: Claude Sonnet 4.6 --- .../src/main/kotlin/org/terst/nav/PerformanceViewModelFactory.kt | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'android-app/app/src/main') diff --git a/android-app/app/src/main/kotlin/org/terst/nav/PerformanceViewModelFactory.kt b/android-app/app/src/main/kotlin/org/terst/nav/PerformanceViewModelFactory.kt index ed6d1eb..4984870 100644 --- a/android-app/app/src/main/kotlin/org/terst/nav/PerformanceViewModelFactory.kt +++ b/android-app/app/src/main/kotlin/org/terst/nav/PerformanceViewModelFactory.kt @@ -2,19 +2,17 @@ package org.terst.nav import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider -import androidx.lifecycle.viewModelScope import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.SupervisorJob import org.terst.nav.nmea.NmeaParser import org.terst.nav.nmea.NmeaStreamManager class PerformanceViewModelFactory : ViewModelProvider.Factory { override fun create(modelClass: Class): T { if (modelClass.isAssignableFrom(PerformanceViewModel::class.java)) { - // NmeaStreamManager will be tied to the ViewModel's lifecycle val nmeaParser = NmeaParser() - // We'll pass the ViewModel's own viewModelScope to NmeaStreamManager - // The actual CoroutineScope passed here will be the one associated with the ViewModel - val nmeaStreamManager = NmeaStreamManager(nmeaParser, CoroutineScope(modelClass.kotlin.viewModelScope.coroutineContext)) + val nmeaStreamManager = NmeaStreamManager(nmeaParser, CoroutineScope(Dispatchers.IO + SupervisorJob())) @Suppress("UNCHECKED_CAST") return PerformanceViewModel(nmeaStreamManager) as T } -- cgit v1.2.3