package org.jellyfin.androidtv import android.content.Context import androidx.lifecycle.ProcessLifecycleOwner import androidx.lifecycle.lifecycleScope import androidx.startup.AppInitializer import androidx.startup.Initializer import kotlinx.coroutines.launch import org.jellyfin.androidtv.auth.repository.SessionRepository import org.jellyfin.androidtv.di.KoinInitializer @Suppress("unused") class SessionInitializer : Initializer { override fun create(context: Context) { val koin = AppInitializer.getInstance(context) .initializeComponent(KoinInitializer::class.java) .koin // Restore system session ProcessLifecycleOwner.get().lifecycleScope.launch { koin.get().restoreSession(destroyOnly = false) } } override fun dependencies() = listOf(KoinInitializer::class.java) }