Skip to content

Commit 4da3f87

Browse files
authored
Merge pull request #90 from usagisang/issue-41
fix(origin): fix ui bug
2 parents 78cfb14 + ff58a0b commit 4da3f87

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

origin/src/main/java/com/kokomi/origin/explore/flow/NewsFlowAdapter.kt

+1
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,7 @@ internal class NewsFlowAdapter(
228228
}
229229
lifecycleScope.launch {
230230
flowCurrentItem.collect {
231+
start.visibility = View.GONE
231232
if (it.first == adapterPosition) {
232233
playerPool exchange playerView.bindPlayer
233234
playerView.onResume()

origin/src/main/java/com/kokomi/origin/explore/flow/NewsFlowFragment.kt

+7-2
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,12 @@ class NewsFlowFragment<VM : NewsFlowViewModel>(
5858
registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
5959
override fun onPageSelected(position: Int) {
6060
lifecycleScope.launch {
61+
Log.i(TAG, "onPageSelected: $position")
6162
flowCurrentItem emit Pair(position, !flowCurrentItem.value.second)
63+
if(refresh) {
64+
refresh = false
65+
pager2.isUserInputEnabled = true
66+
}
6267
}
6368
}
6469
})
@@ -71,7 +76,6 @@ class NewsFlowFragment<VM : NewsFlowViewModel>(
7176
news.collect {
7277
flowAdapter.notifyDataSetChanged()
7378
if (refresh) {
74-
refresh = false
7579
Log.i(TAG, "update - refresh")
7680
pager2.setCurrentItem(0, false)
7781
}
@@ -115,10 +119,11 @@ class NewsFlowFragment<VM : NewsFlowViewModel>(
115119
private var refresh = false
116120

117121
internal fun refresh() {
122+
pager2.isUserInputEnabled = false
118123
swipe.isRefreshing = true
119-
refresh = true
120124
lifecycleScope.launch {
121125
viewModel.refresh {
126+
refresh = true
122127
Log.i(TAG, "refresh - result = $it")
123128
swipe.isRefreshing = false
124129
}

origin/src/main/java/com/kokomi/origin/player/PlayerPool.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class PlayerPool(
2020

2121
private val playerMap by lazy {
2222
val map = hashMapOf<Int, Player>()
23-
for (i in -1 until size) {
23+
for (i in -1 until size - 1) {
2424
val player = GLPlayerBuilder(appContext)
2525
.setInfiniteLoop(true)
2626
.setRenderFirstFrame(true)
@@ -41,7 +41,7 @@ class PlayerPool(
4141
setMediaItem(MediaItem.fromUrl(url))
4242
prepare()
4343
}
44-
nextBufferKey = (nextBufferKey + 1) % size
44+
nextBufferKey = (nextBufferKey + 1) % (size - 1)
4545
}
4646

4747
private var autoPlay = true

0 commit comments

Comments
 (0)