release
FongMi 2 years ago
parent 07101da35d
commit 40aeb0aa98
  1. 11
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  2. 1
      app/src/main/java/com/fongmi/android/tv/bean/Catchup.java
  3. 5
      app/src/main/java/com/fongmi/android/tv/bean/Epg.java
  4. 9
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java

@ -480,7 +480,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
private void showControl(View view) {
mBinding.control.getRoot().setVisibility(View.VISIBLE);
mBinding.widget.top.setVisibility(View.VISIBLE);
view.requestFocus();
App.post(view::requestFocus, 25);
setR1Callback();
hideInfo();
hideEpg();
@ -732,7 +732,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.widget.size.setText(mPlayers.getSizeText());
break;
case Player.STATE_ENDED:
nextEpg();
checkNext();
break;
}
}
@ -814,10 +814,11 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
if (!mGroup.isEmpty()) setChannel(mGroup.current());
}
public void nextEpg() {
private void checkNext() {
int current = mChannel.getData().getInRange();
int position = mChannel.getData().getSelected() + 1;
boolean limit = position > mEpgDataAdapter.size() - 1;
if (!limit) onItemClick(mChannel.getData().getList().get(position));
boolean hasNext = position <= current && position > 0;
if (hasNext) onItemClick(mChannel.getData().getList().get(position));
else nextChannel();
}

@ -94,6 +94,7 @@ public class Catchup {
public String format(String url, EpgData data) {
String result = getSource();
if (data.isInRange()) return url;
Matcher matcher = Pattern.compile("(\\$\\{[^}]*\\})").matcher(result);
while (matcher.find()) result = result.replace(matcher.group(1), data.format(matcher.group(1)));
return isDefault() ? result : format(url, result);

@ -90,4 +90,9 @@ public class Epg {
for (int i = 0; i < getList().size(); i++) if (getList().get(i).isSelected()) return i;
return -1;
}
public int getInRange() {
for (int i = 0; i < getList().size(); i++) if (getList().get(i).isInRange()) return i;
return -1;
}
}

@ -798,7 +798,7 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
if (isVisible(mBinding.control.getRoot())) showControl();
break;
case Player.STATE_ENDED:
nextEpg();
checkNext();
break;
}
}
@ -905,10 +905,11 @@ public class LiveActivity extends BaseActivity implements CustomKeyDownLive.List
if (!mGroup.isEmpty()) onItemClick(mGroup.current());
}
public void nextEpg() {
private void checkNext() {
int current = mChannel.getData().getInRange();
int position = mChannel.getData().getSelected() + 1;
boolean limit = position > mEpgDataAdapter.getItemCount() - 1;
if (!limit) onItemClick(mChannel.getData().getList().get(position));
boolean hasNext = position <= current && position > 0;
if (hasNext) onItemClick(mChannel.getData().getList().get(position));
else nextChannel();
}

Loading…
Cancel
Save