mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-20 00:29:11 +01:00
Move theme colors to core-ui.
This commit is contained in:
@@ -37,13 +37,13 @@ public class AlertView extends AppCompatImageView {
|
||||
|
||||
public void setFailed() {
|
||||
setVisibility(View.VISIBLE);
|
||||
setColorFilter(ContextCompat.getColor(getContext(), R.color.signal_colorError));
|
||||
setColorFilter(ContextCompat.getColor(getContext(), org.signal.core.ui.R.color.signal_colorError));
|
||||
setContentDescription(getContext().getString(R.string.conversation_item_sent__send_failed_indicator_description));
|
||||
}
|
||||
|
||||
public void setRateLimited() {
|
||||
setVisibility(View.VISIBLE);
|
||||
setColorFilter(ContextCompat.getColor(getContext(), R.color.signal_colorOnSurfaceVariant));
|
||||
setColorFilter(ContextCompat.getColor(getContext(), org.signal.core.ui.R.color.signal_colorOnSurfaceVariant));
|
||||
setContentDescription(getContext().getString(R.string.conversation_item_sent__pending_approval_description));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ public class FromTextView extends SimpleEmojiTextView {
|
||||
}
|
||||
|
||||
private Drawable getPinned() {
|
||||
return getDrawable(R.drawable.symbol_pin_16, R.color.signal_colorOnSurface);
|
||||
return getDrawable(R.drawable.symbol_pin_16, org.signal.core.ui.R.color.signal_colorOnSurface);
|
||||
}
|
||||
|
||||
private Drawable getDrawable(@DrawableRes int drawable, int colorRes) {
|
||||
|
||||
@@ -386,20 +386,20 @@ public class InputPanel extends ConstraintLayout
|
||||
final int textHintColor;
|
||||
|
||||
if (enabled) {
|
||||
iconTint = getContext().getResources().getColor(R.color.signal_colorOnSurface);
|
||||
textColor = getContext().getResources().getColor(R.color.signal_colorOnSurface);
|
||||
textHintColor = getContext().getResources().getColor(R.color.signal_colorOnSurfaceVariant);
|
||||
iconTint = getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorOnSurface);
|
||||
textColor = getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorOnSurface);
|
||||
textHintColor = getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorOnSurfaceVariant);
|
||||
|
||||
setBackground(null);
|
||||
composeContainer.setBackground(Objects.requireNonNull(ContextCompat.getDrawable(getContext(), R.drawable.compose_background_wallpaper)));
|
||||
quickAudioToggle.setColorFilter(iconTint);
|
||||
quickCameraToggle.setColorFilter(iconTint);
|
||||
} else {
|
||||
iconTint = getContext().getResources().getColor(R.color.signal_colorOnSurface);
|
||||
textColor = getContext().getResources().getColor(R.color.signal_colorOnSurface);
|
||||
textHintColor = getContext().getResources().getColor(R.color.signal_colorOnSurfaceVariant);
|
||||
iconTint = getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorOnSurface);
|
||||
textColor = getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorOnSurface);
|
||||
textHintColor = getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorOnSurfaceVariant);
|
||||
|
||||
setBackground(new ColorDrawable(getContext().getResources().getColor(R.color.signal_colorSurface)));
|
||||
setBackground(new ColorDrawable(getContext().getResources().getColor(org.signal.core.ui.R.color.signal_colorSurface)));
|
||||
composeContainer.setBackground(Objects.requireNonNull(ContextCompat.getDrawable(getContext(), R.drawable.compose_background)));
|
||||
}
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ import org.thoughtcrime.securesms.notifications.DeviceSpecificNotificationConfig
|
||||
import org.thoughtcrime.securesms.util.BottomSheetUtil
|
||||
import org.thoughtcrime.securesms.util.LocalMetrics
|
||||
import org.thoughtcrime.securesms.util.PowerManagerCompat
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
class PromptBatterySaverDialogFragment : FixedRoundedCornerBottomSheetDialogFragment() {
|
||||
|
||||
@@ -58,7 +59,7 @@ class PromptBatterySaverDialogFragment : FixedRoundedCornerBottomSheetDialogFrag
|
||||
|
||||
val learnMoreLink = arguments?.getString(ARG_LEARN_MORE_LINK) ?: getString(R.string.PromptBatterySaverBottomSheet__learn_more_url)
|
||||
binding.message.setLearnMoreVisible(true)
|
||||
binding.message.setLinkColor(ContextCompat.getColor(requireContext(), R.color.signal_colorPrimary))
|
||||
binding.message.setLinkColor(ContextCompat.getColor(requireContext(), CoreUiR.color.signal_colorPrimary))
|
||||
binding.message.setLink(learnMoreLink)
|
||||
|
||||
binding.continueButton.setOnClickListener {
|
||||
|
||||
@@ -2,7 +2,7 @@ package org.thoughtcrime.securesms.components.menu
|
||||
|
||||
import androidx.annotation.ColorRes
|
||||
import androidx.annotation.DrawableRes
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Represents an action to be rendered via [SignalContextMenu] or [SignalBottomActionBar]
|
||||
@@ -10,6 +10,6 @@ import org.thoughtcrime.securesms.R
|
||||
data class ActionItem @JvmOverloads constructor(
|
||||
@DrawableRes val iconRes: Int,
|
||||
val title: CharSequence,
|
||||
@ColorRes val tintRes: Int = R.color.signal_colorOnSurface,
|
||||
@ColorRes val tintRes: Int = CoreUiR.color.signal_colorOnSurface,
|
||||
val action: Runnable
|
||||
)
|
||||
|
||||
@@ -1153,7 +1153,7 @@ private fun CallToActionButton(
|
||||
enabled = enabled,
|
||||
colors = ButtonDefaults.filledTonalButtonColors().copy(
|
||||
containerColor = SignalTheme.colors.colorTransparent5,
|
||||
contentColor = colorResource(R.color.signal_light_colorOnSurface)
|
||||
contentColor = colorResource(CoreUiR.color.signal_light_colorOnSurface)
|
||||
),
|
||||
modifier = Modifier.padding(top = 12.dp)
|
||||
) {
|
||||
@@ -1210,7 +1210,7 @@ private fun RedemptionErrorAlert(
|
||||
.padding(top = 8.dp, bottom = 4.dp)
|
||||
.border(
|
||||
width = 1.dp,
|
||||
color = colorResource(R.color.signal_colorOutline_38),
|
||||
color = colorResource(CoreUiR.color.signal_colorOutline_38),
|
||||
shape = RoundedCornerShape(12.dp)
|
||||
)
|
||||
.padding(vertical = 16.dp)
|
||||
@@ -1366,7 +1366,7 @@ private fun SubscriptionNotFoundCard(
|
||||
onClick = onRenewClick,
|
||||
colors = ButtonDefaults.filledTonalButtonColors().copy(
|
||||
containerColor = SignalTheme.colors.colorTransparent5,
|
||||
contentColor = colorResource(R.color.signal_light_colorOnSurface)
|
||||
contentColor = colorResource(CoreUiR.color.signal_light_colorOnSurface)
|
||||
),
|
||||
modifier = Modifier
|
||||
.padding(top = 24.dp)
|
||||
@@ -1382,7 +1382,7 @@ private fun SubscriptionNotFoundCard(
|
||||
enabled = isRenewEnabled,
|
||||
colors = ButtonDefaults.filledTonalButtonColors().copy(
|
||||
containerColor = SignalTheme.colors.colorTransparent5,
|
||||
contentColor = colorResource(R.color.signal_light_colorOnSurface)
|
||||
contentColor = colorResource(CoreUiR.color.signal_light_colorOnSurface)
|
||||
),
|
||||
modifier = Modifier
|
||||
.padding(top = 24.dp)
|
||||
|
||||
@@ -52,6 +52,7 @@ import org.thoughtcrime.securesms.util.navigation.safeNavigate
|
||||
import org.whispersystems.signalservice.api.subscriptions.ActiveSubscription
|
||||
import java.math.BigDecimal
|
||||
import java.util.Currency
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Unified donation fragment which allows users to choose between monthly or one-time donations.
|
||||
@@ -97,10 +98,10 @@ class DonateToSignalFragment :
|
||||
private val binding by ViewBinderDelegate(DonateToSignalFragmentBinding::bind)
|
||||
|
||||
private val supportTechSummary: CharSequence by lazy {
|
||||
SpannableStringBuilder(SpanUtil.color(ContextCompat.getColor(requireContext(), R.color.signal_colorOnSurfaceVariant), requireContext().getString(R.string.DonateToSignalFragment__private_messaging)))
|
||||
SpannableStringBuilder(SpanUtil.color(ContextCompat.getColor(requireContext(), CoreUiR.color.signal_colorOnSurfaceVariant), requireContext().getString(R.string.DonateToSignalFragment__private_messaging)))
|
||||
.append("\n")
|
||||
.append(
|
||||
SpanUtil.readMore(requireContext(), ContextCompat.getColor(requireContext(), R.color.signal_colorPrimary)) {
|
||||
SpanUtil.readMore(requireContext(), ContextCompat.getColor(requireContext(), CoreUiR.color.signal_colorPrimary)) {
|
||||
findNavController().safeNavigate(DonateToSignalFragmentDirections.actionDonateToSignalFragmentToSubscribeLearnMoreBottomSheetDialog())
|
||||
}
|
||||
)
|
||||
@@ -112,8 +113,8 @@ class DonateToSignalFragment :
|
||||
|
||||
override fun getMaterial3OnScrollHelper(toolbar: Toolbar?): Material3OnScrollHelper {
|
||||
return object : Material3OnScrollHelper(activity = requireActivity(), views = listOf(toolbar!!), lifecycleOwner = viewLifecycleOwner) {
|
||||
override val activeColorSet: ColorSet = ColorSet(R.color.transparent, R.color.signal_colorBackground)
|
||||
override val inactiveColorSet: ColorSet = ColorSet(R.color.transparent, R.color.signal_colorBackground)
|
||||
override val activeColorSet: ColorSet = ColorSet(R.color.transparent, CoreUiR.color.signal_colorBackground)
|
||||
override val inactiveColorSet: ColorSet = ColorSet(R.color.transparent, CoreUiR.color.signal_colorBackground)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@ import org.thoughtcrime.securesms.payments.FiatMoneyUtil
|
||||
import org.thoughtcrime.securesms.util.ViewUtil
|
||||
import org.thoughtcrime.securesms.util.navigation.safeNavigate
|
||||
import org.thoughtcrime.securesms.util.viewModel
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
class CreditCardFragment : Fragment(R.layout.credit_card_fragment) {
|
||||
|
||||
@@ -85,7 +86,7 @@ class CreditCardFragment : Fragment(R.layout.credit_card_fragment) {
|
||||
}
|
||||
}
|
||||
|
||||
binding.description.setLinkColor(ContextCompat.getColor(requireContext(), R.color.signal_colorPrimary))
|
||||
binding.description.setLinkColor(ContextCompat.getColor(requireContext(), CoreUiR.color.signal_colorPrimary))
|
||||
binding.description.setLearnMoreVisible(true)
|
||||
binding.description.setOnLinkClickListener {
|
||||
findNavController().safeNavigate(CreditCardFragmentDirections.actionCreditCardFragmentToYourInformationIsPrivateBottomSheet())
|
||||
|
||||
@@ -31,6 +31,7 @@ import org.thoughtcrime.securesms.payments.FiatMoneyUtil
|
||||
import org.thoughtcrime.securesms.payments.currency.CurrencyUtil
|
||||
import org.thoughtcrime.securesms.util.fragments.requireListener
|
||||
import org.thoughtcrime.securesms.util.viewModel
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Entry point to capturing the necessary payment token to pay for a donation
|
||||
@@ -144,7 +145,7 @@ class GatewaySelectorBottomSheet : DSLSettingsBottomSheetFragment() {
|
||||
|
||||
primaryButton(
|
||||
text = DSLSettingsText.from(R.string.GatewaySelectorBottomSheet__credit_or_debit_card),
|
||||
icon = DSLSettingsIcon.from(R.drawable.credit_card, R.color.signal_colorOnCustom),
|
||||
icon = DSLSettingsIcon.from(R.drawable.credit_card, CoreUiR.color.signal_colorOnCustom),
|
||||
disableOnClick = true,
|
||||
onClick = {
|
||||
lifecycleDisposable += viewModel.updateInAppPaymentMethod(InAppPaymentData.PaymentMethodType.CARD)
|
||||
@@ -233,7 +234,7 @@ class GatewaySelectorBottomSheet : DSLSettingsBottomSheetFragment() {
|
||||
context.getString(R.string.GatewaySelectorBottomSheet__get_a_s_badge, inAppPayment.data.badge!!.name),
|
||||
DSLSettingsText.CenterModifier,
|
||||
DSLSettingsText.BodyLargeModifier,
|
||||
DSLSettingsText.ColorModifier(ContextCompat.getColor(context, R.color.signal_colorOnSurfaceVariant))
|
||||
DSLSettingsText.ColorModifier(ContextCompat.getColor(context, CoreUiR.color.signal_colorOnSurfaceVariant))
|
||||
)
|
||||
)
|
||||
}
|
||||
@@ -252,7 +253,7 @@ class GatewaySelectorBottomSheet : DSLSettingsBottomSheetFragment() {
|
||||
context.resources.getQuantityString(R.plurals.GatewaySelectorBottomSheet__get_a_s_badge_for_d_days, 30, inAppPayment.data.badge!!.name, 30),
|
||||
DSLSettingsText.CenterModifier,
|
||||
DSLSettingsText.BodyLargeModifier,
|
||||
DSLSettingsText.ColorModifier(ContextCompat.getColor(context, R.color.signal_colorOnSurfaceVariant))
|
||||
DSLSettingsText.ColorModifier(ContextCompat.getColor(context, CoreUiR.color.signal_colorOnSurfaceVariant))
|
||||
)
|
||||
)
|
||||
}
|
||||
@@ -271,7 +272,7 @@ class GatewaySelectorBottomSheet : DSLSettingsBottomSheetFragment() {
|
||||
R.string.GatewaySelectorBottomSheet__donate_for_a_friend,
|
||||
DSLSettingsText.CenterModifier,
|
||||
DSLSettingsText.BodyLargeModifier,
|
||||
DSLSettingsText.ColorModifier(ContextCompat.getColor(context, R.color.signal_colorOnSurfaceVariant))
|
||||
DSLSettingsText.ColorModifier(ContextCompat.getColor(context, CoreUiR.color.signal_colorOnSurfaceVariant))
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ import org.thoughtcrime.securesms.util.navigation.safeNavigate
|
||||
import org.whispersystems.signalservice.api.subscriptions.ActiveSubscription
|
||||
import java.util.Currency
|
||||
import java.util.concurrent.TimeUnit
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Fragment displayed when a user enters "Subscriptions" via app settings but is already
|
||||
@@ -67,10 +68,10 @@ class ManageDonationsFragment :
|
||||
private lateinit var launcher: ActivityResultLauncher<InAppPaymentType>
|
||||
|
||||
private val supportTechSummary: CharSequence by lazy {
|
||||
SpannableStringBuilder(SpanUtil.color(ContextCompat.getColor(requireContext(), R.color.signal_colorOnSurfaceVariant), requireContext().getString(R.string.DonateToSignalFragment__private_messaging)))
|
||||
SpannableStringBuilder(SpanUtil.color(ContextCompat.getColor(requireContext(), CoreUiR.color.signal_colorOnSurfaceVariant), requireContext().getString(R.string.DonateToSignalFragment__private_messaging)))
|
||||
.append("\n")
|
||||
.append(
|
||||
SpanUtil.readMore(requireContext(), ContextCompat.getColor(requireContext(), R.color.signal_colorPrimary)) {
|
||||
SpanUtil.readMore(requireContext(), ContextCompat.getColor(requireContext(), CoreUiR.color.signal_colorPrimary)) {
|
||||
findNavController().safeNavigate(ManageDonationsFragmentDirections.actionManageDonationsFragmentToSubscribeLearnMoreBottomSheetDialog())
|
||||
}
|
||||
)
|
||||
@@ -150,8 +151,8 @@ class ManageDonationsFragment :
|
||||
|
||||
override fun getMaterial3OnScrollHelper(toolbar: Toolbar?): Material3OnScrollHelper {
|
||||
return object : Material3OnScrollHelper(activity = requireActivity(), views = listOf(toolbar!!), lifecycleOwner = viewLifecycleOwner) {
|
||||
override val activeColorSet: ColorSet = ColorSet(R.color.transparent, R.color.signal_colorBackground)
|
||||
override val inactiveColorSet: ColorSet = ColorSet(R.color.transparent, R.color.signal_colorBackground)
|
||||
override val activeColorSet: ColorSet = ColorSet(R.color.transparent, CoreUiR.color.signal_colorBackground)
|
||||
override val inactiveColorSet: ColorSet = ColorSet(R.color.transparent, CoreUiR.color.signal_colorBackground)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ import org.thoughtcrime.securesms.util.StickyHeaderDecoration
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
|
||||
import org.thoughtcrime.securesms.util.toLocalDateTime
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
class DonationReceiptListAdapter(onModelClick: (DonationReceiptListItem.Model) -> Unit) : MappingAdapter(), StickyHeaderDecoration.StickyHeaderAdapter<SectionHeaderPreferenceViewHolder> {
|
||||
|
||||
@@ -34,7 +35,7 @@ class DonationReceiptListAdapter(onModelClick: (DonationReceiptListItem.Model) -
|
||||
|
||||
override fun onBindHeaderViewHolder(viewHolder: SectionHeaderPreferenceViewHolder?, position: Int, type: Int) {
|
||||
viewHolder?.itemView?.run {
|
||||
val color = ContextCompat.getColor(context, R.color.signal_colorBackground)
|
||||
val color = ContextCompat.getColor(context, CoreUiR.color.signal_colorBackground)
|
||||
setBackgroundColor(color)
|
||||
}
|
||||
|
||||
|
||||
@@ -222,8 +222,8 @@ class ConversationSettingsFragment : DSLSettingsFragment(
|
||||
override fun getMaterial3OnScrollHelper(toolbar: Toolbar?): Material3OnScrollHelper {
|
||||
return object : Material3OnScrollHelper(activity = requireActivity(), views = listOf(toolbar!!), lifecycleOwner = viewLifecycleOwner) {
|
||||
override val inactiveColorSet = ColorSet(
|
||||
toolbarColorRes = R.color.signal_colorBackground_0,
|
||||
statusBarColorRes = R.color.signal_colorBackground
|
||||
toolbarColorRes = CoreUiR.color.signal_colorBackground_0,
|
||||
statusBarColorRes = CoreUiR.color.signal_colorBackground
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.thoughtcrime.securesms.util.ViewUtil
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingViewHolder
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Renders name, description, about, etc. for a given group or recipient.
|
||||
@@ -79,7 +80,7 @@ object BioTextPreference {
|
||||
).let {
|
||||
SpanUtil.ofSize(it, 24)
|
||||
}.let {
|
||||
SpanUtil.color(ContextCompat.getColor(context, R.color.signal_colorOutline), it)
|
||||
SpanUtil.color(ContextCompat.getColor(context, CoreUiR.color.signal_colorOutline), it)
|
||||
}
|
||||
|
||||
if (isLtr) {
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingViewHolder
|
||||
import org.thoughtcrime.securesms.util.visible
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Renders a Recipient as a row item with an icon, avatar, status, and admin state
|
||||
@@ -88,7 +89,7 @@ object RecipientPreference {
|
||||
if (recipient.isSystemContact) {
|
||||
SpannableStringBuilder(recipient.getDisplayName(context)).apply {
|
||||
val drawable = ContextUtil.requireDrawable(context, R.drawable.symbol_person_circle_24).apply {
|
||||
setTint(ContextCompat.getColor(context, R.color.signal_colorOnSurface))
|
||||
setTint(ContextCompat.getColor(context, CoreUiR.color.signal_colorOnSurface))
|
||||
}
|
||||
SpanUtil.appendCenteredImageSpan(this, drawable, 16, 16)
|
||||
}
|
||||
|
||||
@@ -23,12 +23,12 @@ import androidx.compose.ui.unit.dp
|
||||
import org.signal.core.ui.compose.DayNightPreviews
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.signal.core.ui.compose.horizontalGutters
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.databinding.DslBannerBinding
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.BindingFactory
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.BindingViewHolder
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
|
||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingModel
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Displays a banner to notify the user of certain state or action that needs to be taken.
|
||||
@@ -72,7 +72,7 @@ fun Banner(
|
||||
) {
|
||||
OutlinedCard(
|
||||
shape = RoundedCornerShape(18.dp),
|
||||
border = BorderStroke(width = 1.dp, color = colorResource(R.color.signal_colorOutline_38)),
|
||||
border = BorderStroke(width = 1.dp, color = colorResource(CoreUiR.color.signal_colorOutline_38)),
|
||||
modifier = Modifier
|
||||
.horizontalGutters()
|
||||
.fillMaxWidth()
|
||||
|
||||
@@ -12,10 +12,10 @@ import androidx.core.content.ContextCompat
|
||||
import androidx.lifecycle.DefaultLifecycleObserver
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import org.signal.core.util.dp
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.components.spoiler.SpoilerAnnotation.SpoilerClickableSpan
|
||||
import org.thoughtcrime.securesms.util.AccessibilityUtil
|
||||
import org.thoughtcrime.securesms.util.getLifecycle
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Performs initial calculation on how to render spoilers and then delegates to actually drawing the spoiler sparkles.
|
||||
@@ -50,7 +50,7 @@ class SpoilerRendererDelegate @JvmOverloads constructor(
|
||||
spoilerDrawable = spoilerDrawable,
|
||||
renderForComposing = renderForComposing,
|
||||
padding = 2.dp,
|
||||
composeBackgroundColor = ContextCompat.getColor(view.context, R.color.signal_colorOnSurfaceVariant1)
|
||||
composeBackgroundColor = ContextCompat.getColor(view.context, CoreUiR.color.signal_colorOnSurfaceVariant1)
|
||||
)
|
||||
|
||||
view.addOnAttachStateChangeListener(object : OnAttachStateChangeListener {
|
||||
|
||||
@@ -21,6 +21,7 @@ import androidx.core.graphics.withTranslation
|
||||
import org.signal.core.util.logging.Log
|
||||
import org.thoughtcrime.securesms.R
|
||||
import kotlin.math.roundToInt
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* This displays a circular progress around an icon. The icon is either an upload arrow, a download arrow, or a rectangular stop button.
|
||||
@@ -65,8 +66,8 @@ class TransferProgressView @JvmOverloads constructor(
|
||||
init {
|
||||
val displayDensity = Resources.getSystem().displayMetrics.density
|
||||
val typedArray = context.theme.obtainStyledAttributes(attrs, R.styleable.TransferProgressView, 0, 0)
|
||||
val signalCustomColor = ContextCompat.getColor(context, R.color.signal_colorOnCustom)
|
||||
val signalTransparent2 = ContextCompat.getColor(context, R.color.signal_colorTransparent2)
|
||||
val signalCustomColor = ContextCompat.getColor(context, CoreUiR.color.signal_colorOnCustom)
|
||||
val signalTransparent2 = ContextCompat.getColor(context, CoreUiR.color.signal_colorTransparent2)
|
||||
|
||||
iconColor = typedArray.getColor(R.styleable.TransferProgressView_transferIconColor, signalCustomColor)
|
||||
progressColor = typedArray.getColor(R.styleable.TransferProgressView_progressColor, signalCustomColor)
|
||||
|
||||
@@ -38,6 +38,7 @@ import org.thoughtcrime.securesms.util.ViewUtil
|
||||
import org.thoughtcrime.securesms.util.visible
|
||||
import java.nio.charset.Charset
|
||||
import java.util.Locale
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
class SafetyNumberQrView : ConstraintLayout {
|
||||
|
||||
@@ -109,10 +110,10 @@ class SafetyNumberQrView : ConstraintLayout {
|
||||
|
||||
clipToOutline = true
|
||||
|
||||
ImageViewCompat.setImageTintList(shareButton, ColorStateList.valueOf(ContextCompat.getColor(context, R.color.signal_dark_colorOnSurface)))
|
||||
ImageViewCompat.setImageTintList(shareButton, ColorStateList.valueOf(ContextCompat.getColor(context, CoreUiR.color.signal_dark_colorOnSurface)))
|
||||
setBackgroundColor(ContextCompat.getColor(context, R.color.safety_number_card_blue))
|
||||
codes.forEach {
|
||||
it.setTextColor(ContextCompat.getColor(context, R.color.signal_light_colorOnPrimary))
|
||||
it.setTextColor(ContextCompat.getColor(context, CoreUiR.color.signal_light_colorOnPrimary))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.components.PlaybackSpeedToggleTextView
|
||||
import org.thoughtcrime.securesms.recipients.RecipientId
|
||||
import java.util.concurrent.TimeUnit
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
private const val ANIMATE_DURATION: Long = 150L
|
||||
private const val TO_PAUSE = 1
|
||||
@@ -109,7 +110,7 @@ class VoiceNotePlayerView @JvmOverloads constructor(
|
||||
playPauseToggleView.addValueCallback(
|
||||
KeyPath("**"),
|
||||
LottieProperty.COLOR_FILTER,
|
||||
LottieValueCallback(SimpleColorFilter(ContextCompat.getColor(context, R.color.signal_colorOnSurface)))
|
||||
LottieValueCallback(SimpleColorFilter(ContextCompat.getColor(context, CoreUiR.color.signal_colorOnSurface)))
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -66,13 +66,13 @@ fun CallAudioToggleButton(
|
||||
val containerColor = if (currentOutput == WebRtcAudioOutput.HANDSET || allOutputs.size >= SHOW_PICKER_THRESHOLD) {
|
||||
MaterialTheme.colorScheme.secondaryContainer
|
||||
} else {
|
||||
colorResource(id = R.color.signal_light_colorSecondaryContainer)
|
||||
colorResource(id = CoreUiR.color.signal_light_colorSecondaryContainer)
|
||||
}
|
||||
|
||||
val contentColor = if (currentOutput == WebRtcAudioOutput.HANDSET || allOutputs.size >= SHOW_PICKER_THRESHOLD) {
|
||||
colorResource(id = R.color.signal_light_colorOnPrimary)
|
||||
colorResource(id = CoreUiR.color.signal_light_colorOnPrimary)
|
||||
} else {
|
||||
colorResource(id = R.color.signal_light_colorOnSecondaryContainer)
|
||||
colorResource(id = CoreUiR.color.signal_light_colorOnSecondaryContainer)
|
||||
}
|
||||
|
||||
IconButtons.IconButton(
|
||||
|
||||
@@ -28,6 +28,7 @@ import org.signal.core.ui.compose.IconButtons
|
||||
import org.signal.core.ui.compose.NightPreview
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
private val defaultCallButtonIconSize: Dp = 24.dp
|
||||
|
||||
@@ -49,9 +50,9 @@ private fun ToggleCallButton(
|
||||
colors = IconButtons.run {
|
||||
iconToggleButtonColors(
|
||||
checkedContainerColor = MaterialTheme.colorScheme.secondaryContainer,
|
||||
checkedContentColor = colorResource(id = R.color.signal_light_colorOnPrimary),
|
||||
containerColor = colorResource(id = R.color.signal_light_colorSecondaryContainer),
|
||||
contentColor = colorResource(id = R.color.signal_light_colorOnSecondaryContainer)
|
||||
checkedContentColor = colorResource(id = CoreUiR.color.signal_light_colorOnPrimary),
|
||||
containerColor = colorResource(id = CoreUiR.color.signal_light_colorSecondaryContainer),
|
||||
contentColor = colorResource(id = CoreUiR.color.signal_light_colorOnSecondaryContainer)
|
||||
)
|
||||
}
|
||||
) {
|
||||
@@ -70,7 +71,7 @@ private fun CallButton(
|
||||
contentDescription: String?,
|
||||
modifier: Modifier = Modifier,
|
||||
containerColor: Color = MaterialTheme.colorScheme.secondaryContainer,
|
||||
contentColor: Color = colorResource(id = R.color.signal_light_colorOnPrimary),
|
||||
contentColor: Color = colorResource(id = CoreUiR.color.signal_light_colorOnPrimary),
|
||||
iconSize: Dp = defaultCallButtonIconSize
|
||||
) {
|
||||
val buttonSize = dimensionResource(id = R.dimen.webrtc_button_size)
|
||||
@@ -216,8 +217,8 @@ fun StartCallButton(
|
||||
onClick = onClick,
|
||||
modifier = modifier.height(56.dp),
|
||||
colors = ButtonDefaults.buttonColors(
|
||||
containerColor = colorResource(id = R.color.signal_light_colorPrimary),
|
||||
contentColor = colorResource(id = R.color.signal_light_colorOnPrimary)
|
||||
containerColor = colorResource(id = CoreUiR.color.signal_light_colorPrimary),
|
||||
contentColor = colorResource(id = CoreUiR.color.signal_light_colorOnPrimary)
|
||||
),
|
||||
contentPadding = PaddingValues(horizontal = 48.dp, vertical = 18.dp)
|
||||
) {
|
||||
|
||||
@@ -27,6 +27,7 @@ import androidx.compose.ui.unit.dp
|
||||
import org.signal.core.ui.compose.NightPreview
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Enumeration of the different call states we can display in the CallStateUpdate component.
|
||||
@@ -58,7 +59,7 @@ fun CallStateUpdatePopup(
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
modifier = modifier
|
||||
.background(
|
||||
color = colorResource(id = R.color.signal_light_colorSecondaryContainer),
|
||||
color = colorResource(id = CoreUiR.color.signal_light_colorSecondaryContainer),
|
||||
shape = RoundedCornerShape(50)
|
||||
)
|
||||
.padding(horizontal = 16.dp, vertical = 8.dp)
|
||||
@@ -67,7 +68,7 @@ fun CallStateUpdatePopup(
|
||||
Icon(
|
||||
painter = painterResource(id = callControlsChange.iconRes),
|
||||
contentDescription = null,
|
||||
tint = colorResource(id = R.color.signal_light_colorOnSecondaryContainer),
|
||||
tint = colorResource(id = CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier.size(16.dp)
|
||||
)
|
||||
}
|
||||
@@ -75,7 +76,7 @@ fun CallStateUpdatePopup(
|
||||
Text(
|
||||
text = stringResource(id = callControlsChange.stringRes),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
color = colorResource(id = R.color.signal_light_colorOnSecondaryContainer)
|
||||
color = colorResource(id = CoreUiR.color.signal_light_colorOnSecondaryContainer)
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,6 +41,7 @@ import org.thoughtcrime.securesms.recipients.Recipient
|
||||
import org.thoughtcrime.securesms.recipients.RecipientId
|
||||
import kotlin.time.Duration
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Popup which displays at the top of the screen as people enter and leave the call. Only displayed in group calls.
|
||||
@@ -134,7 +135,7 @@ private fun PopupContent(
|
||||
|
||||
Text(
|
||||
text = description,
|
||||
color = colorResource(R.color.signal_light_colorOnSecondaryContainer),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier
|
||||
.padding(vertical = 14.dp)
|
||||
.padding(start = 10.dp, end = 24.dp)
|
||||
|
||||
@@ -65,6 +65,7 @@ import org.thoughtcrime.securesms.recipients.Recipient
|
||||
import org.thoughtcrime.securesms.recipients.rememberRecipientField
|
||||
import org.thoughtcrime.securesms.ringrtc.CameraState
|
||||
import org.webrtc.RendererCommon
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Displays a remote participant (or local participant in pre-join screen).
|
||||
@@ -599,7 +600,7 @@ private fun RaiseHandIndicator(
|
||||
Row(
|
||||
modifier = modifier
|
||||
.background(
|
||||
color = colorResource(R.color.signal_light_colorSurface),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorSurface),
|
||||
shape = RoundedCornerShape(percent = 50)
|
||||
),
|
||||
verticalAlignment = Alignment.CenterVertically
|
||||
@@ -614,7 +615,7 @@ private fun RaiseHandIndicator(
|
||||
if (name.isNotBlank()) {
|
||||
Text(
|
||||
text = name,
|
||||
color = colorResource(R.color.signal_light_colorOnSurface),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorOnSurface),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
modifier = Modifier.padding(end = 12.dp)
|
||||
)
|
||||
|
||||
@@ -29,9 +29,9 @@ import androidx.compose.ui.res.colorResource
|
||||
import androidx.compose.ui.semantics.Role
|
||||
import androidx.compose.ui.unit.dp
|
||||
import kotlinx.coroutines.delay
|
||||
import org.thoughtcrime.securesms.R
|
||||
import kotlin.time.Duration
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Common popup container for call screen notifications that slide in from the top.
|
||||
@@ -83,7 +83,7 @@ fun CallScreenPopup(
|
||||
.wrapContentSize()
|
||||
.padding(start = 12.dp, top = 30.dp, end = 12.dp)
|
||||
.background(
|
||||
color = colorResource(R.color.signal_light_colorSecondaryContainer),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorSecondaryContainer),
|
||||
shape = RoundedCornerShape(percent = 50)
|
||||
)
|
||||
.clickable(
|
||||
|
||||
@@ -23,7 +23,7 @@ import androidx.compose.ui.res.colorResource
|
||||
import kotlinx.coroutines.flow.drop
|
||||
import org.signal.core.ui.compose.NightPreview
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Tooltip box appropriately styled for the call screen.
|
||||
@@ -45,8 +45,8 @@ fun CallScreenTooltipBox(
|
||||
PlainTooltip(
|
||||
caretShape = DefaultTooltipCaretShape(),
|
||||
shape = TooltipDefaults.plainTooltipContainerShape,
|
||||
containerColor = colorResource(R.color.signal_light_colorPrimary),
|
||||
contentColor = colorResource(R.color.signal_light_colorOnPrimary)
|
||||
containerColor = colorResource(CoreUiR.color.signal_light_colorPrimary),
|
||||
contentColor = colorResource(CoreUiR.color.signal_light_colorOnPrimary)
|
||||
) {
|
||||
Text(text = text)
|
||||
}
|
||||
|
||||
@@ -41,6 +41,7 @@ import org.thoughtcrime.securesms.events.CallParticipant
|
||||
import org.thoughtcrime.securesms.events.CallParticipantId
|
||||
import org.thoughtcrime.securesms.recipients.Recipient
|
||||
import org.thoughtcrime.securesms.recipients.RecipientId
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
private val PIP_METRICS_SELF_PORTRAIT_WIDTH = 48.dp
|
||||
private val PIP_METRICS_SELF_PORTRAIT_HEIGHT = 86.dp
|
||||
@@ -159,7 +160,7 @@ private fun InfoPill(
|
||||
horizontalArrangement = spacedBy(4.dp),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
modifier = modifier
|
||||
.background(color = colorResource(R.color.signal_dark_colorSurface3), shape = RoundedCornerShape(percent = 50))
|
||||
.background(color = colorResource(CoreUiR.color.signal_dark_colorSurface3), shape = RoundedCornerShape(percent = 50))
|
||||
.padding(horizontal = 12.dp, vertical = 6.dp)
|
||||
) {
|
||||
Icon(
|
||||
|
||||
@@ -21,6 +21,7 @@ import org.signal.core.ui.compose.NightPreview
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.thoughtcrime.securesms.R
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Popup shown when a user is remotely muted during a call.
|
||||
@@ -44,13 +45,13 @@ fun RemoteMuteToastPopup(
|
||||
Icon(
|
||||
imageVector = ImageVector.vectorResource(id = R.drawable.ic_mic_off_solid_18),
|
||||
contentDescription = null,
|
||||
tint = colorResource(R.color.signal_light_colorOnSecondaryContainer),
|
||||
tint = colorResource(CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier.size(18.dp)
|
||||
)
|
||||
|
||||
Text(
|
||||
text = message ?: "",
|
||||
color = colorResource(R.color.signal_light_colorOnSecondaryContainer),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier.padding(start = 8.dp)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import org.signal.core.ui.compose.NightPreview
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.thoughtcrime.securesms.R
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Popup shown to hint the user that they can swipe to view screen share.
|
||||
@@ -45,13 +46,13 @@ fun SwipeToSpeakerHintPopup(
|
||||
Icon(
|
||||
imageVector = ImageVector.vectorResource(id = R.drawable.symbol_arrow_down_24),
|
||||
contentDescription = null,
|
||||
tint = colorResource(R.color.signal_light_colorOnSecondaryContainer),
|
||||
tint = colorResource(CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier.size(24.dp)
|
||||
)
|
||||
|
||||
Text(
|
||||
text = stringResource(R.string.CallToastPopupWindow__swipe_to_view_screen_share),
|
||||
color = colorResource(R.color.signal_light_colorOnSecondaryContainer),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier.padding(start = 8.dp)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ import org.signal.core.ui.compose.Previews
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.util.VibrateUtil
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
private const val VIBRATE_DURATION_MS = 50
|
||||
|
||||
@@ -48,7 +49,7 @@ fun WifiToCellularPopup(
|
||||
) {
|
||||
Text(
|
||||
text = stringResource(R.string.WifiToCellularPopupWindow__weak_wifi_switched_to_cellular),
|
||||
color = colorResource(R.color.signal_light_colorOnSecondaryContainer),
|
||||
color = colorResource(CoreUiR.color.signal_light_colorOnSecondaryContainer),
|
||||
modifier = Modifier.padding(horizontal = 24.dp, vertical = 14.dp)
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user