Fixed theme not being changed properly until recomposition + reduced themes saturation
This commit is contained in:
parent
0f5e4248b9
commit
ef367e1d89
@ -43,10 +43,10 @@ val darkBlueTheme = ColorsScheme(
|
|||||||
onBackgroundSecondary = Color(0xFFCCCBCB),
|
onBackgroundSecondary = Color(0xFFCCCBCB),
|
||||||
error = Color(0xFFc93838),
|
error = Color(0xFFc93838),
|
||||||
onError = Color(0xFFFFFFFF),
|
onError = Color(0xFFFFFFFF),
|
||||||
background = Color(0xFF0E1621),
|
background = Color(0xFF10161e),
|
||||||
backgroundSelected = Color(0xFF2f3640),
|
backgroundSelected = Color(0xFF2f3640),
|
||||||
surface = Color(0xFF182533),
|
surface = Color(0xff1d2630),
|
||||||
secondarySurface = Color(0xFF122C46),
|
secondarySurface = Color(0xFF1a2b3d),
|
||||||
tertiarySurface = Color(0xFF0a335c),
|
tertiarySurface = Color(0xFF0a335c),
|
||||||
addFile = Color(0xFF32A852),
|
addFile = Color(0xFF32A852),
|
||||||
deletedFile = Color(0xFFc93838),
|
deletedFile = Color(0xFFc93838),
|
||||||
@ -64,7 +64,7 @@ val darkBlueTheme = ColorsScheme(
|
|||||||
)
|
)
|
||||||
|
|
||||||
val darkGrayTheme = ColorsScheme(
|
val darkGrayTheme = ColorsScheme(
|
||||||
primary = Color(0xFF014F97),
|
primary = Color(0xFF264e73),
|
||||||
primaryVariant = Color(0xFFCDEAFF),
|
primaryVariant = Color(0xFFCDEAFF),
|
||||||
onPrimary = Color(0xFFFFFFFFF),
|
onPrimary = Color(0xFFFFFFFFF),
|
||||||
secondary = Color(0xFFe9c754),
|
secondary = Color(0xFFe9c754),
|
||||||
@ -73,11 +73,11 @@ val darkGrayTheme = ColorsScheme(
|
|||||||
onBackgroundSecondary = Color(0xFFCCCBCB),
|
onBackgroundSecondary = Color(0xFFCCCBCB),
|
||||||
error = Color(0xFFc93838),
|
error = Color(0xFFc93838),
|
||||||
onError = Color(0xFFFFFFFF),
|
onError = Color(0xFFFFFFFF),
|
||||||
background = Color(0xFF16181F),
|
background = Color(0xFF17181c),
|
||||||
backgroundSelected = Color(0xFF32373e),
|
backgroundSelected = Color(0xFF32373e),
|
||||||
surface = Color(0xFF212731),
|
surface = Color(0xFF25282d),
|
||||||
secondarySurface = Color(0xFF282d36),
|
secondarySurface = Color(0xFF292d32),
|
||||||
tertiarySurface = Color(0xFF21303d),
|
tertiarySurface = Color(0xFF252f37),
|
||||||
addFile = Color(0xFF32A852),
|
addFile = Color(0xFF32A852),
|
||||||
deletedFile = Color(0xFFc93838),
|
deletedFile = Color(0xFFc93838),
|
||||||
modifiedFile = Color(0xFF0070D8),
|
modifiedFile = Color(0xFF0070D8),
|
||||||
|
@ -9,9 +9,10 @@ import androidx.compose.ui.graphics.Color
|
|||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import com.jetpackduba.gitnuro.ui.dropdowns.DropDownOption
|
import com.jetpackduba.gitnuro.ui.dropdowns.DropDownOption
|
||||||
|
import kotlinx.coroutines.flow.MutableStateFlow
|
||||||
|
|
||||||
private val defaultAppTheme: ColorsScheme = darkBlueTheme
|
private val defaultAppTheme: ColorsScheme = darkBlueTheme
|
||||||
private var appTheme: ColorsScheme = defaultAppTheme
|
private var appTheme: MutableStateFlow<ColorsScheme> = MutableStateFlow(defaultAppTheme)
|
||||||
internal val LocalLinesHeight = compositionLocalOf { spacedLineHeight }
|
internal val LocalLinesHeight = compositionLocalOf { spacedLineHeight }
|
||||||
|
|
||||||
class LinesHeight internal constructor(
|
class LinesHeight internal constructor(
|
||||||
@ -60,7 +61,7 @@ fun AppTheme(
|
|||||||
LinesHeightType.COMPACT -> compactLineHeight
|
LinesHeightType.COMPACT -> compactLineHeight
|
||||||
}
|
}
|
||||||
|
|
||||||
appTheme = theme
|
appTheme.value = theme
|
||||||
|
|
||||||
val composeColors = theme.toComposeColors()
|
val composeColors = theme.toComposeColors()
|
||||||
val compositionValues = arrayOf(LocalLinesHeight provides lineHeight)
|
val compositionValues = arrayOf(LocalLinesHeight provides lineHeight)
|
||||||
@ -80,57 +81,78 @@ val MaterialTheme.linesHeight: LinesHeight
|
|||||||
@ReadOnlyComposable
|
@ReadOnlyComposable
|
||||||
get() = LocalLinesHeight.current
|
get() = LocalLinesHeight.current
|
||||||
|
|
||||||
|
|
||||||
|
private val theme: ColorsScheme
|
||||||
|
@Composable
|
||||||
|
get() = appTheme.collectAsState().value
|
||||||
|
|
||||||
val Colors.backgroundSelected: Color
|
val Colors.backgroundSelected: Color
|
||||||
get() = appTheme.backgroundSelected
|
@Composable
|
||||||
|
get() = theme.backgroundSelected
|
||||||
|
|
||||||
val Colors.onBackgroundSecondary: Color
|
val Colors.onBackgroundSecondary: Color
|
||||||
get() = appTheme.onBackgroundSecondary
|
@Composable
|
||||||
|
get() = theme.onBackgroundSecondary
|
||||||
|
|
||||||
val Colors.secondarySurface: Color
|
val Colors.secondarySurface: Color
|
||||||
get() = appTheme.secondarySurface
|
@Composable
|
||||||
|
get() = theme.secondarySurface
|
||||||
|
|
||||||
val Colors.tertiarySurface: Color
|
val Colors.tertiarySurface: Color
|
||||||
get() = appTheme.tertiarySurface
|
@Composable
|
||||||
|
get() = theme.tertiarySurface
|
||||||
|
|
||||||
val Colors.addFile: Color
|
val Colors.addFile: Color
|
||||||
get() = appTheme.addFile
|
@Composable
|
||||||
|
get() = theme.addFile
|
||||||
|
|
||||||
val Colors.deleteFile: Color
|
val Colors.deleteFile: Color
|
||||||
get() = appTheme.deletedFile
|
@Composable
|
||||||
|
get() = theme.deletedFile
|
||||||
|
|
||||||
val Colors.modifyFile: Color
|
val Colors.modifyFile: Color
|
||||||
get() = appTheme.modifiedFile
|
@Composable
|
||||||
|
get() = theme.modifiedFile
|
||||||
|
|
||||||
val Colors.conflictFile: Color
|
val Colors.conflictFile: Color
|
||||||
get() = appTheme.conflictingFile
|
@Composable
|
||||||
|
get() = theme.conflictingFile
|
||||||
|
|
||||||
val Colors.abortButton: Color
|
val Colors.abortButton: Color
|
||||||
get() = appTheme.error
|
@Composable
|
||||||
|
get() = theme.error
|
||||||
|
|
||||||
val Colors.scrollbarNormal: Color
|
val Colors.scrollbarNormal: Color
|
||||||
get() = appTheme.normalScrollbar
|
@Composable
|
||||||
|
get() = theme.normalScrollbar
|
||||||
|
|
||||||
val Colors.scrollbarHover: Color
|
val Colors.scrollbarHover: Color
|
||||||
get() = appTheme.hoverScrollbar
|
@Composable
|
||||||
|
get() = theme.hoverScrollbar
|
||||||
|
|
||||||
val Colors.dialogOverlay: Color
|
val Colors.dialogOverlay: Color
|
||||||
get() = appTheme.dialogOverlay
|
@Composable
|
||||||
|
get() = theme.dialogOverlay
|
||||||
|
|
||||||
val Colors.diffLineAdded: Color
|
val Colors.diffLineAdded: Color
|
||||||
get() = appTheme.diffLineAdded
|
@Composable
|
||||||
|
get() = theme.diffLineAdded
|
||||||
|
|
||||||
val Colors.diffLineRemoved: Color
|
val Colors.diffLineRemoved: Color
|
||||||
get() = appTheme.diffLineRemoved
|
@Composable
|
||||||
|
get() = theme.diffLineRemoved
|
||||||
|
|
||||||
val Colors.diffKeyword: Color
|
val Colors.diffKeyword: Color
|
||||||
get() = appTheme.diffKeyword
|
@Composable
|
||||||
|
get() = theme.diffKeyword
|
||||||
|
|
||||||
val Colors.diffAnnotation: Color
|
val Colors.diffAnnotation: Color
|
||||||
get() = appTheme.diffAnnotation
|
@Composable
|
||||||
|
get() = theme.diffAnnotation
|
||||||
|
|
||||||
val Colors.diffComment: Color
|
val Colors.diffComment: Color
|
||||||
get() = appTheme.diffComment
|
@Composable
|
||||||
|
get() = theme.diffComment
|
||||||
|
|
||||||
val Colors.isDark: Boolean
|
val Colors.isDark: Boolean
|
||||||
get() = !this.isLight
|
get() = !this.isLight
|
||||||
|
Loading…
Reference in New Issue
Block a user