diff --git a/app/src/main/java/io/nekohasekai/sfa/ui/dashboard/OverviewFragment.kt b/app/src/main/java/io/nekohasekai/sfa/ui/dashboard/OverviewFragment.kt index 4f116f2..dd0bc5f 100644 --- a/app/src/main/java/io/nekohasekai/sfa/ui/dashboard/OverviewFragment.kt +++ b/app/src/main/java/io/nekohasekai/sfa/ui/dashboard/OverviewFragment.kt @@ -164,13 +164,15 @@ class OverviewFragment : Fragment() { ) : RecyclerView.Adapter() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ClashModeItemView { - return ClashModeItemView( + val view = ClashModeItemView( ViewClashModeButtonBinding.inflate( LayoutInflater.from(parent.context), parent, false ) ) + view.binding.clashModeButton.clipToOutline = true + return view } override fun getItemCount(): Int { @@ -186,11 +188,12 @@ class OverviewFragment : Fragment() { RecyclerView.ViewHolder(binding.root) { fun bind(item: String, selected: String) { - binding.clashModeButton.text = item + binding.clashModeButtonText.text = item if (item != selected) { - binding.clashModeButton.setBackgroundColor( - binding.root.context.getAttrColor(com.google.android.material.R.attr.colorButtonNormal) + binding.clashModeButtonText.setTextColor( + binding.root.context.getAttrColor(com.google.android.material.R.attr.colorOnPrimaryContainer) ) + binding.clashModeButton.setBackgroundResource(R.drawable.bg_rounded_rectangle) binding.clashModeButton.setOnClickListener { runCatching { Libbox.newStandaloneCommandClient().setClashMode(item) @@ -202,9 +205,10 @@ class OverviewFragment : Fragment() { } } } else { - binding.clashModeButton.setBackgroundColor( - binding.root.context.getAttrColor(com.google.android.material.R.attr.colorAccent) + binding.clashModeButtonText.setTextColor( + binding.root.context.getAttrColor(com.google.android.material.R.attr.colorOnPrimary) ) + binding.clashModeButton.setBackgroundResource(R.drawable.bg_rounded_rectangle_active) binding.clashModeButton.isClickable = false } diff --git a/app/src/main/res/drawable/bg_rounded_rectangle.xml b/app/src/main/res/drawable/bg_rounded_rectangle.xml new file mode 100644 index 0000000..f242dfc --- /dev/null +++ b/app/src/main/res/drawable/bg_rounded_rectangle.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/src/main/res/drawable/bg_rounded_rectangle_active.xml b/app/src/main/res/drawable/bg_rounded_rectangle_active.xml new file mode 100644 index 0000000..15d92b3 --- /dev/null +++ b/app/src/main/res/drawable/bg_rounded_rectangle_active.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/src/main/res/layout/fragment_dashboard_overview.xml b/app/src/main/res/layout/fragment_dashboard_overview.xml index 0268d36..127091f 100644 --- a/app/src/main/res/layout/fragment_dashboard_overview.xml +++ b/app/src/main/res/layout/fragment_dashboard_overview.xml @@ -424,13 +424,14 @@ + android:orientation="vertical"> @@ -440,7 +441,7 @@ android:id="@+id/clashModeList" android:layout_width="match_parent" android:layout_height="match_parent" - android:layout_marginTop="16dp" + android:padding="8dp" app:layoutManager="androidx.recyclerview.widget.GridLayoutManager" app:spanCount="3" diff --git a/app/src/main/res/layout/view_clash_mode_button.xml b/app/src/main/res/layout/view_clash_mode_button.xml index 80ccb49..7ca8442 100644 --- a/app/src/main/res/layout/view_clash_mode_button.xml +++ b/app/src/main/res/layout/view_clash_mode_button.xml @@ -1,17 +1,20 @@ + android:layout_margin="8dp" + android:background="@drawable/bg_rounded_rectangle_active"> -