Generalizes the dependencies from Application to Context
This commit is contained in:
+1
-1
@@ -34,7 +34,7 @@ import kotlinx.coroutines.flow.distinctUntilChanged
|
|||||||
import kotlinx.coroutines.flow.flowOn
|
import kotlinx.coroutines.flow.flowOn
|
||||||
|
|
||||||
class ConnectivityFlow(
|
class ConnectivityFlow(
|
||||||
val context: Context,
|
context: Context,
|
||||||
) {
|
) {
|
||||||
@OptIn(FlowPreview::class)
|
@OptIn(FlowPreview::class)
|
||||||
val status =
|
val status =
|
||||||
|
|||||||
+3
-3
@@ -20,7 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.service.connectivity
|
package com.vitorpamplona.amethyst.service.connectivity
|
||||||
|
|
||||||
import android.app.Application
|
import android.content.Context
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.flow.SharingStarted
|
import kotlinx.coroutines.flow.SharingStarted
|
||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
@@ -34,11 +34,11 @@ import kotlinx.coroutines.flow.stateIn
|
|||||||
* Tor will connect as soon as status is listened to.
|
* Tor will connect as soon as status is listened to.
|
||||||
*/
|
*/
|
||||||
class ConnectivityManager(
|
class ConnectivityManager(
|
||||||
app: Application,
|
context: Context,
|
||||||
scope: CoroutineScope,
|
scope: CoroutineScope,
|
||||||
) {
|
) {
|
||||||
val status: StateFlow<ConnectivityStatus> =
|
val status: StateFlow<ConnectivityStatus> =
|
||||||
ConnectivityFlow(app).status.distinctUntilChanged().stateIn(
|
ConnectivityFlow(context).status.distinctUntilChanged().stateIn(
|
||||||
scope,
|
scope,
|
||||||
SharingStarted.WhileSubscribed(30000),
|
SharingStarted.WhileSubscribed(30000),
|
||||||
ConnectivityStatus.Off,
|
ConnectivityStatus.Off,
|
||||||
|
|||||||
+3
-3
@@ -20,7 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.service.images
|
package com.vitorpamplona.amethyst.service.images
|
||||||
|
|
||||||
import android.app.Application
|
import android.content.Context
|
||||||
import coil3.disk.DiskCache
|
import coil3.disk.DiskCache
|
||||||
import coil3.memory.MemoryCache
|
import coil3.memory.MemoryCache
|
||||||
import com.vitorpamplona.amethyst.service.safeCacheDir
|
import com.vitorpamplona.amethyst.service.safeCacheDir
|
||||||
@@ -28,7 +28,7 @@ import okio.Path.Companion.toOkioPath
|
|||||||
|
|
||||||
class ImageCacheFactory {
|
class ImageCacheFactory {
|
||||||
companion object {
|
companion object {
|
||||||
fun newDisk(app: Application): DiskCache =
|
fun newDisk(app: Context): DiskCache =
|
||||||
DiskCache
|
DiskCache
|
||||||
.Builder()
|
.Builder()
|
||||||
.directory(app.safeCacheDir().resolve("image_cache").toOkioPath())
|
.directory(app.safeCacheDir().resolve("image_cache").toOkioPath())
|
||||||
@@ -36,7 +36,7 @@ class ImageCacheFactory {
|
|||||||
.maximumMaxSizeBytes(1024 * 1024 * 1024) // 1GB
|
.maximumMaxSizeBytes(1024 * 1024 * 1024) // 1GB
|
||||||
.build()
|
.build()
|
||||||
|
|
||||||
fun newMemory(app: Application): MemoryCache =
|
fun newMemory(app: Context): MemoryCache =
|
||||||
MemoryCache
|
MemoryCache
|
||||||
.Builder()
|
.Builder()
|
||||||
.maxSizePercent(app)
|
.maxSizePercent(app)
|
||||||
|
|||||||
+2
-2
@@ -20,7 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.service.images
|
package com.vitorpamplona.amethyst.service.images
|
||||||
|
|
||||||
import android.app.Application
|
import android.content.Context
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import coil3.ImageLoader
|
import coil3.ImageLoader
|
||||||
import coil3.SingletonImageLoader
|
import coil3.SingletonImageLoader
|
||||||
@@ -57,7 +57,7 @@ class ImageLoaderSetup {
|
|||||||
|
|
||||||
@OptIn(DelicateCoilApi::class)
|
@OptIn(DelicateCoilApi::class)
|
||||||
fun setup(
|
fun setup(
|
||||||
app: Application,
|
app: Context,
|
||||||
diskCache: DiskCache,
|
diskCache: DiskCache,
|
||||||
memoryCache: MemoryCache,
|
memoryCache: MemoryCache,
|
||||||
callFactory: (url: String) -> Call.Factory,
|
callFactory: (url: String) -> Call.Factory,
|
||||||
|
|||||||
+2
-2
@@ -20,13 +20,13 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.service.playback.diskCache
|
package com.vitorpamplona.amethyst.service.playback.diskCache
|
||||||
|
|
||||||
import android.app.Application
|
import android.content.Context
|
||||||
import com.vitorpamplona.amethyst.service.safeCacheDir
|
import com.vitorpamplona.amethyst.service.safeCacheDir
|
||||||
import kotlinx.coroutines.runBlocking
|
import kotlinx.coroutines.runBlocking
|
||||||
|
|
||||||
class VideoCacheFactory {
|
class VideoCacheFactory {
|
||||||
companion object {
|
companion object {
|
||||||
fun new(app: Application): VideoCache {
|
fun new(app: Context): VideoCache {
|
||||||
val newCache = VideoCache()
|
val newCache = VideoCache()
|
||||||
runBlocking {
|
runBlocking {
|
||||||
newCache.initFileCache(
|
newCache.initFileCache(
|
||||||
|
|||||||
+2
-2
@@ -20,11 +20,11 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.service.uploads.nip95
|
package com.vitorpamplona.amethyst.service.uploads.nip95
|
||||||
|
|
||||||
import android.app.Application
|
import android.content.Context
|
||||||
import com.vitorpamplona.amethyst.service.safeCacheDir
|
import com.vitorpamplona.amethyst.service.safeCacheDir
|
||||||
|
|
||||||
class Nip95CacheFactory {
|
class Nip95CacheFactory {
|
||||||
companion object {
|
companion object {
|
||||||
fun new(app: Application) = app.safeCacheDir().resolve("NIP95")
|
fun new(app: Context) = app.safeCacheDir().resolve("NIP95")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user