From 95be563b43c60646074db080348f352b62545522 Mon Sep 17 00:00:00 2001 From: kehaoyuan Date: Mon, 7 Oct 2019 16:09:03 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=89=E7=8E=AF=E5=8A=A9=E6=89=8BV3.7.0=20DE?= =?UTF-8?q?V=EF=BC=8820190918-1830=EF=BC=89=E8=A7=86=E9=A2=91=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=EF=BC=88=E6=B5=8B=E8=AF=95=E6=B1=87=E6=80=BB=EF=BC=89?= =?UTF-8?q?(2.3.7.8.9.10.11.13.15.16.18.19.20.21)=20https://gitlab.ghzs.co?= =?UTF-8?q?m/pm/halo-app-issues/issues/657?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/gh/base/BaseActivity.java | 6 ++++++ .../java/com/gh/common/util/ErrorHelper.kt | 2 +- .../gh/gamecenter/collection/VideoAdapter.kt | 5 +++++ .../personalhome/video/MyVideoAdapter.kt | 5 +++++ .../video/detail/DetailPlayerView.kt | 3 ++- .../video/game/GameVideoActivity.kt | 3 ++- .../video/upload/view/UploadVideoActivity.kt | 17 +++++++-------- .../videomanager/VideoManagerActivity.kt | 21 ++++++++++++------- .../main/res/layout/activity_video_uplaod.xml | 3 +++ .../res/layout/game_vertical_slide_item.xml | 3 ++- app/src/main/res/layout/video_draft_item.xml | 2 +- 11 files changed, 47 insertions(+), 23 deletions(-) diff --git a/app/src/main/java/com/gh/base/BaseActivity.java b/app/src/main/java/com/gh/base/BaseActivity.java index 19b8d019cf..969799b148 100644 --- a/app/src/main/java/com/gh/base/BaseActivity.java +++ b/app/src/main/java/com/gh/base/BaseActivity.java @@ -224,6 +224,12 @@ public abstract class BaseActivity extends BaseToolBarActivity implements EasyPe } + /** + * + * @param entrance 上一个页面的链式入口名称 + * @param path 当前页面名称 + * @return 完整的链式入口名称 + */ public static String mergeEntranceAndPath(String entrance, String path) { if (TextUtils.isEmpty(entrance) && TextUtils.isEmpty(path)) return ""; if (TextUtils.isEmpty(entrance) && !TextUtils.isEmpty(path)) { diff --git a/app/src/main/java/com/gh/common/util/ErrorHelper.kt b/app/src/main/java/com/gh/common/util/ErrorHelper.kt index 851a37b802..6882360bd2 100644 --- a/app/src/main/java/com/gh/common/util/ErrorHelper.kt +++ b/app/src/main/java/com/gh/common/util/ErrorHelper.kt @@ -111,7 +111,7 @@ object ErrorHelper { 403016 -> Utils.toast(context, "标签内容可能包含敏感信息,请修改后再提交") 403018 -> Utils.toast(context, R.string.comment_failed_unable) 403070 -> Utils.toast(context, "请勿重复提交~") - 403073 -> Utils.toast(context, "内容可能存在敏感词信息,请重新修改") + 403073 -> Utils.toast(context, "标题可能包含敏感词,请修改后再提交") 403020 -> if (showHighPriorityHint) { DialogUtils.showAlertDialog(context, diff --git a/app/src/main/java/com/gh/gamecenter/collection/VideoAdapter.kt b/app/src/main/java/com/gh/gamecenter/collection/VideoAdapter.kt index 5ddae29ad6..a36e1755e2 100644 --- a/app/src/main/java/com/gh/gamecenter/collection/VideoAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/collection/VideoAdapter.kt @@ -5,6 +5,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.gh.common.constant.ItemViewType +import com.gh.common.util.DirectUtils import com.gh.common.util.ImageUtils import com.gh.common.util.toSimpleCount import com.gh.gamecenter.R @@ -14,6 +15,7 @@ import com.gh.gamecenter.baselist.NormalListViewModel import com.gh.gamecenter.databinding.VideoItemBinding import com.gh.gamecenter.entity.MyVideoEntity import com.gh.gamecenter.video.VideoItemViewHolder +import com.gh.gamecenter.video.detail.VideoDetailContainerViewModel class VideoAdapter(context: Context, val mViewModel: NormalListViewModel) : ListAdapter(context) { @@ -46,6 +48,9 @@ class VideoAdapter(context: Context, val entity = mEntityList[position] ImageUtils.display(holder.binding.videoCover, entity.poster) holder.binding.videoLikeCount.text = entity.vote.toSimpleCount() + holder.itemView.setOnClickListener { + DirectUtils.directToVideoDetail(mContext, entity.id, VideoDetailContainerViewModel.Location.USER_UPLOADED_VIDEO.value, false, "(视频投稿)") + } } else if (holder is FooterViewHolder) { holder.initFooterViewHolder(mViewModel, mIsLoading, mIsNetworkError, mIsOver) } diff --git a/app/src/main/java/com/gh/gamecenter/personalhome/video/MyVideoAdapter.kt b/app/src/main/java/com/gh/gamecenter/personalhome/video/MyVideoAdapter.kt index 29dda7c718..45ddc0a7c4 100644 --- a/app/src/main/java/com/gh/gamecenter/personalhome/video/MyVideoAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/personalhome/video/MyVideoAdapter.kt @@ -5,6 +5,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.gh.common.constant.ItemViewType +import com.gh.common.util.DirectUtils import com.gh.common.util.ImageUtils import com.gh.common.util.toSimpleCount import com.gh.gamecenter.R @@ -14,6 +15,7 @@ import com.gh.gamecenter.baselist.NormalListViewModel import com.gh.gamecenter.databinding.VideoItemBinding import com.gh.gamecenter.entity.MyVideoEntity import com.gh.gamecenter.video.VideoItemViewHolder +import com.gh.gamecenter.video.detail.VideoDetailContainerViewModel class MyVideoAdapter(context: Context, @@ -48,6 +50,9 @@ class MyVideoAdapter(context: Context, val entity = mEntityList[position] ImageUtils.display(holder.binding.videoCover, entity.poster) holder.binding.videoLikeCount.text = entity.vote.toSimpleCount() + holder.itemView.setOnClickListener { + DirectUtils.directToVideoDetail(mContext, entity.id, VideoDetailContainerViewModel.Location.USER_UPLOADED_VIDEO.value, false, "(视频投稿)") + } } else if (holder is FooterViewHolder) { holder.initFooterViewHolder(mViewModel, mIsLoading, mIsNetworkError, mIsOver) } diff --git a/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt b/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt index 3e66ea144e..391cc5ed5f 100644 --- a/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt +++ b/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt @@ -13,6 +13,7 @@ import com.gh.gamecenter.R import com.gh.gamecenter.entity.VideoEntity import com.gh.gamecenter.manager.UserManager import com.gh.gamecenter.qa.comment.CommentActivity +import com.gh.gamecenter.video.game.GameVideoActivity import com.halo.assistant.HaloApp import com.lightgame.utils.Utils import com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer @@ -93,7 +94,7 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib gameNameTv.setOnClickListener { gameContainer.performClick() } gameContainer.setOnClickListener { - DirectUtils.directToGameDetail(context, videoEntity.gameId, mEntrance) + context.startActivity(GameVideoActivity.getIntent(context!!, videoEntity.gameId, mEntrance, "")) } commentContainer.setOnClickListener { diff --git a/app/src/main/java/com/gh/gamecenter/video/game/GameVideoActivity.kt b/app/src/main/java/com/gh/gamecenter/video/game/GameVideoActivity.kt index 4f9b64532a..1769bba464 100644 --- a/app/src/main/java/com/gh/gamecenter/video/game/GameVideoActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/video/game/GameVideoActivity.kt @@ -86,9 +86,10 @@ class GameVideoActivity : BaseActivity() { companion object { @JvmStatic - fun getIntent(context: Context, gameId: String): Intent { + fun getIntent(context: Context, gameId: String, entrance: String, path: String): Intent { val intent = Intent(context, GameVideoActivity::class.java) intent.putExtra(EntranceUtils.KEY_GAMEID, gameId) + intent.putExtra(EntranceUtils.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path)) return intent } } diff --git a/app/src/main/java/com/gh/gamecenter/video/upload/view/UploadVideoActivity.kt b/app/src/main/java/com/gh/gamecenter/video/upload/view/UploadVideoActivity.kt index 176a40e804..7e4cfcb71c 100644 --- a/app/src/main/java/com/gh/gamecenter/video/upload/view/UploadVideoActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/video/upload/view/UploadVideoActivity.kt @@ -177,14 +177,9 @@ class UploadVideoActivity : BaseActivity() { override fun onMenuItemClick(item: MenuItem): Boolean { if (item.itemId == R.id.menu_text) { - if (UploadManager.isUploading(mVideoFileEntity?.path - ?: "")) { - DialogUtils.showUploadDraftDialog(this@UploadVideoActivity, null, { - verifyData(true) - }) - } else { + DialogUtils.showUploadDraftDialog(this@UploadVideoActivity, null, { verifyData(true) - } + }) } return super.onMenuItemClick(item) } @@ -205,8 +200,8 @@ class UploadVideoActivity : BaseActivity() { return } - val title = mBinding.gameTitle.text - if (!isDraft && title.isNullOrEmpty()) { + val title = mBinding.gameTitle.text.trim() + if (!isDraft && title.isEmpty()) { toast("请填写标题") return } @@ -363,7 +358,7 @@ class UploadVideoActivity : BaseActivity() { override fun onUploadSuccess(uploadFilePath: String, url: String) { runOnUiThread { - mBinding.uploadStatus.text = "上传完成" + mBinding.uploadStatus.text = "视频已上传完成" mBinding.uploadSpeed.visibility = View.GONE mBinding.uploadButton.visibility = View.GONE mVideoFileEntity?.url = url @@ -376,10 +371,12 @@ class UploadVideoActivity : BaseActivity() { mBinding.uploadStatus.text = "上传失败,视频文件不存在" mBinding.uploadStatus.setTextColor(R.color.text_EA3333.toColor()) mBinding.uploadButton.setImageResource(R.drawable.upload_warning) + toast("上传失败,视频文件不存在") } else { mBinding.uploadStatus.text = "网络错误,中断上传" mBinding.uploadStatus.setTextColor(R.color.text_FF700F.toColor()) mBinding.uploadButton.setImageResource(R.drawable.upload_resume) + toast("网络错误,请检查网络正常后再重试") } mBinding.uploadSpeed.visibility = View.GONE } diff --git a/app/src/main/java/com/gh/gamecenter/video/videomanager/VideoManagerActivity.kt b/app/src/main/java/com/gh/gamecenter/video/videomanager/VideoManagerActivity.kt index 2aeabe9329..6a6162f0b4 100644 --- a/app/src/main/java/com/gh/gamecenter/video/videomanager/VideoManagerActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/video/videomanager/VideoManagerActivity.kt @@ -53,14 +53,19 @@ class VideoManagerActivity : BaseActivity_TabLayout() { override fun onMenuItemClick(item: MenuItem): Boolean { if (item.itemId == R.id.menu_text) { - Matisse.from(this) - .choose(MimeType.ofVideo()) - .countable(true) - .maxSelectable(1) - .addFilter(GhMatisseVideoFilter()) - .addApplyFilter(GhMatisseVideoApplyFilter()) - .showSingleMediaType(true) - .forResult(REQUEST_CODE_SELECT_VIDEO) + PermissionHelper.checkReadPhoneStateAndStoragePermissionBeforeAction(this, + object : EmptyCallback { + override fun onCallback() { + Matisse.from(this@VideoManagerActivity) + .choose(MimeType.ofVideo()) + .countable(true) + .maxSelectable(1) + .addFilter(GhMatisseVideoFilter()) + .addApplyFilter(GhMatisseVideoApplyFilter()) + .showSingleMediaType(true) + .forResult(REQUEST_CODE_SELECT_VIDEO) + } + }) } return super.onMenuItemClick(item) } diff --git a/app/src/main/res/layout/activity_video_uplaod.xml b/app/src/main/res/layout/activity_video_uplaod.xml index 70631d63a7..449c68d6c5 100644 --- a/app/src/main/res/layout/activity_video_uplaod.xml +++ b/app/src/main/res/layout/activity_video_uplaod.xml @@ -94,9 +94,11 @@ @@ -110,6 +112,7 @@ android:text="换封面" android:textColor="@android:color/white" android:textSize="11sp" + android:visibility="gone" app:layout_constraintBottom_toBottomOf="@id/video_cover" app:layout_constraintLeft_toLeftOf="@id/video_cover" app:layout_constraintRight_toRightOf="@id/video_cover" /> diff --git a/app/src/main/res/layout/game_vertical_slide_item.xml b/app/src/main/res/layout/game_vertical_slide_item.xml index 00df66c62a..187c081042 100644 --- a/app/src/main/res/layout/game_vertical_slide_item.xml +++ b/app/src/main/res/layout/game_vertical_slide_item.xml @@ -5,7 +5,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/white" - android:clipChildren="false"> + android:clipChildren="false" + android:descendantFocusability="blocksDescendants">