From 1bd56fd983e222ab5942869665e2414ffb86a46d Mon Sep 17 00:00:00 2001 From: FongMi Date: Wed, 13 Dec 2023 10:39:17 +0800 Subject: [PATCH] Fix progress bug --- .../android/tv/ui/activity/LiveActivity.java | 15 +++++++++++++-- .../android/tv/ui/activity/VideoActivity.java | 15 +++++++++++++-- .../android/tv/ui/dialog/InfoDialog.java | 19 +++++++++---------- 3 files changed, 35 insertions(+), 14 deletions(-) diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java index c66573380..d7ca8940a 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java @@ -79,7 +79,7 @@ import java.util.List; import tv.danmaku.ijk.media.player.ui.IjkVideoView; -public class LiveActivity extends BaseActivity implements CustomKeyDownLive.Listener, TrackDialog.Listener, Biometric.Callback, PassCallback, LiveCallback, GroupAdapter.OnClickListener, ChannelAdapter.OnClickListener, SubtitleCallback, CastDialog.Listener { +public class LiveActivity extends BaseActivity implements CustomKeyDownLive.Listener, TrackDialog.Listener, Biometric.Callback, PassCallback, LiveCallback, GroupAdapter.OnClickListener, ChannelAdapter.OnClickListener, SubtitleCallback, CastDialog.Listener, InfoDialog.Listener { private ActivityLiveBinding mBinding; private ChannelAdapter mChannelAdapter; @@ -329,7 +329,6 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List private void onInfo() { InfoDialog.create(this).title(mBinding.control.title.getText()).headers(mPlayers.getHeaders()).url(mPlayers.getUrl()).show(); - setRedirect(true); } private void onBack() { @@ -1006,6 +1005,18 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List else showControl(); } + @Override + public void onShare(CharSequence title, String url) { + Intent intent = new Intent(Intent.ACTION_SEND); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + intent.putExtra(Intent.EXTRA_TEXT, url); + intent.putExtra("name", title); + intent.putExtra("title", title); + intent.setType("text/plain"); + startActivity(Util.getChooser(intent)); + setRedirect(true); + } + @Override protected void onUserLeaveHint() { super.onUserLeaveHint(); diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index 347acd9b2..9a8f6f89a 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -118,7 +118,7 @@ import master.flame.danmaku.danmaku.model.IDisplay; import master.flame.danmaku.danmaku.model.android.DanmakuContext; import tv.danmaku.ijk.media.player.ui.IjkVideoView; -public class VideoActivity extends BaseActivity implements Clock.Callback, CustomKeyDownVod.Listener, TrackDialog.Listener, ControlDialog.Listener, FlagAdapter.OnClickListener, EpisodeAdapter.OnClickListener, QualityAdapter.OnClickListener, QuickAdapter.OnClickListener, ParseAdapter.OnClickListener, SubtitleCallback, CastDialog.Listener { +public class VideoActivity extends BaseActivity implements Clock.Callback, CustomKeyDownVod.Listener, TrackDialog.Listener, ControlDialog.Listener, FlagAdapter.OnClickListener, EpisodeAdapter.OnClickListener, QualityAdapter.OnClickListener, QuickAdapter.OnClickListener, ParseAdapter.OnClickListener, SubtitleCallback, CastDialog.Listener, InfoDialog.Listener { private ActivityVideoBinding mBinding; private ViewGroup.LayoutParams mFrameParams; @@ -698,7 +698,6 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo private void onInfo() { InfoDialog.create(this).title(mBinding.control.title.getText()).headers(mPlayers.getHeaders()).url(mPlayers.getUrl()).show(); - setRedirect(true); } private void onFull() { @@ -1607,6 +1606,18 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo } } + @Override + public void onShare(CharSequence title, String url) { + Intent intent = new Intent(Intent.ACTION_SEND); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + intent.putExtra(Intent.EXTRA_TEXT, url); + intent.putExtra("name", title); + intent.putExtra("title", title); + intent.setType("text/plain"); + startActivity(Util.getChooser(intent)); + setRedirect(true); + } + @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/dialog/InfoDialog.java b/app/src/mobile/java/com/fongmi/android/tv/ui/dialog/InfoDialog.java index 95f78464f..3009ac0d0 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/dialog/InfoDialog.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/dialog/InfoDialog.java @@ -1,7 +1,6 @@ package com.fongmi.android.tv.ui.dialog; import android.app.Activity; -import android.content.Intent; import android.view.LayoutInflater; import android.view.View; @@ -18,7 +17,7 @@ import java.util.Map; public class InfoDialog { private final DialogInfoBinding binding; - private final Activity activity; + private final Listener callback; private AlertDialog dialog; private CharSequence title; private String header; @@ -29,7 +28,8 @@ public class InfoDialog { } public InfoDialog(Activity activity) { - this.binding = DialogInfoBinding.inflate(LayoutInflater.from(this.activity = activity)); + this.binding = DialogInfoBinding.inflate(LayoutInflater.from(activity)); + this.callback = (Listener) activity; } public InfoDialog title(CharSequence title) { @@ -74,13 +74,7 @@ public class InfoDialog { } private void onShare(View view) { - Intent intent = new Intent(Intent.ACTION_SEND); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - intent.putExtra(Intent.EXTRA_TEXT, url); - intent.putExtra("name", title); - intent.putExtra("title", title); - intent.setType("text/plain"); - activity.startActivity(Util.getChooser(intent)); + callback.onShare(title, url); dialog.dismiss(); } @@ -89,4 +83,9 @@ public class InfoDialog { Util.copy(url); return true; } + + public interface Listener { + + void onShare(CharSequence title, String url); + } }