casting: fix loop when enable subtitles

This commit is contained in:
Yuriy Liskov
2026-03-05 03:56:34 +02:00
parent 49ebcf39b6
commit 9dc4f105b4
7 changed files with 9 additions and 24 deletions

View File

@@ -256,11 +256,6 @@ public abstract class BasePlayerController implements PlayerEventListener {
// NOP
}
@Override
public void onButtonState(int buttonId, int buttonState) {
// NOP
}
@Override
public void onTrackChanged(FormatItem track) {
// NOP

View File

@@ -145,6 +145,10 @@ public class PlayerUIController extends BasePlayerController {
}
private void onSubtitleClicked(boolean enabled) {
if (getPlayer() == null) {
return;
}
fitVideoIntoDialog();
// First run

View File

@@ -133,16 +133,16 @@ public class RemoteController extends BasePlayerController implements OnDataChan
}
@Override
public void onButtonState(int buttonId, int buttonState) {
public void onButtonClicked(int buttonId, int buttonState) {
if (buttonId == R.id.lb_control_closed_captioning) {
if (buttonState == PlayerUI.BUTTON_ON) {
if (buttonState == PlayerUI.BUTTON_OFF) {
FormatItem selected = getPlayerData().getFormat(FormatItem.TYPE_SUBTITLE);
if (selected != null) {
postSubtitleChange(selected.getFormatId(), selected.getLanguage());
} else {
postSubtitleChange(null, null);
}
} else if (buttonState == PlayerUI.BUTTON_OFF) {
} else if (buttonState == PlayerUI.BUTTON_ON) {
postSubtitleChange(null, null);
}
}
@@ -344,9 +344,9 @@ public class RemoteController extends BasePlayerController implements OnDataChan
getPlayer().setFormat(selected);
}
}
getPlaybackPresenter().onButtonClicked(R.id.lb_control_closed_captioning, PlayerUI.BUTTON_OFF);
getController(PlayerUIController.class).onButtonClicked(R.id.lb_control_closed_captioning, PlayerUI.BUTTON_OFF);
} else if (getPlayer() != null) {
getPlaybackPresenter().onButtonClicked(R.id.lb_control_closed_captioning, PlayerUI.BUTTON_ON);
getController(PlayerUIController.class).onButtonClicked(R.id.lb_control_closed_captioning, PlayerUI.BUTTON_ON);
}
openNewVideo(newVideo2);
break;

View File

@@ -44,5 +44,4 @@ public interface PlayerEngineEventListener {
void onEngineError(int type, int rendererIndex, Throwable error);
void onTrackChanged(FormatItem track);
void onTrackSelected(FormatItem track);
void onButtonState(int buttonId, int buttonState);
}

View File

@@ -419,11 +419,6 @@ public class PlaybackPresenter extends BasePresenter<PlaybackView> implements Pl
process(listener -> listener.onTrackChanged(track));
}
@Override
public void onButtonState(int buttonId, int buttonState) {
process(listener -> listener.onButtonState(buttonId, buttonState));
}
@Override
public void onButtonClicked(int buttonId, int buttonState) {
process(listener -> listener.onButtonClicked(buttonId, buttonState));

View File

@@ -805,11 +805,6 @@ public class PlaybackFragment extends SeekModePlaybackFragment implements Playba
public boolean onKeyDown(int keyCode) {
return mPlaybackPresenter.onKeyDown(keyCode);
}
@Override
public void onButtonState(int buttonId, int buttonState) {
mPlaybackPresenter.onButtonState(buttonId, buttonState);
}
}
// Begin Ui events

View File

@@ -310,7 +310,6 @@ public class VideoPlayerGlue extends MaxControlsVideoPlayerGlue<PlayerAdapter> i
}
public void setButtonState(int buttonId, int buttonState) {
mActionListener.onButtonState(buttonId, buttonState);
setActionIndex(mActions.get(buttonId), buttonState);
}
@@ -593,7 +592,5 @@ public class VideoPlayerGlue extends MaxControlsVideoPlayerGlue<PlayerAdapter> i
void onTopEdgeFocused();
boolean onKeyDown(int keyCode);
void onButtonState(int buttonId, int buttonState);
}
}