pull/227/head^2
FongMi 2 years ago
parent 88a4ba2df5
commit d269601486
  1. 11
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/SettingPlayerActivity.java
  2. 7
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java
  3. 10
      app/src/main/java/com/fongmi/android/tv/Setting.java
  4. 9
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java
  5. 16
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/SettingPlayerFragment.java

@ -202,12 +202,6 @@ public class SettingPlayerActivity extends BaseActivity implements UaCallback, B
Setting.putDanmuLine(line);
}
public void setDanmuSpeed(View view) {
int index = Setting.getDanmuSpeed();
Setting.putDanmuSpeed(index = index == danmuSpeed.length - 1 ? 0 : ++index);
mBinding.danmuSpeedText.setText(danmuSpeed[index]);
}
public void onDanmuAlpha(View view) {
DanmuAlphaDialog.create(this).show();
}
@ -218,4 +212,9 @@ public class SettingPlayerActivity extends BaseActivity implements UaCallback, B
Setting.putDanmuAlpha(alpha);
}
public void setDanmuSpeed(View view) {
int index = Setting.getDanmuSpeed();
Setting.putDanmuSpeed(index = index == danmuSpeed.length - 1 ? 0 : ++index);
mBinding.danmuSpeedText.setText(danmuSpeed[index]);
}
}

@ -415,16 +415,15 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List
private void setDanmuView() {
int maxLine = Setting.getDanmuLine(3);
float alpha = ((float) Setting.getDanmuAlpha()) / 100.0f;
mPlayers.setDanmuView(mBinding.danmaku);
float alpha = Setting.getDanmuAlpha() / 100.0f;
float speed = 1.6f - Setting.getDanmuSpeed() * 0.2f;
HashMap<Integer, Integer> maxLines = new HashMap<>();
float scrollSpeedFactor = 1.6f - (Setting.getDanmuSpeed() * 0.2f);
scrollSpeedFactor = scrollSpeedFactor < 0 ? 1.2f : scrollSpeedFactor;
maxLines.put(BaseDanmaku.TYPE_FIX_TOP, maxLine);
maxLines.put(BaseDanmaku.TYPE_SCROLL_RL, maxLine);
maxLines.put(BaseDanmaku.TYPE_SCROLL_LR, maxLine);
maxLines.put(BaseDanmaku.TYPE_FIX_BOTTOM, maxLine);
mDanmakuContext.setDanmakuStyle(IDisplayer.DANMAKU_STYLE_STROKEN, 3).setMaximumLines(maxLines).setScrollSpeedFactor(scrollSpeedFactor).setDanmakuTransparency(alpha).setDanmakuMargin(12).setScaleTextSize(0.8f);
mDanmakuContext.setDanmakuStyle(IDisplayer.DANMAKU_STYLE_STROKEN, 3).setMaximumLines(maxLines).setScrollSpeedFactor(speed).setDanmakuTransparency(alpha).setDanmakuMargin(12).setScaleTextSize(0.8f);
mBinding.control.danmu.setActivated(Setting.isDanmu());
}

@ -258,7 +258,7 @@ public class Setting {
}
public static float getDanmuSize() {
return Math.min(Math.max(Prefers.getFloat("danmu_size", 1.0f), 0.5f), 2.0f);
return Math.min(Math.max(Prefers.getFloat("danmu_size", 1.0f), 0.6f), 2.0f);
}
public static void putDanmuSize(float size) {
@ -269,6 +269,10 @@ public class Setting {
return Math.min(Math.max(Prefers.getInt("danmu_line", line), 1), 15);
}
public static void putDanmuLine(int line) {
Prefers.put("danmu_line", line);
}
public static void putDanmuAlpha(int alpha) {
Prefers.put("danmu_alpha", alpha);
}
@ -277,10 +281,6 @@ public class Setting {
return Math.min(Math.max(Prefers.getInt("danmu_alpha", 90), 10), 100);
}
public static void putDanmuLine(int line) {
Prefers.put("danmu_line", line);
}
public static boolean isCaption() {
return Prefers.getBoolean("caption");
}

@ -413,16 +413,15 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
private void setDanmuView() {
int maxLine = Setting.getDanmuLine(2);
float alpha = ((float) Setting.getDanmuAlpha()) / 100.0f;
mPlayers.setDanmuView(mBinding.danmaku);
float alpha = Setting.getDanmuAlpha() / 100.0f;
float speed = 1.6f - Setting.getDanmuSpeed() * 0.2f;
HashMap<Integer, Integer> maxLines = new HashMap<>();
float scrollSpeedFactor = 1.6f - (Setting.getDanmuSpeed() * 0.2f);
scrollSpeedFactor = scrollSpeedFactor < 0 ? 1.2f : scrollSpeedFactor;
maxLines.put(BaseDanmaku.TYPE_FIX_TOP, maxLine);
maxLines.put(BaseDanmaku.TYPE_SCROLL_RL, maxLine);
maxLines.put(BaseDanmaku.TYPE_SCROLL_LR, maxLine);
maxLines.put(BaseDanmaku.TYPE_FIX_BOTTOM, maxLine);
mDanmakuContext.setDanmakuStyle(IDisplayer.DANMAKU_STYLE_STROKEN, 3).setMaximumLines(maxLines).setScrollSpeedFactor(scrollSpeedFactor).setDanmakuTransparency(alpha).setDanmakuMargin(8).setScaleTextSize(0.8f);
mDanmakuContext.setDanmakuStyle(IDisplayer.DANMAKU_STYLE_STROKEN, 3).setMaximumLines(maxLines).setScrollSpeedFactor(speed).setDanmakuTransparency(alpha).setDanmakuMargin(8).setScaleTextSize(0.8f);
checkDanmuImg();
}
@ -928,7 +927,7 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
App.post(() -> mBinding.video.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT)), 50);
setRequestedOrientation(mPlayers.isPortrait() ? ActivityInfo.SCREEN_ORIENTATION_USER_PORTRAIT : ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
mBinding.control.full.setVisibility(View.GONE);
mDanmakuContext.setScaleTextSize(1.0f);
mDanmakuContext.setScaleTextSize(0.8f);
setRotate(mPlayers.isPortrait(), true);
setSubtitle(Setting.getSubtitle());
Util.hideSystemUI(this);

@ -202,14 +202,6 @@ public class SettingPlayerFragment extends BaseFragment implements UaCallback, B
Setting.putDanmuLine(line);
}
public void onDanmuSpeed(View view) {
new MaterialAlertDialogBuilder(getActivity()).setTitle(R.string.player_danmu_speed).setNegativeButton(R.string.dialog_negative, null).setSingleChoiceItems(danmuSpeed, Setting.getDanmuSpeed(), (dialog, which) -> {
mBinding.danmuSpeedText.setText(danmuSpeed[which]);
Setting.putDanmuSpeed(which);
dialog.dismiss();
}).show();
}
public void onDanmuAlpha(View view) {
DanmuAlphaDialog.create(this).show();
}
@ -220,6 +212,14 @@ public class SettingPlayerFragment extends BaseFragment implements UaCallback, B
Setting.putDanmuAlpha(alpha);
}
public void onDanmuSpeed(View view) {
new MaterialAlertDialogBuilder(getActivity()).setTitle(R.string.player_danmu_speed).setNegativeButton(R.string.dialog_negative, null).setSingleChoiceItems(danmuSpeed, Setting.getDanmuSpeed(), (dialog, which) -> {
mBinding.danmuSpeedText.setText(danmuSpeed[which]);
Setting.putDanmuSpeed(which);
dialog.dismiss();
}).show();
}
private void onBackground(View view) {
new MaterialAlertDialogBuilder(getActivity()).setTitle(R.string.player_background).setNegativeButton(R.string.dialog_negative, null).setSingleChoiceItems(background, Setting.getBackground(), (dialog, which) -> {
mBinding.backgroundText.setText(background[which]);

Loading…
Cancel
Save