feat: Markdown support for disclamer
This commit is contained in:
parent
059b17af9a
commit
b511b26aa1
5 changed files with 35 additions and 16 deletions
|
@ -20,19 +20,6 @@
|
||||||
"versionName": "0.10.5-0.14.2",
|
"versionName": "0.10.5-0.14.2",
|
||||||
"outputFile": "ananas-v0.10.5-0.14.2-Ananas-armeabi-v7a.apk"
|
"outputFile": "ananas-v0.10.5-0.14.2-Ananas-armeabi-v7a.apk"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "ONE_OF_MANY",
|
|
||||||
"filters": [
|
|
||||||
{
|
|
||||||
"filterType": "ABI",
|
|
||||||
"value": "x86_64"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"attributes": [],
|
|
||||||
"versionCode": 15,
|
|
||||||
"versionName": "0.10.5-0.14.2",
|
|
||||||
"outputFile": "ananas-v0.10.5-0.14.2-Ananas-x86_64.apk"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "ONE_OF_MANY",
|
"type": "ONE_OF_MANY",
|
||||||
"filters": [
|
"filters": [
|
||||||
|
@ -46,6 +33,19 @@
|
||||||
"versionName": "0.10.5-0.14.2",
|
"versionName": "0.10.5-0.14.2",
|
||||||
"outputFile": "ananas-v0.10.5-0.14.2-Ananas-arm64-v8a.apk"
|
"outputFile": "ananas-v0.10.5-0.14.2-Ananas-arm64-v8a.apk"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "ONE_OF_MANY",
|
||||||
|
"filters": [
|
||||||
|
{
|
||||||
|
"filterType": "ABI",
|
||||||
|
"value": "x86_64"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"attributes": [],
|
||||||
|
"versionCode": 15,
|
||||||
|
"versionName": "0.10.5-0.14.2",
|
||||||
|
"outputFile": "ananas-v0.10.5-0.14.2-Ananas-x86_64.apk"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "ONE_OF_MANY",
|
"type": "ONE_OF_MANY",
|
||||||
"filters": [
|
"filters": [
|
||||||
|
@ -67,8 +67,8 @@
|
||||||
"maxApi": 30,
|
"maxApi": 30,
|
||||||
"baselineProfiles": [
|
"baselineProfiles": [
|
||||||
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-armeabi-v7a.dm",
|
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-armeabi-v7a.dm",
|
||||||
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-x86_64.dm",
|
|
||||||
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-arm64-v8a.dm",
|
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-arm64-v8a.dm",
|
||||||
|
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-x86_64.dm",
|
||||||
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-x86.dm"
|
"baselineProfiles/1/ananas-v0.10.5-0.14.2-Ananas-x86.dm"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -77,8 +77,8 @@
|
||||||
"maxApi": 2147483647,
|
"maxApi": 2147483647,
|
||||||
"baselineProfiles": [
|
"baselineProfiles": [
|
||||||
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-armeabi-v7a.dm",
|
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-armeabi-v7a.dm",
|
||||||
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-x86_64.dm",
|
|
||||||
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-arm64-v8a.dm",
|
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-arm64-v8a.dm",
|
||||||
|
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-x86_64.dm",
|
||||||
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-x86.dm"
|
"baselineProfiles/0/ananas-v0.10.5-0.14.2-Ananas-x86.dm"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -132,6 +132,7 @@ dependencies {
|
||||||
implementation(libs.material)
|
implementation(libs.material)
|
||||||
implementation(libs.media3.ffmpeg.decoder)
|
implementation(libs.media3.ffmpeg.decoder)
|
||||||
implementation(libs.timber)
|
implementation(libs.timber)
|
||||||
|
implementation(libs.markwon)
|
||||||
|
|
||||||
coreLibraryDesugaring(libs.android.desugar.jdk)
|
coreLibraryDesugaring(libs.android.desugar.jdk)
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@ import com.nomadics9.ananas.database.ServerDatabaseDao
|
||||||
import com.nomadics9.ananas.databinding.FragmentLoginBinding
|
import com.nomadics9.ananas.databinding.FragmentLoginBinding
|
||||||
import com.nomadics9.ananas.viewmodels.LoginEvent
|
import com.nomadics9.ananas.viewmodels.LoginEvent
|
||||||
import com.nomadics9.ananas.viewmodels.LoginViewModel
|
import com.nomadics9.ananas.viewmodels.LoginViewModel
|
||||||
|
import io.noties.markwon.Markwon
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
@ -157,7 +158,21 @@ class LoginFragment : Fragment() {
|
||||||
binding.editTextPasswordLayout.isEnabled = true
|
binding.editTextPasswordLayout.isEnabled = true
|
||||||
|
|
||||||
uiState.disclaimer?.let { disclaimer ->
|
uiState.disclaimer?.let { disclaimer ->
|
||||||
binding.loginDisclaimer.text = fromHtml(disclaimer, 0)
|
if (BuildConfig.FLAVOR == "Ananas") {
|
||||||
|
val lines = disclaimer.lines()
|
||||||
|
val lineToRemoveIndex = 3
|
||||||
|
val filteredLines = lines.toMutableList().apply {
|
||||||
|
if (size > lineToRemoveIndex) {
|
||||||
|
removeAt(lineToRemoveIndex)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
val filteredDisclaimer = filteredLines.joinToString("\n")
|
||||||
|
val markwon = Markwon.create(requireContext())
|
||||||
|
markwon.setMarkdown(binding.loginDisclaimer, filteredDisclaimer)
|
||||||
|
} else {
|
||||||
|
val markwon = Markwon.create(requireContext())
|
||||||
|
markwon.setMarkdown(binding.loginDisclaimer, disclaimer)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -158,6 +158,7 @@
|
||||||
android:id="@+id/login_disclaimer"
|
android:id="@+id/login_disclaimer"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:gravity="center"
|
||||||
android:layout_marginHorizontal="24dp"
|
android:layout_marginHorizontal="24dp"
|
||||||
android:layout_margin="24dp"
|
android:layout_margin="24dp"
|
||||||
android:textSize="16sp"
|
android:textSize="16sp"
|
||||||
|
|
|
@ -38,6 +38,7 @@ libmpv = "0.3.0"
|
||||||
material = "1.12.0"
|
material = "1.12.0"
|
||||||
media3-ffmpeg-decoder = "1.3.1+2"
|
media3-ffmpeg-decoder = "1.3.1+2"
|
||||||
timber = "5.0.1"
|
timber = "5.0.1"
|
||||||
|
markwon = "4.6.2"
|
||||||
|
|
||||||
[libraries]
|
[libraries]
|
||||||
aboutlibraries-core = { group = "com.mikepenz", name = "aboutlibraries-core", version.ref = "aboutlibraries" }
|
aboutlibraries-core = { group = "com.mikepenz", name = "aboutlibraries-core", version.ref = "aboutlibraries" }
|
||||||
|
@ -99,6 +100,7 @@ material = { group = "com.google.android.material", name = "material", version.r
|
||||||
media3-ffmpeg-decoder = { group = "org.jellyfin.media3", name = "media3-ffmpeg-decoder", version.ref = "media3-ffmpeg-decoder" }
|
media3-ffmpeg-decoder = { group = "org.jellyfin.media3", name = "media3-ffmpeg-decoder", version.ref = "media3-ffmpeg-decoder" }
|
||||||
timber = { group = "com.jakewharton.timber", name = "timber", version.ref = "timber" }
|
timber = { group = "com.jakewharton.timber", name = "timber", version.ref = "timber" }
|
||||||
kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
|
kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
|
||||||
|
markwon = { group = "io.noties.markwon", name = "core", version.ref = "markwon" }
|
||||||
|
|
||||||
[plugins]
|
[plugins]
|
||||||
aboutlibraries = { id = "com.mikepenz.aboutlibraries.plugin", version.ref = "aboutlibraries" }
|
aboutlibraries = { id = "com.mikepenz.aboutlibraries.plugin", version.ref = "aboutlibraries" }
|
||||||
|
|
Loading…
Reference in a new issue