Updated action cards to be more colorful
This commit is contained in:
parent
cc7e47bbb6
commit
cb59cc92a3
@ -24,7 +24,7 @@ val redesignModule = module {
|
||||
viewModel { RequestViewModel() }
|
||||
viewModel { SafetynetViewModel(get()) }
|
||||
viewModel { SettingsViewModel() }
|
||||
viewModel { SuperuserViewModel(get(), get(), get(), get()) }
|
||||
viewModel { SuperuserViewModel(get(), get(), get()) }
|
||||
viewModel { ThemeViewModel() }
|
||||
viewModel { InstallViewModel() }
|
||||
|
||||
|
@ -0,0 +1,39 @@
|
||||
package com.topjohnwu.magisk.model.entity.recycler
|
||||
|
||||
import com.topjohnwu.magisk.R
|
||||
import com.topjohnwu.magisk.databinding.ComparableRvItem
|
||||
|
||||
sealed class TappableHeadlineItem : ComparableRvItem<TappableHeadlineItem>() {
|
||||
|
||||
abstract val title: Int
|
||||
abstract val icon: Int
|
||||
|
||||
override val layoutRes = R.layout.item_tappable_headline
|
||||
|
||||
override fun itemSameAs(other: TappableHeadlineItem) =
|
||||
this === other
|
||||
|
||||
override fun contentSameAs(other: TappableHeadlineItem) =
|
||||
title == other.title && icon == other.icon
|
||||
|
||||
// --- listener
|
||||
|
||||
interface Listener {
|
||||
|
||||
fun onItemPressed(item: TappableHeadlineItem)
|
||||
|
||||
}
|
||||
|
||||
// --- objects
|
||||
|
||||
object Hide : TappableHeadlineItem() {
|
||||
override val title = R.string.magisk_hide_md2
|
||||
override val icon = R.drawable.ic_hide_md2
|
||||
}
|
||||
|
||||
object Safetynet : TappableHeadlineItem() {
|
||||
override val title = R.string.safetyNet
|
||||
override val icon = R.drawable.ic_safetynet_md2
|
||||
}
|
||||
|
||||
}
|
@ -11,6 +11,7 @@ import com.topjohnwu.magisk.extensions.subscribeK
|
||||
import com.topjohnwu.magisk.extensions.toggle
|
||||
import com.topjohnwu.magisk.model.entity.MagiskPolicy
|
||||
import com.topjohnwu.magisk.model.entity.recycler.PolicyItem
|
||||
import com.topjohnwu.magisk.model.entity.recycler.TappableHeadlineItem
|
||||
import com.topjohnwu.magisk.model.events.PolicyUpdateEvent
|
||||
import com.topjohnwu.magisk.model.events.SnackbarEvent
|
||||
import com.topjohnwu.magisk.model.events.dialog.BiometricDialog
|
||||
@ -20,26 +21,26 @@ import com.topjohnwu.magisk.redesign.compat.CompatViewModel
|
||||
import com.topjohnwu.magisk.redesign.home.itemBindingOf
|
||||
import com.topjohnwu.magisk.utils.BiometricHelper
|
||||
import com.topjohnwu.magisk.utils.DiffObservableList
|
||||
import com.topjohnwu.magisk.utils.RxBus
|
||||
import com.topjohnwu.magisk.utils.currentLocale
|
||||
import io.reactivex.Single
|
||||
|
||||
class SuperuserViewModel(
|
||||
private val rxBus: RxBus,
|
||||
private val db: PolicyDao,
|
||||
private val packageManager: PackageManager,
|
||||
private val resources: Resources
|
||||
) : CompatViewModel() {
|
||||
) : CompatViewModel(), TappableHeadlineItem.Listener {
|
||||
|
||||
val items = diffListOf<PolicyItem>()
|
||||
val itemBinding = itemBindingOf<PolicyItem> {
|
||||
val items = diffListOf<ComparableRvItem<*>>()
|
||||
val itemBinding = itemBindingOf<ComparableRvItem<*>> {
|
||||
it.bindExtra(BR.viewModel, this)
|
||||
it.bindExtra(BR.listener, this)
|
||||
}
|
||||
|
||||
init {
|
||||
rxBus.register<PolicyUpdateEvent>()
|
||||
.subscribeK { updatePolicy(it) }
|
||||
.add()
|
||||
companion object {
|
||||
private val menuOptions = listOf(
|
||||
TappableHeadlineItem.Hide,
|
||||
TappableHeadlineItem.Safetynet
|
||||
)
|
||||
}
|
||||
|
||||
// ---
|
||||
@ -56,6 +57,7 @@ class SuperuserViewModel(
|
||||
).compare(o1, o2)
|
||||
}
|
||||
.toList()
|
||||
.map { menuOptions + it }
|
||||
.map { it to items.calculateDiff(it) }
|
||||
.applySchedulers()
|
||||
.applyViewModel(this)
|
||||
@ -63,12 +65,19 @@ class SuperuserViewModel(
|
||||
|
||||
// ---
|
||||
|
||||
fun safetynetPressed() = Navigation.safetynet().publish()
|
||||
fun hidePressed() = Navigation.hide().publish()
|
||||
@Suppress("REDUNDANT_ELSE_IN_WHEN")
|
||||
override fun onItemPressed(item: TappableHeadlineItem) = when (item) {
|
||||
TappableHeadlineItem.Hide -> hidePressed()
|
||||
TappableHeadlineItem.Safetynet -> safetynetPressed()
|
||||
else -> Unit
|
||||
}
|
||||
|
||||
private fun safetynetPressed() = Navigation.safetynet().publish()
|
||||
private fun hidePressed() = Navigation.hide().publish()
|
||||
|
||||
fun deletePressed(item: PolicyItem) {
|
||||
fun updateState() = deletePolicy(item.item)
|
||||
.subscribeK { items.removeAll { it.itemSameAs(item) } }
|
||||
.subscribeK { items.removeAll { it.genericItemSameAs(item) } }
|
||||
.add()
|
||||
|
||||
if (BiometricHelper.isEnabled) {
|
||||
|
5
app/src/main/res/color/color_secondary_transient.xml
Normal file
5
app/src/main/res/color/color_secondary_transient.xml
Normal file
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="?colorDisabled" android:state_enabled="false" />
|
||||
<item android:color="?colorSecondary" />
|
||||
</selector>
|
@ -28,7 +28,7 @@
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/settings_card_redesign"
|
||||
style="@style/WidgetFoundation.Card"
|
||||
style="@style/WidgetFoundation.Card.Variant.Secondary"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/l1"
|
||||
@ -51,7 +51,7 @@
|
||||
android:gravity="start"
|
||||
android:paddingStart="@dimen/l1"
|
||||
android:text="Redesign"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body.Secondary"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/settings_card_redesign_switch"
|
||||
@ -75,7 +75,7 @@
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/settings_card_theme"
|
||||
style="@style/WidgetFoundation.Card"
|
||||
style="@style/WidgetFoundation.Card.Variant.Secondary"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/l1"
|
||||
@ -91,7 +91,7 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/settings_card_theme_dark_icon"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
style="@style/WidgetFoundation.Icon.Secondary"
|
||||
android:background="@null"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
@ -100,7 +100,7 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/settings_card_theme_dark_pointer"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
style="@style/WidgetFoundation.Icon.Secondary"
|
||||
android:background="@null"
|
||||
android:rotation="180"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
@ -116,7 +116,7 @@
|
||||
android:gravity="start|center_vertical"
|
||||
android:singleLine="true"
|
||||
android:text="@string/section_theme"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body.Secondary"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/settings_card_theme_dark_pointer"
|
||||
|
@ -13,176 +13,51 @@
|
||||
|
||||
</data>
|
||||
|
||||
<androidx.core.widget.NestedScrollView
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false"
|
||||
android:fillViewport="true"
|
||||
android:paddingTop="@{viewModel.insets.top + (int) @dimen/internal_action_bar_size}"
|
||||
android:paddingBottom="@{viewModel.insets.bottom + (int) @dimen/l2}"
|
||||
tools:layout_marginTop="24dp"
|
||||
tools:paddingTop="@dimen/l1">
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
dividerHorizontal="@{R.drawable.divider_l1}"
|
||||
dividerVertical="@{R.drawable.divider_l1}"
|
||||
goneUnless="@{viewModel.loaded || !viewModel.items.empty}"
|
||||
itemBinding="@{viewModel.itemBinding}"
|
||||
items="@{viewModel.items}"
|
||||
nestedScrollingEnabled="@{false}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false"
|
||||
android:orientation="vertical"
|
||||
android:paddingStart="@dimen/l1"
|
||||
android:paddingTop="@{viewModel.insets.top + (int) @dimen/internal_action_bar_size + (int) @dimen/l1}"
|
||||
android:paddingBottom="@{viewModel.insets.bottom + (int) @dimen/l2}"
|
||||
app:layoutManager="androidx.recyclerview.widget.StaggeredGridLayoutManager"
|
||||
app:spanCount="2"
|
||||
tools:layout_marginTop="24dp"
|
||||
tools:listitem="@layout/item_policy_md2"
|
||||
tools:paddingTop="@dimen/l1" />
|
||||
|
||||
<LinearLayout
|
||||
goneUnless="@{viewModel.loading && viewModel.items.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingTop="@dimen/l1">
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/superuser_hide"
|
||||
style="@style/WidgetFoundation.Card"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/l1"
|
||||
android:layout_marginEnd="@dimen/l1"
|
||||
android:onClick="@{() -> viewModel.hidePressed()}"
|
||||
app:layout_constraintEnd_toStartOf="@+id/superuser_safetynet"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/superuser_hide_icon"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
android:background="@null"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_hide_md2" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:requiresFadingEdge="horizontal"
|
||||
android:singleLine="true"
|
||||
android:text="@string/magisk_hide_md2"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/superuser_hide_icon_pointer"
|
||||
app:layout_constraintStart_toEndOf="@+id/superuser_hide_icon"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/superuser_hide_icon_pointer"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
android:background="@null"
|
||||
android:rotation="180"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_back_md2" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/superuser_safetynet"
|
||||
style="@style/WidgetFoundation.Card"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/l1"
|
||||
android:onClick="@{() -> viewModel.safetynetPressed()}"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/superuser_hide"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/superuser_safetynet_icon"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
android:background="@null"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_safetynet_md2" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:requiresFadingEdge="horizontal"
|
||||
android:singleLine="true"
|
||||
android:text="@string/safetyNet"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/superuser_safetynet_icon_pointer"
|
||||
app:layout_constraintStart_toEndOf="@+id/superuser_safetynet_icon"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/superuser_safetynet_icon_pointer"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
android:background="@null"
|
||||
android:rotation="180"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_back_md2" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<androidx.constraintlayout.widget.Barrier
|
||||
android:id="@+id/superuser_top_barrier"
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:barrierDirection="bottom"
|
||||
app:constraint_referenced_ids="superuser_hide,superuser_safetynet" />
|
||||
android:text="@string/safetynet_attest_loading"
|
||||
android:textAppearance="@style/AppearanceFoundation.Title"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
dividerHorizontal="@{R.drawable.divider_l1}"
|
||||
dividerVertical="@{R.drawable.divider_l1}"
|
||||
goneUnless="@{viewModel.loaded || !viewModel.items.empty}"
|
||||
itemBinding="@{viewModel.itemBinding}"
|
||||
items="@{viewModel.items}"
|
||||
nestedScrollingEnabled="@{false}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:clipToPadding="false"
|
||||
android:orientation="vertical"
|
||||
android:paddingStart="@dimen/l1"
|
||||
android:paddingTop="@dimen/l1"
|
||||
android:paddingBottom="@dimen/l1"
|
||||
app:layoutManager="androidx.recyclerview.widget.StaggeredGridLayoutManager"
|
||||
app:layout_constraintTop_toBottomOf="@+id/superuser_top_barrier"
|
||||
app:spanCount="2"
|
||||
tools:listitem="@layout/item_policy_md2" />
|
||||
<ProgressBar
|
||||
style="@style/WidgetFoundation.ProgressBar.Indeterminate"
|
||||
android:layout_marginTop="@dimen/l1" />
|
||||
|
||||
<LinearLayout
|
||||
goneUnless="@{viewModel.loading && viewModel.items.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/superuser_top_barrier">
|
||||
</LinearLayout>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/safetynet_attest_loading"
|
||||
android:textAppearance="@style/AppearanceFoundation.Title"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<ProgressBar
|
||||
style="@style/WidgetFoundation.ProgressBar.Indeterminate"
|
||||
android:layout_marginTop="@dimen/l1" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
</FrameLayout>
|
||||
|
||||
</layout>
|
@ -31,7 +31,7 @@
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
android:id="@+id/theme_card_dark"
|
||||
style="@style/WidgetFoundation.Card"
|
||||
style="@style/WidgetFoundation.Card.Variant.Secondary"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:onClick="@{() -> viewModel.darkModePressed()}"
|
||||
@ -46,7 +46,7 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/settings_card_dark_icon"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
style="@style/WidgetFoundation.Icon.Secondary"
|
||||
android:background="@null"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
@ -55,7 +55,7 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/settings_card_dark_pointer"
|
||||
style="@style/WidgetFoundation.Icon"
|
||||
style="@style/WidgetFoundation.Icon.Secondary"
|
||||
android:background="@null"
|
||||
android:rotation="180"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
@ -71,7 +71,7 @@
|
||||
android:gravity="start|center_vertical"
|
||||
android:singleLine="true"
|
||||
android:text="@string/settings_dark_mode_title"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body.Secondary"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/settings_card_dark_pointer"
|
||||
|
67
app/src/main/res/layout/item_tappable_headline.xml
Normal file
67
app/src/main/res/layout/item_tappable_headline.xml
Normal file
@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<data>
|
||||
|
||||
<variable
|
||||
name="item"
|
||||
type="com.topjohnwu.magisk.model.entity.recycler.TappableHeadlineItem" />
|
||||
|
||||
<variable
|
||||
name="listener"
|
||||
type="com.topjohnwu.magisk.model.entity.recycler.TappableHeadlineItem.Listener" />
|
||||
|
||||
</data>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
style="@style/WidgetFoundation.Card.Variant.Secondary"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:onClick="@{() -> listener.onItemPressed(item)}"
|
||||
tools:layout_gravity="center">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/tappable_icon"
|
||||
style="@style/WidgetFoundation.Icon.Secondary"
|
||||
android:background="@null"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@{item.icon}"
|
||||
tools:srcCompat="@drawable/ic_hide_md2" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:requiresFadingEdge="horizontal"
|
||||
android:singleLine="true"
|
||||
android:text="@{item.title}"
|
||||
android:textAppearance="@style/AppearanceFoundation.Body.Secondary"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/headline_icon_pointer"
|
||||
app:layout_constraintStart_toEndOf="@+id/tappable_icon"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="@string/magisk_hide_md2" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/headline_icon_pointer"
|
||||
style="@style/WidgetFoundation.Icon.Secondary"
|
||||
android:background="@null"
|
||||
android:rotation="180"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_back_md2" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
</layout>
|
@ -48,6 +48,14 @@
|
||||
<item name="android:textColor">?attr/colorOnSurfaceVariant</item>
|
||||
</style>
|
||||
|
||||
<style name="AppearanceFoundation.Body.Primary">
|
||||
<item name="android:textColor">?attr/colorPrimary</item>
|
||||
</style>
|
||||
|
||||
<style name="AppearanceFoundation.Body.Secondary">
|
||||
<item name="android:textColor">?attr/colorSecondary</item>
|
||||
</style>
|
||||
|
||||
<style name="AppearanceFoundation.Body.OnPrimary">
|
||||
<item name="android:textColor">?attr/colorOnPrimary</item>
|
||||
</style>
|
||||
|
@ -30,6 +30,14 @@
|
||||
<item name="strokeWidth">1.5dp</item>
|
||||
</style>
|
||||
|
||||
<style name="WidgetFoundation.Card.Variant.Primary">
|
||||
<item name="strokeColor">?colorPrimary</item>
|
||||
</style>
|
||||
|
||||
<style name="WidgetFoundation.Card.Variant.Secondary">
|
||||
<item name="strokeColor">?colorSecondary</item>
|
||||
</style>
|
||||
|
||||
<style name="WidgetFoundation.Card.Elevated" parent="Widget.MaterialComponents.CardView">
|
||||
<item name="cardBackgroundColor">?colorSurfaceSurfaceVariant</item>
|
||||
<item name="cardCornerRadius">@dimen/l_50</item>
|
||||
@ -138,6 +146,10 @@
|
||||
<item name="tint">@color/color_primary_transient</item>
|
||||
</style>
|
||||
|
||||
<style name="WidgetFoundation.Icon.Secondary">
|
||||
<item name="tint">@color/color_secondary_transient</item>
|
||||
</style>
|
||||
|
||||
<style name="WidgetFoundation.Icon.OnPrimary">
|
||||
<item name="tint">@color/color_on_primary_transient</item>
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user