Updated on 2026-08-14
This commit is contained in:
parent
5b97cad943
commit
a8142a7ddf
25 changed files with 86 additions and 139 deletions
11
core/ui/src/main/java/com/tangem/core/ui/UiDependencies.kt
Normal file
11
core/ui/src/main/java/com/tangem/core/ui/UiDependencies.kt
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
package com.tangem.core.ui
|
||||
|
||||
import com.tangem.core.ui.haptic.HapticManager
|
||||
import com.tangem.core.ui.theme.AppThemeModeHolder
|
||||
|
||||
interface UiDependencies {
|
||||
|
||||
val hapticManager: HapticManager
|
||||
|
||||
val appThemeModeHolder: AppThemeModeHolder
|
||||
}
|
||||
|
|
@ -8,9 +8,8 @@ import androidx.compose.runtime.ReadOnlyComposable
|
|||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.platform.ComposeView
|
||||
import com.tangem.core.ui.haptic.HapticManager
|
||||
import com.tangem.core.ui.UiDependencies
|
||||
import com.tangem.core.ui.res.TangemTheme
|
||||
import com.tangem.core.ui.theme.AppThemeModeHolder
|
||||
import com.tangem.domain.apptheme.model.AppThemeMode
|
||||
|
||||
/**
|
||||
|
|
@ -23,14 +22,9 @@ import com.tangem.domain.apptheme.model.AppThemeMode
|
|||
internal interface ComposeScreen {
|
||||
|
||||
/**
|
||||
* The holder for managing the current application theme mode.
|
||||
* The holder for ui dependencies.
|
||||
*/
|
||||
val appThemeModeHolder: AppThemeModeHolder
|
||||
|
||||
/**
|
||||
* Haptic manager.
|
||||
*/
|
||||
val hapticManager: HapticManager
|
||||
val uiDependencies: UiDependencies
|
||||
|
||||
/**
|
||||
* The screen modifier.
|
||||
|
|
@ -59,11 +53,11 @@ internal interface ComposeScreen {
|
|||
internal fun ComposeScreen.createComposeView(context: Context): ComposeView {
|
||||
return ComposeView(context).apply {
|
||||
setContent {
|
||||
val appThemeMode by appThemeModeHolder.appThemeMode
|
||||
val appThemeMode by uiDependencies.appThemeModeHolder.appThemeMode
|
||||
|
||||
TangemTheme(
|
||||
isDark = shouldUseDarkTheme(appThemeMode),
|
||||
hapticManager = hapticManager,
|
||||
hapticManager = uiDependencies.hapticManager,
|
||||
) {
|
||||
ScreenContent(modifier = screenModifier)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue