diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
index ddf78120b..fe1c2aac5 100644
--- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
+++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
@@ -153,12 +153,10 @@ public class DetailActivity extends BaseActivity implements CustomKeyDown.Listen
mControl.next.setOnClickListener(view -> checkNext());
mControl.prev.setOnClickListener(view -> checkPrev());
mControl.scale.setOnClickListener(view -> onScale());
- mControl.reset.setOnClickListener(view -> onReset());
mControl.speed.setOnClickListener(view -> onSpeed());
mControl.tracks.setOnClickListener(view -> onTracks());
mControl.ending.setOnClickListener(view -> onEnding());
mControl.opening.setOnClickListener(view -> onOpening());
- mControl.interval.setOnClickListener(view -> onInterval());
mControl.speed.setOnLongClickListener(view -> onSpeedReset());
mControl.ending.setOnLongClickListener(view -> onEndingReset());
mControl.opening.setOnLongClickListener(view -> onOpeningReset());
@@ -200,7 +198,6 @@ public class DetailActivity extends BaseActivity implements CustomKeyDown.Listen
getPlayerView().setVisibility(View.VISIBLE);
getPlayerView().setResizeMode(Prefers.getScale());
getPlayerView().getSubtitleView().setStyle(ExoUtil.getCaptionStyle());
- mControl.interval.setText(ResUtil.getString(R.string.second, Prefers.getInterval()));
mControl.scale.setText(ResUtil.getStringArray(R.array.select_scale)[Prefers.getScale()]);
mControl.speed.setText(mPlayers.getSpeed());
}
@@ -420,8 +417,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDown.Listen
}
private void onOpening() {
- mHistory.setOpening(mHistory.getOpening() + Prefers.getInterval() * 1000L);
- if (mHistory.getOpening() > 5 * 60 * 1000) mHistory.setOpening(0);
+ mHistory.setOpening(mPlayers.getCurrentPosition());
mControl.opening.setText(mPlayers.getStringForTime(mHistory.getOpening()));
}
@@ -432,8 +428,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDown.Listen
}
private void onEnding() {
- mHistory.setEnding(mHistory.getEnding() + Prefers.getInterval() * 1000L);
- if (mHistory.getEnding() > 5 * 60 * 1000) mHistory.setEnding(0);
+ mHistory.setEnding(mPlayers.getCurrentPosition());
mControl.ending.setText(mPlayers.getStringForTime(mHistory.getEnding()));
}
@@ -443,20 +438,6 @@ public class DetailActivity extends BaseActivity implements CustomKeyDown.Listen
return true;
}
- private void onInterval() {
- int interval = Prefers.getInterval() * 2;
- if (interval > 60) interval = 15;
- Prefers.putInterval(interval);
- mControl.interval.setText(ResUtil.getString(R.string.second, Prefers.getInterval()));
- }
-
- private void onReset() {
- mHistory.setEnding(0);
- mHistory.setOpening(0);
- mControl.ending.setText(mPlayers.getStringForTime(mHistory.getEnding()));
- mControl.opening.setText(mPlayers.getStringForTime(mHistory.getOpening()));
- }
-
private void onTracks() {
mHandler.postDelayed(() -> getPlayerView().hideController(), 150);
TrackSelectionDialog.createForPlayer(mPlayers.exo(), dialog -> {
@@ -548,10 +529,9 @@ public class DetailActivity extends BaseActivity implements CustomKeyDown.Listen
@Override
public void onTimeChanged() {
- long duration = mPlayers.getDuration();
long current = mPlayers.getCurrentPosition();
if (mHistory.getOpening() >= current) mPlayers.seekTo(mHistory.getOpening());
- if (mHistory.getEnding() > 0 && duration > 0 && mHistory.getEnding() + current >= duration) {
+ if (mHistory.getEnding() > 0 && mHistory.getEnding() <= current) {
Clock.get().setCallback(null);
checkNext();
}
diff --git a/app/src/leanback/res/layout/view_controller_bottom.xml b/app/src/leanback/res/layout/view_controller_bottom.xml
index 81f9db5f5..bef8cb8f1 100644
--- a/app/src/leanback/res/layout/view_controller_bottom.xml
+++ b/app/src/leanback/res/layout/view_controller_bottom.xml
@@ -121,7 +121,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="12dp"
- android:text="@string/play_oped"
+ android:text="@string/play_op"
android:textColor="@color/grey_700"
android:textSize="18sp" />
@@ -139,20 +139,15 @@
tools:text="00:00" />
+ android:text="@string/play_ed"
+ android:textColor="@color/grey_700"
+ android:textSize="18sp" />
-
-
+ tools:text="00:00" />
diff --git a/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java b/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java
index 16dce0ea0..ee8f66cca 100644
--- a/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java
+++ b/app/src/main/java/com/fongmi/android/tv/db/AppDatabase.java
@@ -22,7 +22,7 @@ import com.fongmi.android.tv.db.dao.SiteDao;
@Database(entities = {Config.class, Site.class, History.class, Keep.class}, version = AppDatabase.VERSION, exportSchema = false)
public abstract class AppDatabase extends RoomDatabase {
- public static final int VERSION = 9;
+ public static final int VERSION = 10;
public static final String SYMBOL = "@@@";
private static volatile AppDatabase instance;
@@ -33,7 +33,7 @@ public abstract class AppDatabase extends RoomDatabase {
}
private static AppDatabase create(Context context) {
- return Room.databaseBuilder(context, AppDatabase.class, "tv").addMigrations(MIGRATION_8_9).allowMainThreadQueries().fallbackToDestructiveMigration().build();
+ return Room.databaseBuilder(context, AppDatabase.class, "tv").addMigrations(MIGRATION_8_9).addMigrations(MIGRATION_9_10).allowMainThreadQueries().fallbackToDestructiveMigration().build();
}
public abstract KeepDao getKeepDao();
@@ -50,4 +50,11 @@ public abstract class AppDatabase extends RoomDatabase {
database.execSQL("CREATE TABLE IF NOT EXISTS `Keep` (`key` TEXT NOT NULL, `siteName` TEXT, `vodName` TEXT, `vodPic` TEXT, `createTime` INTEGER NOT NULL, `cid` INTEGER NOT NULL, PRIMARY KEY(`key`))");
}
};
+
+ static final Migration MIGRATION_9_10 = new Migration(9, 10) {
+ @Override
+ public void migrate(@NonNull SupportSQLiteDatabase database) {
+ database.execSQL("UPDATE `History` SET ending = 0;");
+ }
+ };
}
diff --git a/app/src/main/java/com/fongmi/android/tv/utils/Prefers.java b/app/src/main/java/com/fongmi/android/tv/utils/Prefers.java
index db770f506..d315fa806 100644
--- a/app/src/main/java/com/fongmi/android/tv/utils/Prefers.java
+++ b/app/src/main/java/com/fongmi/android/tv/utils/Prefers.java
@@ -116,14 +116,6 @@ public class Prefers {
put("scale", scale);
}
- public static int getInterval() {
- return getInt("interval", 15);
- }
-
- public static void putInterval(int interval) {
- put("interval", interval);
- }
-
public static boolean getUpdate() {
return getBoolean("update", true);
}
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 50e8f8203..86389e00a 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -35,7 +35,8 @@
重播
重置
轨道
- 片头片尾
+ 片头
+ 片尾
倒序
→
←
@@ -85,7 +86,6 @@
全部
- %s 秒
- 低
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
index 67ae82e2f..bc3878682 100644
--- a/app/src/main/res/values-zh-rTW/strings.xml
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -35,7 +35,8 @@
重播
重置
軌道
- 片頭片尾
+ 片頭
+ 片尾
倒序
→
←
@@ -85,7 +86,6 @@
全部
- %s 秒
- 低
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 5b23109e1..12939b973 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -35,7 +35,8 @@
Replay
Reset
Tracks
- OP&ED
+ OP
+ OP
Reverse
→
←
@@ -85,7 +86,6 @@
All
- %s s
- Surface