From b1259fdc922466440be06235eb2bfe87086d328a Mon Sep 17 00:00:00 2001 From: davidoskky Date: Sat, 12 Apr 2025 23:58:12 +0200 Subject: [PATCH] Support source filter editing The API for filter is undocumented on the Selfoss API reference, but does exist. We can now allow users setting and modifying filters inside the application. --- .../android/UpsertSourceActivity.kt | 3 +++ .../main/res/layout/activity_upsert_source.xml | 17 +++++++++++++++-- androidApp/src/main/res/values/strings.xml | 1 + .../readerforselfossv2/model/SelfossModel.kt | 1 + .../readerforselfossv2/repository/Repository.kt | 5 ++++- .../apps/readerforselfossv2/rest/SelfossApi.kt | 14 ++++++++++---- 6 files changed, 34 insertions(+), 7 deletions(-) diff --git a/androidApp/src/main/java/bou/amine/apps/readerforselfossv2/android/UpsertSourceActivity.kt b/androidApp/src/main/java/bou/amine/apps/readerforselfossv2/android/UpsertSourceActivity.kt index f952bdb..bcc6d35 100644 --- a/androidApp/src/main/java/bou/amine/apps/readerforselfossv2/android/UpsertSourceActivity.kt +++ b/androidApp/src/main/java/bou/amine/apps/readerforselfossv2/android/UpsertSourceActivity.kt @@ -65,6 +65,7 @@ class UpsertSourceActivity : private fun initFields(items: Map) { binding.nameInput.setText(existingSource!!.title) binding.tags.setText(existingSource!!.tags?.joinToString(", ")) + binding.filter.setText(existingSource!!.filter) binding.sourceUri.setText(existingSource!!.params?.url) binding.spoutsSpinner.setSelection(items.keys.indexOf(existingSource!!.spout)) binding.progress.visibility = View.GONE @@ -169,6 +170,7 @@ class UpsertSourceActivity : url, mSpoutsValue!!, binding.tags.text.toString(), + binding.filter.text.toString(), ) } else { repository.createSource( @@ -176,6 +178,7 @@ class UpsertSourceActivity : url, mSpoutsValue!!, binding.tags.text.toString(), + binding.filter.text.toString(), ) } if (successfullyAddedSource) { diff --git a/androidApp/src/main/res/layout/activity_upsert_source.xml b/androidApp/src/main/res/layout/activity_upsert_source.xml index b2ed65b..35df0f8 100644 --- a/androidApp/src/main/res/layout/activity_upsert_source.xml +++ b/androidApp/src/main/res/layout/activity_upsert_source.xml @@ -64,15 +64,28 @@ android:id="@+id/tags" android:layout_width="match_parent" android:layout_height="wrap_content" - android:minHeight="48dp" android:layout_marginTop="16dp" android:autofillHints="false" android:hint="@string/add_source_hint_tags" android:inputType="text" + android:minHeight="48dp" android:textColorHint="?android:textColorPrimary" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/sourceUri" /> + + + app:layout_constraintTop_toBottomOf="@+id/filter" />