Skip to content

Commit 0f59bc4

Browse files
committed
Fix live chat badge contrast and tab synchronization bug
1 parent cd28087 commit 0f59bc4

2 files changed

Lines changed: 15 additions & 13 deletions

File tree

app/src/main/java/org/schabi/newpipe/fragments/detail/VideoDetailFragment.kt

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -928,16 +928,14 @@ class VideoDetailFragment :
928928
return
929929
}
930930

931-
val commentsPosition = pageAdapter.getItemPositionByTitle(COMMENTS_TAB_TAG)
932-
val insertPosition = if (commentsPosition >= 0) commentsPosition + 1 else pageAdapter.count
933-
931+
// Append live chat tab at the end to avoid FragmentPagerAdapter
932+
// position synchronization issues when inserting in the middle
934933
pageAdapter.addFragment(
935934
LiveChatFragment.getInstance(serviceId, url, continuation),
936-
LIVE_CHAT_TAB_TAG,
937-
insertPosition
935+
LIVE_CHAT_TAB_TAG
938936
)
939-
tabIcons.add(insertPosition, R.drawable.ic_live_tv)
940-
tabContentDescriptions.add(insertPosition, R.string.live_chat_tab_description)
937+
tabIcons.add(R.drawable.ic_live_tv)
938+
tabContentDescriptions.add(R.string.live_chat_tab_description)
941939
pageAdapter.notifyDataSetUpdate()
942940
updateTabIconsAndContentDescriptions()
943941
updateTabLayoutVisibility()

app/src/main/java/org/schabi/newpipe/ui/components/video/comment/LiveChatSection.kt

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import androidx.compose.foundation.lazy.LazyColumn
1212
import androidx.compose.foundation.lazy.rememberLazyListState
1313
import androidx.compose.material.icons.Icons
1414
import androidx.compose.material.icons.filled.KeyboardArrowUp
15+
import androidx.compose.material3.Badge
1516
import androidx.compose.material3.BadgedBox
1617
import androidx.compose.material3.FloatingActionButton
1718
import androidx.compose.material3.Icon
@@ -106,12 +107,15 @@ fun LiveChatSection(liveChatViewModel: LiveChatViewModel = viewModel()) {
106107
) {
107108
BadgedBox(
108109
badge = {
109-
Text(
110-
text = unreadCount.toString(),
111-
modifier = Modifier.padding(4.dp),
112-
style = MaterialTheme.typography.labelSmall,
113-
color = MaterialTheme.colorScheme.onPrimary
114-
)
110+
Badge(
111+
containerColor = MaterialTheme.colorScheme.error,
112+
contentColor = MaterialTheme.colorScheme.onError
113+
) {
114+
Text(
115+
text = unreadCount.toString(),
116+
style = MaterialTheme.typography.labelSmall
117+
)
118+
}
115119
}
116120
) {
117121
Icon(

0 commit comments

Comments
 (0)