From bc29c79c9cca11d3fb6d7607328e81e719470b3f Mon Sep 17 00:00:00 2001 From: okjack <***@gmail.com> Date: Sat, 13 Jan 2024 15:58:09 +0800 Subject: [PATCH] danmu max line --- .../com/fongmi/android/tv/ui/activity/VideoActivity.java | 9 +++++---- app/src/main/java/com/fongmi/android/tv/Setting.java | 8 ++++++++ .../com/fongmi/android/tv/ui/activity/VideoActivity.java | 9 +++++---- 3 files changed, 18 insertions(+), 8 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index c9003fe36..5ad28ee75 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -401,10 +401,11 @@ public class VideoActivity extends BaseActivity implements CustomKeyDownVod.List private void setDanmuView() { mPlayers.setDanmuView(mBinding.danmaku); HashMap maxLines = new HashMap<>(); - maxLines.put(BaseDanmaku.TYPE_FIX_TOP, 3); - maxLines.put(BaseDanmaku.TYPE_SCROLL_RL, 3); - maxLines.put(BaseDanmaku.TYPE_SCROLL_LR, 3); - maxLines.put(BaseDanmaku.TYPE_FIX_BOTTOM, 1); + int maxLine = Setting.getDanmuMaxLine(3); + 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(IDisplay.DANMAKU_STYLE_STROKEN, 3).setMaximumLines(maxLines).setDanmakuMargin(12).setScaleTextSize(0.8f); mBinding.control.danmu.setActivated(Setting.isDanmu()); } diff --git a/app/src/main/java/com/fongmi/android/tv/Setting.java b/app/src/main/java/com/fongmi/android/tv/Setting.java index 8a8307544..141dd10f8 100644 --- a/app/src/main/java/com/fongmi/android/tv/Setting.java +++ b/app/src/main/java/com/fongmi/android/tv/Setting.java @@ -241,6 +241,14 @@ public class Setting { Prefers.put("danmu", danmu); } + public static int getDanmuMaxLine(int defaultValue) { + return Prefers.getInt("danmu_maxline", defaultValue); + } + + public static void putDanmuMaxLine(int maxline) { + Prefers.put("danmu_maxline", maxline); + } + public static boolean isCaption() { return Prefers.getBoolean("caption"); } diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index a98f1fc57..ff87ab4a5 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -414,10 +414,11 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo private void setDanmuView() { mPlayers.setDanmuView(mBinding.danmaku); HashMap maxLines = new HashMap<>(); - maxLines.put(BaseDanmaku.TYPE_FIX_TOP, 2); - maxLines.put(BaseDanmaku.TYPE_SCROLL_RL, 2); - maxLines.put(BaseDanmaku.TYPE_SCROLL_LR, 2); - maxLines.put(BaseDanmaku.TYPE_FIX_BOTTOM, 1); + int maxLine = Setting.getDanmuMaxLine(2); + 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(IDisplay.DANMAKU_STYLE_STROKEN, 3).setMaximumLines(maxLines).setDanmakuMargin(8).setScaleTextSize(0.8f); checkDanmuImg(); }