Trim line breaks in manga info only when collapsed (#5818)
* don't trim newlines if summary expanded * move description trim logic to separate function * logic error oops * let's try something * fix bug on first load makes it so that, description text is trimmed when entering manga from library Co-authored-by: Andreas <andreas.everos@gmail.com> Co-authored-by: Andreas <andreas.everos@gmail.com> (cherry picked from commit f683f21ee2daf6787e258b852b847582535221c1) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
This commit is contained in:
parent
44b6983b3d
commit
15cd238223
@ -376,14 +376,7 @@ class MangaInfoHeaderAdapter(
|
|||||||
showMangaInfo(hasInfoContent)
|
showMangaInfo(hasInfoContent)
|
||||||
if (hasInfoContent) {
|
if (hasInfoContent) {
|
||||||
// Update description TextView.
|
// Update description TextView.
|
||||||
binding.mangaSummaryText.text = if (manga.description.isNullOrBlank()) {
|
binding.mangaSummaryText.text = updateDescription(manga.description, (fromSource || isTablet).not())
|
||||||
view.context.getString(R.string.unknown)
|
|
||||||
} else {
|
|
||||||
// Max lines of 3 with a blank line looks whack so we remove
|
|
||||||
// any line breaks that is 2 or more and replace it with 1
|
|
||||||
manga.description!!
|
|
||||||
.replace(Regex("[\\r\\n]{2,}", setOf(RegexOption.MULTILINE)), "\n")
|
|
||||||
}
|
|
||||||
|
|
||||||
// SY -->
|
// SY -->
|
||||||
if (manga.description == "meta") {
|
if (manga.description == "meta") {
|
||||||
@ -465,6 +458,8 @@ class MangaInfoHeaderAdapter(
|
|||||||
binding.mangaSummarySection.transitionToEnd()
|
binding.mangaSummarySection.transitionToEnd()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
binding.mangaSummaryText.text = updateDescription(manga.description, isCurrentlyExpanded)
|
||||||
|
|
||||||
binding.mangaSummaryText.maxLines = if (isCurrentlyExpanded) {
|
binding.mangaSummaryText.maxLines = if (isCurrentlyExpanded) {
|
||||||
maxLines
|
maxLines
|
||||||
} else {
|
} else {
|
||||||
@ -472,6 +467,22 @@ class MangaInfoHeaderAdapter(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun updateDescription(description: String?, isCurrentlyExpanded: Boolean): CharSequence? {
|
||||||
|
return if (description.isNullOrBlank()) {
|
||||||
|
view.context.getString(R.string.unknown)
|
||||||
|
} else {
|
||||||
|
// Max lines of 3 with a blank line looks whack so we remove
|
||||||
|
// any line breaks that is 2 or more and replace it with 1
|
||||||
|
// however, don't do this if already expanded because we need those blank lines
|
||||||
|
if (!isCurrentlyExpanded) {
|
||||||
|
description
|
||||||
|
} else {
|
||||||
|
description
|
||||||
|
.replace(Regex("[\\r\\n]{2,}", setOf(RegexOption.MULTILINE)), "\n")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun setChipsWithNamespace(genre: String?, meta: RaisedSearchMetadata?) {
|
private fun setChipsWithNamespace(genre: String?, meta: RaisedSearchMetadata?) {
|
||||||
val namespaceTags = when {
|
val namespaceTags = when {
|
||||||
meta != null -> {
|
meta != null -> {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user