- Fixed a crash on broad queries (e.g. a single letter across several dictionaries): the results list keyed items by dictionary path/offset/word, and duplicate keys are illegal in a Compose list; drop the explicit key, let Paging identify items by position instead (SearchResultsList). - Fixed a disabled dictionary reactivating itself on the next app launch: the active flag is now persisted through PreferencesManager/DataStore and reapplied whenever the dictionary list is rebuilt (LocalDictionaryRepository). - Search results no longer stop at the first ~100-200 matches: the ranked head page hands back a cursor per unfinished prefix range, and IndexEntryPagingSource pages the rest straight from the index, merged alphabetically across dictionaries, until every match is surfaced (IndexSearcher, IndexEntryPagingSource). - Added diacritic-insensitive search: folded index entries are merged into the primary index as aliases, so accented and plain spellings find each other (DslIndexer, IndexSearcher). - Fixed indexing failures on dictionaries with dense non-Latin text: a truncated multi-byte sequence at a sample boundary was misread as invalid UTF-8 and the whole file fell back to UTF-16LE (DslCharsetDetector).
50 lines
2.8 KiB
TOML
50 lines
2.8 KiB
TOML
[versions]
|
|
aboutlibraries = "15.0.4"
|
|
activity_compose = "1.13.0"
|
|
agp = "9.3.0"
|
|
compose_bom = "2026.06.01"
|
|
core = "1.19.0"
|
|
datastore_preferences = "1.2.1"
|
|
documentfile = "1.1.0"
|
|
kotlin = "2.4.10"
|
|
lifecycle_runtime_ktx = "2.11.0"
|
|
okhttp = "5.4.0"
|
|
paging = "3.5.0"
|
|
profileinstaller = "1.4.1"
|
|
kotlinx_coroutines = "1.11.0"
|
|
kotlinx_serialization = "1.11.0"
|
|
|
|
[libraries]
|
|
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activity_compose" }
|
|
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "compose_bom" }
|
|
androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3" }
|
|
androidx-compose-material3-adaptive-layout = { group = "androidx.compose.material3.adaptive", name = "adaptive-layout" }
|
|
androidx-compose-runtime-tracing = { module = "androidx.compose.runtime:runtime-tracing" }
|
|
androidx-compose-ui = { group = "androidx.compose.ui", name = "ui" }
|
|
androidx-compose-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
|
|
androidx-compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
|
|
androidx-core = { module = "androidx.core:core", version.ref = "core" }
|
|
androidx-datastore-preferences = { module = "androidx.datastore:datastore-preferences", version.ref = "datastore_preferences" }
|
|
androidx-documentfile = { module = "androidx.documentfile:documentfile", version.ref = "documentfile" }
|
|
androidx-lifecycle-runtime-ktx = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "lifecycle_runtime_ktx" }
|
|
androidx-lifecycle-runtime-compose = { module = "androidx.lifecycle:lifecycle-runtime-compose", version.ref = "lifecycle_runtime_ktx" }
|
|
androidx-paging-runtime = { module = "androidx.paging:paging-runtime", version.ref = "paging" }
|
|
androidx-paging-compose = { module = "androidx.paging:paging-compose", version.ref = "paging" }
|
|
androidx-profileinstaller = { module = "androidx.profileinstaller:profileinstaller", version.ref = "profileinstaller" }
|
|
okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
|
|
kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinx_coroutines" }
|
|
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx_serialization" }
|
|
|
|
[bundles]
|
|
compose = [
|
|
"androidx-compose-ui",
|
|
"androidx-compose-ui-graphics",
|
|
"androidx-compose-material3"
|
|
]
|
|
|
|
[plugins]
|
|
aboutlibraries = { id = "com.mikepenz.aboutlibraries.plugin.android", version.ref = "aboutlibraries" }
|
|
android-application = { id = "com.android.application", version.ref = "agp" }
|
|
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
|
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|