diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
index 771e626a0..4ff949c8f 100644
--- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
+++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
@@ -157,6 +157,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.control.speed.setOnClickListener(view -> onSpeed());
mBinding.control.invert.setOnClickListener(view -> onInvert());
mBinding.control.across.setOnClickListener(view -> onAcross());
+ mBinding.control.change.setOnClickListener(view -> onChange());
mBinding.control.player.setOnClickListener(view -> onPlayer());
mBinding.control.decode.setOnClickListener(view -> onDecode());
mBinding.control.speed.setOnLongClickListener(view -> onSpeedLong());
@@ -194,6 +195,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.control.speed.setText(mPlayers.getSpeedText());
mBinding.control.invert.setActivated(Prefers.isInvert());
mBinding.control.across.setActivated(Prefers.isAcross());
+ mBinding.control.change.setActivated(Prefers.isChange());
mBinding.control.home.setVisibility(LiveConfig.isOnly() ? View.GONE : View.VISIBLE);
}
@@ -305,6 +307,11 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.control.across.setActivated(Prefers.isAcross());
}
+ private void onChange() {
+ Prefers.putChange(!Prefers.isChange());
+ mBinding.control.change.setActivated(Prefers.isChange());
+ }
+
private void onPlayer() {
mPlayers.togglePlayer();
Prefers.putLivePlayer(mPlayers.getPlayer());
@@ -592,18 +599,18 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
}
private void onError(ErrorEvent event) {
+ showError(event.getMsg());
mPlayers.stop();
- startFlow(event);
+ startFlow();
}
- private void startFlow(ErrorEvent event) {
+ private void startFlow() {
+ if (!Prefers.isChange()) return;
if (!mChannel.isLast()) {
nextLine(true);
} else if (isGone(mBinding.recycler)) {
mChannel.setLine(0);
nextChannel();
- } else {
- showError(event.getMsg());
}
}
diff --git a/app/src/leanback/res/layout/view_control_live.xml b/app/src/leanback/res/layout/view_control_live.xml
index 3fc2b0f1f..4562cf928 100644
--- a/app/src/leanback/res/layout/view_control_live.xml
+++ b/app/src/leanback/res/layout/view_control_live.xml
@@ -45,7 +45,7 @@
android:background="@drawable/selector_text"
android:focusable="true"
android:focusableInTouchMode="true"
- android:nextFocusLeft="@id/across"
+ android:nextFocusLeft="@id/change"
android:textColor="@color/white"
android:textSize="14sp"
tools:text="EXO" />
@@ -175,14 +175,26 @@
android:id="@+id/across"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:layout_marginEnd="12dp"
android:background="@drawable/selector_text"
android:focusable="true"
android:focusableInTouchMode="true"
- android:nextFocusRight="@id/player"
android:text="@string/play_across"
android:textColor="@color/text"
android:textSize="14sp" />
+
+