mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-20 23:48:26 +00:00
Fix button colors
This commit is contained in:
parent
7c523a1ead
commit
b7de36b694
@ -17,7 +17,6 @@ import androidx.compose.ui.Modifier
|
|||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import network.loki.messenger.R
|
import network.loki.messenger.R
|
||||||
import org.thoughtcrime.securesms.ui.LocalDimensions
|
import org.thoughtcrime.securesms.ui.LocalDimensions
|
||||||
import org.thoughtcrime.securesms.ui.PreviewTheme
|
import org.thoughtcrime.securesms.ui.PreviewTheme
|
||||||
@ -25,7 +24,7 @@ import org.thoughtcrime.securesms.ui.SessionColorsParameterProvider
|
|||||||
import org.thoughtcrime.securesms.ui.SessionShieldIcon
|
import org.thoughtcrime.securesms.ui.SessionShieldIcon
|
||||||
import org.thoughtcrime.securesms.ui.color.Colors
|
import org.thoughtcrime.securesms.ui.color.Colors
|
||||||
import org.thoughtcrime.securesms.ui.color.LocalColors
|
import org.thoughtcrime.securesms.ui.color.LocalColors
|
||||||
import org.thoughtcrime.securesms.ui.components.SlimOutlineButton
|
import org.thoughtcrime.securesms.ui.components.SlimPrimaryOutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.contentDescription
|
import org.thoughtcrime.securesms.ui.contentDescription
|
||||||
import org.thoughtcrime.securesms.ui.h8
|
import org.thoughtcrime.securesms.ui.h8
|
||||||
import org.thoughtcrime.securesms.ui.small
|
import org.thoughtcrime.securesms.ui.small
|
||||||
@ -63,13 +62,12 @@ internal fun SeedReminder(startRecoveryPasswordActivity: () -> Unit) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
Spacer(Modifier.width(LocalDimensions.current.xxsMargin))
|
Spacer(Modifier.width(LocalDimensions.current.xxsMargin))
|
||||||
SlimOutlineButton(
|
SlimPrimaryOutlineButton(
|
||||||
text = stringResource(R.string.continue_2),
|
text = stringResource(R.string.continue_2),
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.align(Alignment.CenterVertically)
|
.align(Alignment.CenterVertically)
|
||||||
.contentDescription(R.string.AccessibilityId_reveal_recovery_phrase_button),
|
.contentDescription(R.string.AccessibilityId_reveal_recovery_phrase_button),
|
||||||
color = LocalColors.current.buttonOutline,
|
onClick = startRecoveryPasswordActivity
|
||||||
onClick = { startRecoveryPasswordActivity() }
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ import androidx.compose.ui.res.stringResource
|
|||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import network.loki.messenger.R
|
import network.loki.messenger.R
|
||||||
import org.thoughtcrime.securesms.onboarding.ui.ContinueButton
|
import org.thoughtcrime.securesms.onboarding.ui.ContinuePrimaryOutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.LocalDimensions
|
import org.thoughtcrime.securesms.ui.LocalDimensions
|
||||||
import org.thoughtcrime.securesms.ui.PreviewTheme
|
import org.thoughtcrime.securesms.ui.PreviewTheme
|
||||||
import org.thoughtcrime.securesms.ui.base
|
import org.thoughtcrime.securesms.ui.base
|
||||||
@ -115,6 +115,6 @@ private fun RecoveryPassword(state: State, onChange: (String) -> Unit = {}, onCo
|
|||||||
Spacer(modifier = Modifier.height(LocalDimensions.current.smallItemSpacing))
|
Spacer(modifier = Modifier.height(LocalDimensions.current.smallItemSpacing))
|
||||||
Spacer(Modifier.weight(2f))
|
Spacer(Modifier.weight(2f))
|
||||||
|
|
||||||
ContinueButton(modifier = Modifier.align(Alignment.CenterHorizontally), onContinue)
|
ContinuePrimaryOutlineButton(modifier = Modifier.align(Alignment.CenterHorizontally), onContinue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,7 +20,7 @@ import androidx.compose.ui.tooling.preview.Preview
|
|||||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import network.loki.messenger.R
|
import network.loki.messenger.R
|
||||||
import org.thoughtcrime.securesms.onboarding.ui.ContinueButton
|
import org.thoughtcrime.securesms.onboarding.ui.ContinuePrimaryOutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.LocalDimensions
|
import org.thoughtcrime.securesms.ui.LocalDimensions
|
||||||
import org.thoughtcrime.securesms.ui.PreviewTheme
|
import org.thoughtcrime.securesms.ui.PreviewTheme
|
||||||
import org.thoughtcrime.securesms.ui.SessionColorsParameterProvider
|
import org.thoughtcrime.securesms.ui.SessionColorsParameterProvider
|
||||||
@ -70,7 +70,7 @@ internal fun MessageNotificationsScreen(
|
|||||||
|
|
||||||
Spacer(Modifier.weight(1f))
|
Spacer(Modifier.weight(1f))
|
||||||
|
|
||||||
ContinueButton(Modifier.align(Alignment.CenterHorizontally), onContinue)
|
ContinuePrimaryOutlineButton(Modifier.align(Alignment.CenterHorizontally), onContinue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ import androidx.compose.ui.Modifier
|
|||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import network.loki.messenger.R
|
import network.loki.messenger.R
|
||||||
import org.thoughtcrime.securesms.onboarding.ui.ContinueButton
|
import org.thoughtcrime.securesms.onboarding.ui.ContinuePrimaryOutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.LocalDimensions
|
import org.thoughtcrime.securesms.ui.LocalDimensions
|
||||||
import org.thoughtcrime.securesms.ui.PreviewTheme
|
import org.thoughtcrime.securesms.ui.PreviewTheme
|
||||||
import org.thoughtcrime.securesms.ui.base
|
import org.thoughtcrime.securesms.ui.base
|
||||||
@ -66,6 +66,6 @@ internal fun DisplayName(state: State, onChange: (String) -> Unit = {}, onContin
|
|||||||
Spacer(modifier = Modifier.height(LocalDimensions.current.smallItemSpacing))
|
Spacer(modifier = Modifier.height(LocalDimensions.current.smallItemSpacing))
|
||||||
Spacer(Modifier.weight(2f))
|
Spacer(Modifier.weight(2f))
|
||||||
|
|
||||||
ContinueButton(modifier = Modifier.align(Alignment.CenterHorizontally), onContinue)
|
ContinuePrimaryOutlineButton(modifier = Modifier.align(Alignment.CenterHorizontally), onContinue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,11 +8,12 @@ import androidx.compose.ui.res.stringResource
|
|||||||
import network.loki.messenger.R
|
import network.loki.messenger.R
|
||||||
import org.thoughtcrime.securesms.ui.LocalDimensions
|
import org.thoughtcrime.securesms.ui.LocalDimensions
|
||||||
import org.thoughtcrime.securesms.ui.components.OutlineButton
|
import org.thoughtcrime.securesms.ui.components.OutlineButton
|
||||||
|
import org.thoughtcrime.securesms.ui.components.PrimaryOutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.contentDescription
|
import org.thoughtcrime.securesms.ui.contentDescription
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun ContinueButton(modifier: Modifier, onContinue: () -> Unit) {
|
fun ContinuePrimaryOutlineButton(modifier: Modifier, onContinue: () -> Unit) {
|
||||||
OutlineButton(
|
PrimaryOutlineButton(
|
||||||
stringResource(R.string.continue_2),
|
stringResource(R.string.continue_2),
|
||||||
modifier = modifier
|
modifier = modifier
|
||||||
.contentDescription(R.string.AccessibilityId_continue)
|
.contentDescription(R.string.AccessibilityId_continue)
|
||||||
|
@ -80,6 +80,8 @@ import org.thoughtcrime.securesms.ui.LocalDimensions
|
|||||||
import org.thoughtcrime.securesms.ui.color.destructiveButtonColors
|
import org.thoughtcrime.securesms.ui.color.destructiveButtonColors
|
||||||
import org.thoughtcrime.securesms.ui.components.OutlineButton
|
import org.thoughtcrime.securesms.ui.components.OutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.components.OutlineCopyButton
|
import org.thoughtcrime.securesms.ui.components.OutlineCopyButton
|
||||||
|
import org.thoughtcrime.securesms.ui.components.PrimaryOutlineButton
|
||||||
|
import org.thoughtcrime.securesms.ui.components.PrimaryOutlineCopyButton
|
||||||
import org.thoughtcrime.securesms.ui.contentDescription
|
import org.thoughtcrime.securesms.ui.contentDescription
|
||||||
import org.thoughtcrime.securesms.ui.setThemedContent
|
import org.thoughtcrime.securesms.ui.setThemedContent
|
||||||
import org.thoughtcrime.securesms.util.BitmapDecodingException
|
import org.thoughtcrime.securesms.util.BitmapDecodingException
|
||||||
@ -390,13 +392,13 @@ class SettingsActivity : PassphraseRequiredActionBarActivity() {
|
|||||||
.padding(top = LocalDimensions.current.xxxsMargin),
|
.padding(top = LocalDimensions.current.xxxsMargin),
|
||||||
horizontalArrangement = Arrangement.spacedBy(LocalDimensions.current.smallItemSpacing),
|
horizontalArrangement = Arrangement.spacedBy(LocalDimensions.current.smallItemSpacing),
|
||||||
) {
|
) {
|
||||||
OutlineButton(
|
PrimaryOutlineButton(
|
||||||
stringResource(R.string.share),
|
stringResource(R.string.share),
|
||||||
modifier = Modifier.weight(1f),
|
modifier = Modifier.weight(1f),
|
||||||
onClick = { sendInvitationToUseSession() }
|
onClick = ::sendInvitationToUseSession
|
||||||
)
|
)
|
||||||
|
|
||||||
OutlineCopyButton(
|
PrimaryOutlineCopyButton(
|
||||||
modifier = Modifier.weight(1f),
|
modifier = Modifier.weight(1f),
|
||||||
onClick = ::copyPublicKey,
|
onClick = ::copyPublicKey,
|
||||||
)
|
)
|
||||||
|
@ -32,6 +32,8 @@ import org.thoughtcrime.securesms.ui.SessionShieldIcon
|
|||||||
import org.thoughtcrime.securesms.ui.base
|
import org.thoughtcrime.securesms.ui.base
|
||||||
import org.thoughtcrime.securesms.ui.color.Colors
|
import org.thoughtcrime.securesms.ui.color.Colors
|
||||||
import org.thoughtcrime.securesms.ui.color.LocalColors
|
import org.thoughtcrime.securesms.ui.color.LocalColors
|
||||||
|
import org.thoughtcrime.securesms.ui.components.ButtonStyle
|
||||||
|
import org.thoughtcrime.securesms.ui.components.OutlineCopyButton
|
||||||
import org.thoughtcrime.securesms.ui.components.QrImage
|
import org.thoughtcrime.securesms.ui.components.QrImage
|
||||||
import org.thoughtcrime.securesms.ui.components.SlimOutlineButton
|
import org.thoughtcrime.securesms.ui.components.SlimOutlineButton
|
||||||
import org.thoughtcrime.securesms.ui.components.SlimOutlineCopyButton
|
import org.thoughtcrime.securesms.ui.components.SlimOutlineCopyButton
|
||||||
|
@ -3,32 +3,32 @@ package org.thoughtcrime.securesms.ui.color
|
|||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
|
|
||||||
|
|
||||||
val classicDark0 = Color(0xff111111)
|
val classicDark0 = Color.Black
|
||||||
val classicDark1 = Color(0xff1B1B1B)
|
val classicDark1 = Color(0xff1B1B1B)
|
||||||
val classicDark2 = Color(0xff2D2D2D)
|
val classicDark2 = Color(0xff2D2D2D)
|
||||||
val classicDark3 = Color(0xff414141)
|
val classicDark3 = Color(0xff414141)
|
||||||
val classicDark4 = Color(0xff767676)
|
val classicDark4 = Color(0xff767676)
|
||||||
val classicDark5 = Color(0xffA1A2A1)
|
val classicDark5 = Color(0xffA1A2A1)
|
||||||
val classicDark6 = Color(0xffFFFFFF)
|
val classicDark6 = Color.White
|
||||||
|
|
||||||
val classicLight0 = Color(0xff000000)
|
val classicLight0 = Color.Black
|
||||||
val classicLight1 = Color(0xff6D6D6D)
|
val classicLight1 = Color(0xff6D6D6D)
|
||||||
val classicLight2 = Color(0xffA1A2A1)
|
val classicLight2 = Color(0xffA1A2A1)
|
||||||
val classicLight3 = Color(0xffDFDFDF)
|
val classicLight3 = Color(0xffDFDFDF)
|
||||||
val classicLight4 = Color(0xffF0F0F0)
|
val classicLight4 = Color(0xffF0F0F0)
|
||||||
val classicLight5 = Color(0xffF9F9F9)
|
val classicLight5 = Color(0xffF9F9F9)
|
||||||
val classicLight6 = Color(0xffFFFFFF)
|
val classicLight6 = Color.White
|
||||||
|
|
||||||
val oceanDark0 = Color(0xff000000)
|
val oceanDark0 = Color.Black
|
||||||
val oceanDark1 = Color(0xff1A1C28)
|
val oceanDark1 = Color(0xff1A1C28)
|
||||||
val oceanDark2 = Color(0xff252735)
|
val oceanDark2 = Color(0xff252735)
|
||||||
val oceanDark3 = Color(0xff2B2D40)
|
val oceanDark3 = Color(0xff2B2D40)
|
||||||
val oceanDark4 = Color(0xff3D4A5D)
|
val oceanDark4 = Color(0xff3D4A5D)
|
||||||
val oceanDark5 = Color(0xffA6A9CE)
|
val oceanDark5 = Color(0xffA6A9CE)
|
||||||
val oceanDark6 = Color(0xff5CAACC)
|
val oceanDark6 = Color(0xff5CAACC)
|
||||||
val oceanDark7 = Color(0xffFFFFFF)
|
val oceanDark7 = Color.White
|
||||||
|
|
||||||
val oceanLight0 = Color(0xff000000)
|
val oceanLight0 = Color.Black
|
||||||
val oceanLight1 = Color(0xff19345D)
|
val oceanLight1 = Color(0xff19345D)
|
||||||
val oceanLight2 = Color(0xff6A6E90)
|
val oceanLight2 = Color(0xff6A6E90)
|
||||||
val oceanLight3 = Color(0xff5CAACC)
|
val oceanLight3 = Color(0xff5CAACC)
|
||||||
|
@ -38,10 +38,21 @@ interface Colors {
|
|||||||
val backgroundBubbleReceived: Color
|
val backgroundBubbleReceived: Color
|
||||||
val textBubbleReceived: Color
|
val textBubbleReceived: Color
|
||||||
val backgroundBubbleSent: Color get() = primary
|
val backgroundBubbleSent: Color get() = primary
|
||||||
|
|
||||||
|
// buttonFill
|
||||||
|
val buttonFill: Color get() = text
|
||||||
|
val buttonFillText: Color get() = background
|
||||||
|
|
||||||
|
// primaryButtonFill
|
||||||
|
val primaryButtonFill: Color get() = if (isLight) buttonFill else primary
|
||||||
val primaryButtonFillText: Color
|
val primaryButtonFillText: Color
|
||||||
val primaryButtonFill: Color
|
|
||||||
val buttonFill: Color
|
// buttonOutline
|
||||||
val buttonOutline: Color
|
val buttonOutline get() = text
|
||||||
|
|
||||||
|
// primaryButtonOutline
|
||||||
|
val primaryButtonOutline get() = primaryButtonFill
|
||||||
|
|
||||||
val qrCodeContent: Color
|
val qrCodeContent: Color
|
||||||
val qrCodeBackground: Color
|
val qrCodeBackground: Color
|
||||||
}
|
}
|
||||||
@ -58,10 +69,12 @@ data class ClassicDark(override val primary: Color = primaryGreen): Colors {
|
|||||||
override val textBubbleSent = Color.Black
|
override val textBubbleSent = Color.Black
|
||||||
override val backgroundBubbleReceived = classicDark2
|
override val backgroundBubbleReceived = classicDark2
|
||||||
override val textBubbleReceived = Color.White
|
override val textBubbleReceived = Color.White
|
||||||
override val primaryButtonFillText = Color.Black
|
|
||||||
override val primaryButtonFill = primary
|
|
||||||
override val buttonFill = text
|
override val buttonFill = text
|
||||||
override val buttonOutline = primary
|
override val buttonFillText = text
|
||||||
|
override val primaryButtonFill = primary
|
||||||
|
override val primaryButtonFillText = Color.Black
|
||||||
|
|
||||||
override val qrCodeContent = background
|
override val qrCodeContent = background
|
||||||
override val qrCodeBackground = text
|
override val qrCodeBackground = text
|
||||||
}
|
}
|
||||||
@ -78,10 +91,11 @@ data class ClassicLight(override val primary: Color = primaryGreen): Colors {
|
|||||||
override val textBubbleSent = Color.Black
|
override val textBubbleSent = Color.Black
|
||||||
override val backgroundBubbleReceived = classicLight4
|
override val backgroundBubbleReceived = classicLight4
|
||||||
override val textBubbleReceived = classicLight4
|
override val textBubbleReceived = classicLight4
|
||||||
override val primaryButtonFillText = Color.White
|
|
||||||
override val primaryButtonFill = classicLight0
|
|
||||||
override val buttonFill = classicLight0
|
override val buttonFill = classicLight0
|
||||||
override val buttonOutline = classicLight0
|
override val primaryButtonFill = classicLight0
|
||||||
|
override val primaryButtonFillText = Color.White
|
||||||
|
|
||||||
override val qrCodeContent = text
|
override val qrCodeContent = text
|
||||||
override val qrCodeBackground = backgroundSecondary
|
override val qrCodeBackground = backgroundSecondary
|
||||||
}
|
}
|
||||||
@ -98,10 +112,11 @@ data class OceanDark(override val primary: Color = primaryBlue): Colors {
|
|||||||
override val textBubbleSent = Color.Black
|
override val textBubbleSent = Color.Black
|
||||||
override val backgroundBubbleReceived = oceanDark4
|
override val backgroundBubbleReceived = oceanDark4
|
||||||
override val textBubbleReceived = oceanDark4
|
override val textBubbleReceived = oceanDark4
|
||||||
override val primaryButtonFillText = Color.Black
|
|
||||||
override val primaryButtonFill = primary
|
|
||||||
override val buttonFill = text
|
override val buttonFill = text
|
||||||
override val buttonOutline = primary
|
override val primaryButtonFill = primary
|
||||||
|
override val primaryButtonFillText = Color.Black
|
||||||
|
|
||||||
override val qrCodeContent = background
|
override val qrCodeContent = background
|
||||||
override val qrCodeBackground = text
|
override val qrCodeBackground = text
|
||||||
}
|
}
|
||||||
@ -118,10 +133,11 @@ data class OceanLight(override val primary: Color = primaryBlue): Colors {
|
|||||||
override val textBubbleSent = oceanLight1
|
override val textBubbleSent = oceanLight1
|
||||||
override val backgroundBubbleReceived = oceanLight4
|
override val backgroundBubbleReceived = oceanLight4
|
||||||
override val textBubbleReceived = oceanLight1
|
override val textBubbleReceived = oceanLight1
|
||||||
override val primaryButtonFillText = Color.White
|
|
||||||
override val primaryButtonFill = oceanLight1
|
|
||||||
override val buttonFill = oceanLight1
|
override val buttonFill = oceanLight1
|
||||||
override val buttonOutline = oceanLight1
|
override val primaryButtonFill = oceanLight1
|
||||||
|
override val primaryButtonFillText = Color.White
|
||||||
|
|
||||||
override val qrCodeContent = text
|
override val qrCodeContent = text
|
||||||
override val qrCodeBackground = backgroundSecondary
|
override val qrCodeBackground = backgroundSecondary
|
||||||
}
|
}
|
||||||
|
@ -10,11 +10,9 @@ import androidx.compose.foundation.interaction.MutableInteractionSource
|
|||||||
import androidx.compose.foundation.interaction.PressInteraction
|
import androidx.compose.foundation.interaction.PressInteraction
|
||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
import androidx.compose.foundation.layout.Box
|
import androidx.compose.foundation.layout.Box
|
||||||
import androidx.compose.foundation.layout.Column
|
|
||||||
import androidx.compose.foundation.layout.ExperimentalLayoutApi
|
import androidx.compose.foundation.layout.ExperimentalLayoutApi
|
||||||
import androidx.compose.foundation.layout.FlowRow
|
import androidx.compose.foundation.layout.FlowRow
|
||||||
import androidx.compose.foundation.layout.PaddingValues
|
import androidx.compose.foundation.layout.PaddingValues
|
||||||
import androidx.compose.foundation.layout.Row
|
|
||||||
import androidx.compose.foundation.layout.RowScope
|
import androidx.compose.foundation.layout.RowScope
|
||||||
import androidx.compose.foundation.layout.heightIn
|
import androidx.compose.foundation.layout.heightIn
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
@ -113,11 +111,11 @@ fun Button(
|
|||||||
Button(text, onClick, ButtonType.PrimaryFill, modifier, enabled)
|
Button(text, onClick, ButtonType.PrimaryFill, modifier, enabled)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable fun OutlineButton(text: String, modifier: Modifier = Modifier, color: Color = LocalColors.current.buttonOutline, enabled: Boolean = true, onClick: () -> Unit) {
|
@Composable fun OutlineButton(text: String, modifier: Modifier = Modifier, color: Color = LocalColors.current.text, enabled: Boolean = true, onClick: () -> Unit) {
|
||||||
Button(text, onClick, ButtonType.Outline(color), modifier, enabled)
|
Button(text, onClick, ButtonType.Outline(color), modifier, enabled)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable fun OutlineButton(modifier: Modifier = Modifier, color: Color = LocalColors.current.buttonOutline, enabled: Boolean = true, onClick: () -> Unit, content: @Composable RowScope.() -> Unit) {
|
@Composable fun OutlineButton(modifier: Modifier = Modifier, color: Color = LocalColors.current.text, enabled: Boolean = true, onClick: () -> Unit, content: @Composable RowScope.() -> Unit) {
|
||||||
Button(
|
Button(
|
||||||
onClick = onClick,
|
onClick = onClick,
|
||||||
type = ButtonType.Outline(color),
|
type = ButtonType.Outline(color),
|
||||||
@ -128,7 +126,7 @@ fun Button(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Composable fun PrimaryOutlineButton(text: String, modifier: Modifier = Modifier, enabled: Boolean = true, onClick: () -> Unit) {
|
@Composable fun PrimaryOutlineButton(text: String, modifier: Modifier = Modifier, enabled: Boolean = true, onClick: () -> Unit) {
|
||||||
Button(text, onClick, ButtonType.Outline(LocalColors.current.primary), modifier, enabled)
|
Button(text, onClick, ButtonType.Outline(LocalColors.current.primaryButtonFill), modifier, enabled)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable fun SlimOutlineButton(onClick: () -> Unit, modifier: Modifier = Modifier, color: Color = LocalColors.current.text, enabled: Boolean = true, content: @Composable RowScope.() -> Unit) {
|
@Composable fun SlimOutlineButton(onClick: () -> Unit, modifier: Modifier = Modifier, color: Color = LocalColors.current.text, enabled: Boolean = true, content: @Composable RowScope.() -> Unit) {
|
||||||
@ -142,6 +140,19 @@ fun Button(
|
|||||||
Button(text, onClick, ButtonType.Outline(color), modifier, enabled, ButtonStyle.Slim)
|
Button(text, onClick, ButtonType.Outline(color), modifier, enabled, ButtonStyle.Slim)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Composable fun SlimPrimaryOutlineButton(text: String, modifier: Modifier = Modifier, enabled: Boolean = true, onClick: () -> Unit) {
|
||||||
|
Button(text, onClick, ButtonType.Outline(LocalColors.current.primaryButtonOutline), modifier, enabled, ButtonStyle.Slim)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
fun PrimaryOutlineCopyButton(
|
||||||
|
modifier: Modifier = Modifier,
|
||||||
|
style: ButtonStyle = ButtonStyle.Large,
|
||||||
|
onClick: () -> Unit
|
||||||
|
) {
|
||||||
|
OutlineCopyButton(modifier, style, LocalColors.current.primaryButtonOutline, onClick)
|
||||||
|
}
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun SlimOutlineCopyButton(
|
fun SlimOutlineCopyButton(
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
@ -155,7 +166,7 @@ fun SlimOutlineCopyButton(
|
|||||||
fun OutlineCopyButton(
|
fun OutlineCopyButton(
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
style: ButtonStyle = ButtonStyle.Large,
|
style: ButtonStyle = ButtonStyle.Large,
|
||||||
color: Color = LocalColors.current.buttonOutline,
|
color: Color = LocalColors.current.text,
|
||||||
onClick: () -> Unit
|
onClick: () -> Unit
|
||||||
) {
|
) {
|
||||||
val interactionSource = remember { MutableInteractionSource() }
|
val interactionSource = remember { MutableInteractionSource() }
|
||||||
@ -167,13 +178,18 @@ fun OutlineCopyButton(
|
|||||||
type = ButtonType.Outline(color),
|
type = ButtonType.Outline(color),
|
||||||
onClick = onClick
|
onClick = onClick
|
||||||
) {
|
) {
|
||||||
|
CopyButtonContent(interactionSource)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
fun CopyButtonContent(interactionSource: MutableInteractionSource) {
|
||||||
TemporaryClickedContent(
|
TemporaryClickedContent(
|
||||||
interactionSource = interactionSource,
|
interactionSource = interactionSource,
|
||||||
content = { Text(stringResource(R.string.copy)) },
|
content = { Text(stringResource(R.string.copy)) },
|
||||||
temporaryContent = { Text(stringResource(R.string.copied)) }
|
temporaryContent = { Text(stringResource(R.string.copied)) }
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun TemporaryClickedContent(
|
fun TemporaryClickedContent(
|
||||||
@ -285,11 +301,13 @@ private fun VariousButtons(
|
|||||||
PrimaryFillButton("Primary Fill Disabled", enabled = false) {}
|
PrimaryFillButton("Primary Fill Disabled", enabled = false) {}
|
||||||
FillButton("Fill Button") {}
|
FillButton("Fill Button") {}
|
||||||
FillButton("Fill Button Disabled", enabled = false) {}
|
FillButton("Fill Button Disabled", enabled = false) {}
|
||||||
|
PrimaryOutlineButton("Primary Outline Button") {}
|
||||||
|
PrimaryOutlineButton("Primary Outline Disabled", enabled = false) {}
|
||||||
OutlineButton("Outline Button") {}
|
OutlineButton("Outline Button") {}
|
||||||
OutlineButton("Outline Button Disabled", enabled = false) {}
|
OutlineButton("Outline Button Disabled", enabled = false) {}
|
||||||
SlimOutlineButton("Slim Outline") {}
|
SlimOutlineButton("Slim Outline") {}
|
||||||
SlimOutlineButton("Slim Outline Disabled", enabled = false) {}
|
SlimOutlineButton("Slim Outline Disabled", enabled = false) {}
|
||||||
SlimOutlineButton("Slim Primary", color = LocalColors.current.buttonOutline) {}
|
SlimOutlineButton("Slim Primary", color = LocalColors.current.primaryButtonFill) {}
|
||||||
SlimOutlineButton("Slim Danger", color = LocalColors.current.danger) {}
|
SlimOutlineButton("Slim Danger", color = LocalColors.current.danger) {}
|
||||||
BorderlessButton("Borderless Button") {}
|
BorderlessButton("Borderless Button") {}
|
||||||
BorderlessButton("Borderless Secondary", color = LocalColors.current.textSecondary) {}
|
BorderlessButton("Borderless Secondary", color = LocalColors.current.textSecondary) {}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user