mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2024-11-23 18:05:59 +03:00
always providing matrix via the singleton module -
allows the matrix configuration to also contain dependencies
This commit is contained in:
parent
2d80c6bc4e
commit
c160f5dff1
2 changed files with 15 additions and 12 deletions
|
@ -55,7 +55,6 @@ import im.vector.app.features.pin.PinLocker
|
|||
import im.vector.app.features.popup.PopupAlertManager
|
||||
import im.vector.app.features.rageshake.VectorFileLogger
|
||||
import im.vector.app.features.rageshake.VectorUncaughtExceptionHandler
|
||||
import im.vector.app.features.room.VectorRoomDisplayNameFallbackProvider
|
||||
import im.vector.app.features.settings.VectorLocale
|
||||
import im.vector.app.features.settings.VectorPreferences
|
||||
import im.vector.app.features.themes.ThemeUtils
|
||||
|
@ -63,7 +62,6 @@ import im.vector.app.features.version.VersionProvider
|
|||
import im.vector.app.push.fcm.FcmHelper
|
||||
import org.jitsi.meet.sdk.log.JitsiMeetDefaultLogHandler
|
||||
import org.matrix.android.sdk.api.Matrix
|
||||
import org.matrix.android.sdk.api.MatrixConfiguration
|
||||
import org.matrix.android.sdk.api.auth.AuthenticationService
|
||||
import org.matrix.android.sdk.api.legacy.LegacySessionImporter
|
||||
import timber.log.Timber
|
||||
|
@ -77,7 +75,6 @@ import androidx.work.Configuration as WorkConfiguration
|
|||
@HiltAndroidApp
|
||||
class VectorApplication :
|
||||
Application(),
|
||||
MatrixConfiguration.Provider,
|
||||
WorkConfiguration.Provider {
|
||||
|
||||
lateinit var appContext: Context
|
||||
|
@ -100,6 +97,7 @@ class VectorApplication :
|
|||
@Inject lateinit var autoRageShaker: AutoRageShaker
|
||||
@Inject lateinit var vectorFileLogger: VectorFileLogger
|
||||
@Inject lateinit var vectorAnalytics: VectorAnalytics
|
||||
@Inject lateinit var matrix: Matrix
|
||||
|
||||
// font thread handler
|
||||
private var fontThreadHandler: Handler? = null
|
||||
|
@ -220,16 +218,9 @@ class VectorApplication :
|
|||
}
|
||||
}
|
||||
|
||||
override fun providesMatrixConfiguration(): MatrixConfiguration {
|
||||
return MatrixConfiguration(
|
||||
applicationFlavor = BuildConfig.FLAVOR_DESCRIPTION,
|
||||
roomDisplayNameFallbackProvider = VectorRoomDisplayNameFallbackProvider(this)
|
||||
)
|
||||
}
|
||||
|
||||
override fun getWorkManagerConfiguration(): WorkConfiguration {
|
||||
return WorkConfiguration.Builder()
|
||||
.setWorkerFactory(Matrix.getInstance(this.appContext).workerFactory())
|
||||
.setWorkerFactory(matrix.workerFactory())
|
||||
.setExecutor(Executors.newCachedThreadPool())
|
||||
.build()
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@ import dagger.Module
|
|||
import dagger.Provides
|
||||
import dagger.hilt.InstallIn
|
||||
import dagger.hilt.components.SingletonComponent
|
||||
import im.vector.app.BuildConfig
|
||||
import im.vector.app.EmojiCompatWrapper
|
||||
import im.vector.app.EmojiSpanify
|
||||
import im.vector.app.core.dispatchers.CoroutineDispatchers
|
||||
|
@ -42,12 +43,14 @@ import im.vector.app.features.navigation.DefaultNavigator
|
|||
import im.vector.app.features.navigation.Navigator
|
||||
import im.vector.app.features.pin.PinCodeStore
|
||||
import im.vector.app.features.pin.SharedPrefPinCodeStore
|
||||
import im.vector.app.features.room.VectorRoomDisplayNameFallbackProvider
|
||||
import im.vector.app.features.ui.SharedPreferencesUiStateRepository
|
||||
import im.vector.app.features.ui.UiStateRepository
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.SupervisorJob
|
||||
import org.matrix.android.sdk.api.Matrix
|
||||
import org.matrix.android.sdk.api.MatrixConfiguration
|
||||
import org.matrix.android.sdk.api.auth.AuthenticationService
|
||||
import org.matrix.android.sdk.api.auth.HomeServerHistoryService
|
||||
import org.matrix.android.sdk.api.legacy.LegacySessionImporter
|
||||
|
@ -107,7 +110,16 @@ object VectorStaticModule {
|
|||
}
|
||||
|
||||
@Provides
|
||||
fun providesMatrix(context: Context): Matrix {
|
||||
fun providesMatrixConfiguration(context: Context): MatrixConfiguration {
|
||||
return MatrixConfiguration(
|
||||
applicationFlavor = BuildConfig.FLAVOR_DESCRIPTION,
|
||||
roomDisplayNameFallbackProvider = VectorRoomDisplayNameFallbackProvider(context)
|
||||
)
|
||||
}
|
||||
|
||||
@Provides
|
||||
fun providesMatrix(context: Context, configuration: MatrixConfiguration): Matrix {
|
||||
Matrix.initialize(context, configuration)
|
||||
return Matrix.getInstance(context)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue