only check once for filters v2 availability (#4539)

Instead of calling the endpoint every time filters are needed, it will
be called only once and the result cached. This will result in quite
some requests less on instances supporting v2.

I also tested v1 filters and made some small improvements. We should
[remove filters v1
support](https://github.com/tuskyapp/Tusky/issues/4538) some time in the
future though.
This commit is contained in:
Konrad Pozniak 2024-07-03 21:18:09 +02:00 committed by GitHub
commit 8a57bcc3f4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 1470 additions and 127 deletions

View file

@ -39,4 +39,10 @@ interface InstanceDao {
@RewriteQueriesToDropUnusedColumns
@Query("SELECT * FROM InstanceEntity WHERE instance = :instance LIMIT 1")
suspend fun getEmojiInfo(instance: String): EmojisEntity?
@Query("UPDATE InstanceEntity SET filterV2Supported = :filterV2Support WHERE instance = :instance")
suspend fun setFilterV2Support(instance: String, filterV2Support: Boolean)
@Query("SELECT filterV2Supported FROM InstanceEntity WHERE instance = :instance LIMIT 1")
suspend fun getFilterV2Support(instance: String): Boolean
}