diff --git a/app/src/main/java/com/github/tvbox/osc/player/controller/VodController.java b/app/src/main/java/com/github/tvbox/osc/player/controller/VodController.java
index 1935e762..bcefff7b 100644
--- a/app/src/main/java/com/github/tvbox/osc/player/controller/VodController.java
+++ b/app/src/main/java/com/github/tvbox/osc/player/controller/VodController.java
@@ -962,7 +962,7 @@ public class VodController extends BaseController {
return true;
}
// } else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) { return true;// 闲置开启计时关闭透明底栏
- } else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN || keyCode == KeyEvent.KEYCODE_DPAD_UP || keyCode== KeyEvent.KEYCODE_MENU) {
+ } else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN || keyCode== KeyEvent.KEYCODE_MENU) {
if (!isBottomVisible()) {
showBottom();
myHandle.postDelayed(myRunnable, myHandleSeconds);
@@ -983,13 +983,26 @@ public class VodController extends BaseController {
private boolean fromLongPress;
private float speed_old = 1.0f;
- @Override
- public void onLongPress(MotionEvent e) {
- if (videoPlayState!=VideoView.STATE_PAUSED) {
- fromLongPress = true;
+
+ private void speedPlayStart(){
+ fromLongPress = true;
+ try {
+ speed_old = (float) mPlayerConfig.getDouble("sp");
+ float speed = 3.0f;
+ mPlayerConfig.put("sp", speed);
+ updatePlayerCfgView();
+ listener.updatePlayerCfg();
+ mControlWrapper.setSpeed(speed);
+ findViewById(R.id.play_speed_3_container).setVisibility(View.VISIBLE);
+ } catch (JSONException f) {
+ f.printStackTrace();
+ }
+ }
+ private void speedPlayEnd(){
+ if (fromLongPress) {
+ fromLongPress =false;
try {
- speed_old = (float) mPlayerConfig.getDouble("sp");
- float speed = 3.0f;
+ float speed = speed_old;
mPlayerConfig.put("sp", speed);
updatePlayerCfgView();
listener.updatePlayerCfg();
@@ -997,6 +1010,13 @@ public class VodController extends BaseController {
} catch (JSONException f) {
f.printStackTrace();
}
+ findViewById(R.id.play_speed_3_container).setVisibility(View.GONE);
+ }
+ }
+ @Override
+ public void onLongPress(MotionEvent e) {
+ if (videoPlayState!=VideoView.STATE_PAUSED) {
+ speedPlayStart();
}
}
@@ -1004,22 +1024,26 @@ public class VodController extends BaseController {
@Override
public boolean onTouchEvent(MotionEvent e) {
if (e.getAction() == MotionEvent.ACTION_UP) {
- if (fromLongPress) {
- fromLongPress =false;
- try {
- float speed = speed_old;
- mPlayerConfig.put("sp", speed);
- updatePlayerCfgView();
- listener.updatePlayerCfg();
- mControlWrapper.setSpeed(speed);
- } catch (JSONException f) {
- f.printStackTrace();
- }
- }
+ speedPlayEnd();
}
return super.onTouchEvent(e);
}
+ public boolean onKeyDown(int keyCode, KeyEvent event) {
+ if ((keyCode == KeyEvent.KEYCODE_DPAD_UP) && event.getRepeatCount() == 0) {
+ speedPlayStart();
+ }
+ return super.onKeyDown(keyCode, event);
+ }
+
+ @Override
+ public boolean onKeyUp(int keyCode, KeyEvent event) {
+ if (keyCode == KeyEvent.KEYCODE_DPAD_UP) {
+ speedPlayEnd();
+ }
+ return super.onKeyUp(keyCode, event);
+ }
+
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
myHandle.removeCallbacks(myRunnable);
diff --git a/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java b/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java
index 6a9cdf15..f0ceb4ee 100644
--- a/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java
+++ b/app/src/main/java/com/github/tvbox/osc/ui/activity/PlayActivity.java
@@ -1536,15 +1536,15 @@ public class PlayActivity extends BaseActivity {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view,url);
- String click=sourceBean.getClickSelector();
+ String click=sourceBean.getClickSelector().trim();
LOG.i("echo-onPageFinished url:" + url);
if(!click.isEmpty()){
String selector;
- if(click.contains(";")){
+ if(click.contains(";") && !click.endsWith(";")){
if(!url.contains(click.split(";")[0]))return;
selector=click.split(";")[1];
}else {
- selector=click.trim();
+ selector=click;
}
String js = selector;
if(!selector.contains("click()"))js+=".click();";
diff --git a/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java b/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java
index f2350615..95441a12 100644
--- a/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java
+++ b/app/src/main/java/com/github/tvbox/osc/ui/fragment/PlayFragment.java
@@ -1586,11 +1586,11 @@ public class PlayFragment extends BaseLazyFragment {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
- String clickSelector = sourceBean.getClickSelector();
+ String clickSelector = sourceBean.getClickSelector().trim();
LOG.i("echo-onPageFinished url:" + url);
- if (clickSelector != null && !clickSelector.trim().isEmpty()) {
+ if (!clickSelector.isEmpty()) {
String selector;
- if (clickSelector.contains(";")) {
+ if (clickSelector.contains(";") && !clickSelector.endsWith(";")) {
String[] parts = clickSelector.split(";", 2);
if (!url.contains(parts[0])) {
return;
diff --git a/app/src/main/res/drawable/bg_speed_indicator.xml b/app/src/main/res/drawable/bg_speed_indicator.xml
new file mode 100644
index 00000000..d24fb787
--- /dev/null
+++ b/app/src/main/res/drawable/bg_speed_indicator.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
diff --git a/app/src/main/res/layout/player_vod_control_view.xml b/app/src/main/res/layout/player_vod_control_view.xml
index f2dab740..e69296a1 100644
--- a/app/src/main/res/layout/player_vod_control_view.xml
+++ b/app/src/main/res/layout/player_vod_control_view.xml
@@ -649,4 +649,23 @@
android:src="@drawable/icon_unlock"
android:visibility="invisible" />
+
+
+
+
+
diff --git a/gradle.properties b/gradle.properties
index e86424f0..8b1a2183 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -17,4 +17,4 @@ android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
IsDebug=true
-org.gradle.jvmargs=-Xmx2048m --add-opens java.base/java.io=ALL-UNNAMED
+#org.gradle.jvmargs=-Xmx2048m --add-opens java.base/java.io=ALL-UNNAMED