Merge branch 'master' into devel

This commit is contained in:
Koitharu
2025-01-01 15:39:51 +02:00
6 changed files with 14 additions and 12 deletions

View File

@@ -44,6 +44,6 @@ class SyncSettingsFragment : BasePreferenceFragment(R.string.sync_settings), Fra
private fun bindHostSummary() {
val preference = findPreference<Preference>(SyncSettings.KEY_SYNC_URL) ?: return
preference.summary = syncSettings.syncURL
preference.summary = syncSettings.syncUrl
}
}

View File

@@ -32,7 +32,7 @@ class SyncAuthenticator(
private fun tryRefreshToken() = runCatching {
runBlocking {
authApi.authenticate(
syncSettings.syncURL,
syncSettings.syncUrl,
account.name,
accountManager.getPassword(account),
)

View File

@@ -27,13 +27,9 @@ class SyncSettings(
@get:WorkerThread
@set:WorkerThread
var syncURL: String
var syncUrl: String
get() = account?.let {
val result = accountManager.getUserData(it, KEY_SYNC_URL)
if (!result.startsWith("http://") && !result.startsWith("https://")) {
return "http://$result"
}
return result
accountManager.getUserData(it, KEY_SYNC_URL)?.withHttpSchema()
}.ifNullOrEmpty { defaultSyncUrl }
set(value) {
account?.let {
@@ -43,6 +39,12 @@ class SyncSettings(
companion object {
private fun String.withHttpSchema(): String = if (!startsWith("http://") && !startsWith("https://")) {
"http://$this"
} else {
this
}
const val KEY_SYNC_URL = "host"
}
}

View File

@@ -59,7 +59,7 @@ class SyncHelper @AssistedInject constructor(
.addInterceptor(SyncInterceptor(context, account))
.build()
private val baseUrl: String by lazy {
settings.syncURL
settings.syncUrl
}
private val defaultGcPeriod: Long // gc period if sync enabled
get() = TimeUnit.DAYS.toMillis(4)

View File

@@ -52,7 +52,7 @@ class SyncHostDialogFragment : AlertDialogFragment<PreferenceDialogAutocompletet
binding.message.setText(R.string.sync_host_description)
val entries = binding.root.resources.getStringArray(R.array.sync_url_list)
val editText = binding.edit
editText.setText(arguments?.getString(KEY_SYNC_URL).ifNullOrEmpty { syncSettings.syncURL })
editText.setText(arguments?.getString(KEY_SYNC_URL).ifNullOrEmpty { syncSettings.syncUrl })
editText.threshold = 0
editText.setAdapter(ArrayAdapter(binding.root.context, android.R.layout.simple_spinner_dropdown_item, entries))
binding.dropdown.setOnClickListener {
@@ -69,7 +69,7 @@ class SyncHostDialogFragment : AlertDialogFragment<PreferenceDialogAutocompletet
if (!result.startsWith("https://") && !result.startsWith("http://")) {
scheme = "http://"
}
syncSettings.syncURL = "$scheme$result"
syncSettings.syncUrl = "$scheme$result"
parentFragmentManager.setFragmentResult(REQUEST_KEY, bundleOf(KEY_SYNC_URL to "$scheme$result"))
}
}

View File

@@ -31,7 +31,7 @@ material = "1.13.0-alpha09"
moshi = "1.15.2"
okhttp = "4.12.0"
okio = "3.9.1"
parsers = "b1b04d2953"
parsers = "8ce6694232"
preference = "1.2.1"
recyclerview = "1.3.2"
room = "2.6.1"