修改sentry上的bug (4820/4822/4952)
This commit is contained in:
@ -9,6 +9,7 @@ import android.widget.LinearLayout
|
||||
import android.widget.RelativeLayout
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.fragment.app.FragmentTransaction
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.gh.base.BaseRecyclerViewHolder
|
||||
@ -263,11 +264,19 @@ class PackageCheckDialogFragment : BaseDialogFragment() {
|
||||
var dialogFragment = activity.supportFragmentManager.findFragmentByTag(PackageCheckDialogFragment::class.java.simpleName) as? PackageCheckDialogFragment
|
||||
if (dialogFragment == null) {
|
||||
dialogFragment = PackageCheckDialogFragment()
|
||||
}
|
||||
dialogFragment.packageDialogEntity = packageDialogEntity
|
||||
dialogFragment.callBack = callBack
|
||||
dialogFragment.packageDialogEntity = packageDialogEntity
|
||||
dialogFragment.callBack = callBack
|
||||
|
||||
dialogFragment.show(activity.supportFragmentManager, PackageCheckDialogFragment::class.java.simpleName)
|
||||
} else {
|
||||
dialogFragment.packageDialogEntity = packageDialogEntity
|
||||
dialogFragment.callBack = callBack
|
||||
|
||||
val transaction: FragmentTransaction = activity.supportFragmentManager.beginTransaction()
|
||||
transaction.show(dialogFragment)
|
||||
transaction.commit()
|
||||
}
|
||||
|
||||
dialogFragment.show(activity.supportFragmentManager, PackageCheckDialogFragment::class.java.simpleName)
|
||||
}
|
||||
|
||||
fun isAllPackageInstalled(packageDialogEntity: PackageDialogEntity): Boolean {
|
||||
|
||||
@ -9,6 +9,7 @@ import android.widget.TextView
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
||||
import com.gh.base.BaseActivity
|
||||
import com.gh.common.constant.Config
|
||||
import com.gh.common.constant.Constants
|
||||
@ -39,7 +40,7 @@ import com.squareup.picasso.Picasso
|
||||
import kotlinx.android.synthetic.main.layout_video_detail_surface.view.*
|
||||
import java.util.*
|
||||
|
||||
class VideoAdapter(val mContext: Context, val mRecyclerView: RecyclerView, val mViewModel: VideoDetailContainerViewModel)
|
||||
class VideoAdapter(val mContext: Context, val mRecyclerView: RecyclerView, val refreshLayout: SwipeRefreshLayout, val mViewModel: VideoDetailContainerViewModel)
|
||||
: RecyclerView.Adapter<RecyclerView.ViewHolder>(), IExposable {
|
||||
var videoList = arrayListOf<VideoEntity>()
|
||||
var isVisible = false//fragment是否可见
|
||||
@ -86,6 +87,7 @@ class VideoAdapter(val mContext: Context, val mRecyclerView: RecyclerView, val m
|
||||
videoView.updateThumb(videoList[position].getThumb())
|
||||
videoView.updateMuteStatus()
|
||||
videoView.fullscreenButton.setOnClickListener {
|
||||
if (refreshLayout.isRefreshing) return@setOnClickListener
|
||||
if (mOrientationUtils.isLand == 0) {
|
||||
videoView.recordMta("进入全屏")
|
||||
MtaHelper.onEvent("视频详情", "进入全屏", "${videoList[position].title}(${videoList[position].id})")
|
||||
@ -93,14 +95,14 @@ class VideoAdapter(val mContext: Context, val mRecyclerView: RecyclerView, val m
|
||||
}
|
||||
videoView.hideAllButton(true)
|
||||
mOrientationUtils.resolveByClick()
|
||||
val fullVideoPlayer = videoView.startWindowFullscreen(mContext, true, true) as DetailPlayerView
|
||||
fullVideoPlayer.observeVolume(mContext as AppCompatActivity)
|
||||
fullVideoPlayer.setViewModel(mViewModel)
|
||||
fullVideoPlayer.hideAllButton(true)
|
||||
fullVideoPlayer.updateViewDetail(videoList[position])
|
||||
fullVideoPlayer.updateMuteStatus()
|
||||
val fullVideoPlayer = videoView.startWindowFullscreen(mContext, true, true) as? DetailPlayerView
|
||||
fullVideoPlayer?.observeVolume(mContext as AppCompatActivity)
|
||||
fullVideoPlayer?.setViewModel(mViewModel)
|
||||
fullVideoPlayer?.hideAllButton(true)
|
||||
fullVideoPlayer?.updateViewDetail(videoList[position])
|
||||
fullVideoPlayer?.updateMuteStatus()
|
||||
//金进入全屏后直接播放
|
||||
if (fullVideoPlayer.currentState == GSYVideoView.CURRENT_STATE_PAUSE) {
|
||||
if (fullVideoPlayer?.currentState == GSYVideoView.CURRENT_STATE_PAUSE) {
|
||||
fullVideoPlayer.setCurrentPosition(videoView.getCurrentPosition())
|
||||
fullVideoPlayer.onVideoResume()
|
||||
}
|
||||
|
||||
@ -120,7 +120,7 @@ class VideoDetailContainerFragment : BaseLazyFragment(), OnBackPressedListener {
|
||||
mViewModel.videoList.observeNonNull(this) {
|
||||
hideNetworkErrorView()
|
||||
if (!::mAdapter.isInitialized) {
|
||||
mAdapter = VideoAdapter(requireContext(), recyclerview, mViewModel)
|
||||
mAdapter = VideoAdapter(requireContext(), recyclerview, refresh, mViewModel)
|
||||
mExposureListener = ExposureListener(this, mAdapter)
|
||||
recyclerview.addOnScrollListener(mExposureListener!!)
|
||||
recyclerview.adapter = mAdapter
|
||||
@ -188,8 +188,8 @@ class VideoDetailContainerFragment : BaseLazyFragment(), OnBackPressedListener {
|
||||
mViewModel.followVideoInfo.observeNonNull(this) {
|
||||
updateAllFollowDatas(it.user.id ?: "", it.me.isFollower)
|
||||
}
|
||||
mViewModel.refreshFinish.observeNonNull(this){
|
||||
if (it){
|
||||
mViewModel.refreshFinish.observeNonNull(this) {
|
||||
if (it) {
|
||||
refresh.isRefreshing = false
|
||||
}
|
||||
}
|
||||
|
||||
@ -178,10 +178,21 @@ class VideoDetailContainerViewModel(application: Application) : AndroidViewModel
|
||||
}
|
||||
page++
|
||||
//下拉刷新清除列表数据
|
||||
if (!isLoadNext) {
|
||||
// if (!isLoadNext) {
|
||||
// videoList.value?.clear()
|
||||
// }
|
||||
// mergeVideoList(data, isLoadNext)
|
||||
if (isLoadNext) {
|
||||
mergeVideoList(data, isLoadNext)
|
||||
} else if (!isLoadNext && mRecyclerViewRef?.get()?.computeVerticalScrollOffset() == 0) {
|
||||
//下拉刷新并且列表没有滚动清除列表数据,数据发生变化
|
||||
videoList.value?.clear()
|
||||
mergeVideoList(data, isLoadNext)
|
||||
} else {
|
||||
//下拉刷新并且列表滚动中关闭下拉刷新动画,数据不变
|
||||
refreshFinish.postValue(true)
|
||||
}
|
||||
mergeVideoList(data, isLoadNext)
|
||||
|
||||
mIsFirstLoad = false
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user