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 29c5bb89a..0a6aed098 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
@@ -165,6 +165,9 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
mBinding.control.seek.setListener(mPlayers);
mBinding.control.cast.setOnClickListener(view -> onCast());
mBinding.control.info.setOnClickListener(view -> onInfo());
+ mBinding.control.play.setOnClickListener(view -> checkPlay());
+ mBinding.control.next.setOnClickListener(view -> checkNext());
+ mBinding.control.prev.setOnClickListener(view -> checkPrev());
mBinding.control.right.back.setOnClickListener(view -> onBack());
mBinding.control.right.lock.setOnClickListener(view -> onLock());
mBinding.control.right.rotate.setOnClickListener(view -> onRotate());
@@ -469,10 +472,12 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
mBinding.control.cast.setVisibility(mPlayers.isEmpty() ? View.GONE : View.VISIBLE);
mBinding.control.right.rotate.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.right.back.setVisibility(isLock() ? View.GONE : View.VISIBLE);
+ mBinding.control.center.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.bottom.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.top.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.getRoot().setVisibility(View.VISIBLE);
setR1Callback();
+ checkPlayImg();
hideInfo();
hideEpg();
}
@@ -664,6 +669,7 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
}
private void checkPlayImg() {
+ mBinding.control.play.setImageResource(mPlayers.isPlaying() ? androidx.media3.ui.R.drawable.exo_icon_pause : androidx.media3.ui.R.drawable.exo_icon_play);
mPiP.update(this, mPlayers.isPlaying());
ActionEvent.update();
}
@@ -730,9 +736,9 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
if (ActionEvent.PLAY.equals(event.getAction()) || ActionEvent.PAUSE.equals(event.getAction())) {
checkPlay();
} else if (ActionEvent.NEXT.equals(event.getAction())) {
- nextChannel();
+ checkNext();
} else if (ActionEvent.PREV.equals(event.getAction())) {
- prevChannel();
+ checkPrev();
} else if (ActionEvent.STOP.equals(event.getAction())) {
finish();
}
@@ -863,6 +869,13 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
else nextChannel();
}
+ private void checkPrev() {
+ int position = mChannel.getData().getSelected() - 1;
+ boolean hasPrev = position >= 0;
+ if (hasPrev) onItemClick(mChannel.getData().getList().get(position));
+ else prevChannel();
+ }
+
private void prevLine() {
if (mChannel == null || mChannel.isOnly()) return;
mChannel.prevLine();
@@ -978,12 +991,12 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
@Override
public void onFlingUp() {
- prevChannel();
+ checkPrev();
}
@Override
public void onFlingDown() {
- nextChannel();
+ checkNext();
}
@Override
diff --git a/app/src/mobile/res/layout/view_control_live.xml b/app/src/mobile/res/layout/view_control_live.xml
index 3e3e5e194..2b4415e12 100644
--- a/app/src/mobile/res/layout/view_control_live.xml
+++ b/app/src/mobile/res/layout/view_control_live.xml
@@ -74,6 +74,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+