fix(custom-theme): fix cursor color in migration-bottom-sheet (#885)

This commit is contained in:
Cuong-Tran 2025-05-03 23:49:57 +07:00
parent e40abcf40b
commit 24b6c4aa3c
3 changed files with 21 additions and 17 deletions

View file

@ -12,7 +12,6 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.unit.dp
import androidx.core.content.getSystemService
import androidx.core.graphics.drawable.toDrawable
import com.google.android.material.progressindicator.LinearProgressIndicator
import com.google.android.material.textfield.TextInputEditText
import com.google.android.material.textfield.TextInputLayout
@ -236,14 +235,13 @@ class AndroidViewColorScheme(
* @param editText The EditText to set the color for.
*/
fun setEditTextColor(
editText: EditText,
editText: TextInputEditText,
) {
editText.setTextColor(onSurfaceVariant)
editText.highlightColor = inversePrimary
editText.backgroundTintList = editTextBackgroundTintList
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
editText.textCursorDrawable = primary.toDrawable()
editText.textSelectHandle?.let { drawable ->
drawable.setTint(primary)
editText.setTextSelectHandle(drawable)

View file

@ -81,6 +81,7 @@ fun MigrationBottomSheetDialog(
binding.HideNotFoundManga.thumbTintList = colorScheme.thumbTintList
binding.OnlyShowUpdates.thumbTintList = colorScheme.thumbTintList
colorScheme.setTextInputLayoutColor(binding.extraSearchParamInputLayout)
colorScheme.setEditTextColor(binding.extraSearchParamText)
// KMK <--
binding.root
@ -119,9 +120,9 @@ class MigrationBottomSheetDialogState(
binding.migDeleteDownloaded.setOnCheckedChangeListener { _, _ -> setFlags(binding) }
binding.useSmartSearch.bindToPreference(preferences.smartMigration())
binding.extraSearchParamText.isVisible = false
binding.extraSearchParamInputLayout.isVisible = false
binding.extraSearchParam.setOnCheckedChangeListener { _, isChecked ->
binding.extraSearchParamText.isVisible = isChecked
binding.extraSearchParamInputLayout.isVisible = isChecked
}
binding.sourceGroup.bindToPreference(preferences.useSourceWithMost())
@ -142,8 +143,8 @@ class MigrationBottomSheetDialogState(
preferences.hideNotFoundMigration().set(binding.HideNotFoundManga.isChecked)
preferences.showOnlyUpdatesMigration().set(binding.OnlyShowUpdates.isChecked)
onStartMigration.value(
if (binding.useSmartSearch.isChecked && binding.extraSearchParamText.text.isNotBlank()) {
binding.extraSearchParamText.toString()
if (binding.useSmartSearch.isChecked && !binding.extraSearchParamText.text.isNullOrBlank()) {
binding.extraSearchParamText.text.toString()
} else {
null
},
@ -154,7 +155,7 @@ class MigrationBottomSheetDialogState(
if (!fullSettings) {
binding.useSmartSearch.isVisible = false
binding.extraSearchParam.isVisible = false
binding.extraSearchParamText.isVisible = false
binding.extraSearchParamInputLayout.isVisible = false
binding.sourceGroup.isVisible = false
binding.skipStep.isVisible = false
binding.migrateBtn.text = binding.root.context.stringResource(MR.strings.action_save)

View file

@ -182,16 +182,21 @@
android:paddingVertical="16dp"
android:text="@string/include_extra_search_parameter" />
<EditText
android:id="@+id/extra_search_param_text"
<com.google.android.material.textfield.TextInputLayout
app:boxBackgroundMode="none"
android:id="@+id/extra_search_param_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:ems="10"
android:hint="@string/search_parameter"
android:importantForAutofill="no"
android:inputType="textPersonName"
android:textSize="16sp" />
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/extra_search_param_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/search_parameter"
android:importantForAutofill="no"
android:inputType="textPersonName"
android:textSize="14sp"/>
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/skip_step"