From af752d5e4c1699d973f8f4c04549c8114bab89bd Mon Sep 17 00:00:00 2001
From: hyb1996 <946994919@qq.com>
Date: Sat, 12 Aug 2017 14:29:15 +0800
Subject: [PATCH] move 'record toast' to prefs
---
.../java/com/stardust/scriptdroid/Pref.java | 4 ++++
.../autojs/record/GlobalRecorder.java | 19 ++++++++++++++++++-
.../menu/content/RecordNavigatorContent.java | 9 +--------
.../res/layout/floating_window_record.xml | 6 ++++--
app/src/main/res/values/strings.xml | 1 +
app/src/main/res/xml/preferences.xml | 5 +++++
6 files changed, 33 insertions(+), 11 deletions(-)
diff --git a/app/src/main/java/com/stardust/scriptdroid/Pref.java b/app/src/main/java/com/stardust/scriptdroid/Pref.java
index ef53bbef..8b861f59 100644
--- a/app/src/main/java/com/stardust/scriptdroid/Pref.java
+++ b/app/src/main/java/com/stardust/scriptdroid/Pref.java
@@ -124,4 +124,8 @@ public class Pref {
public static boolean isRecordWithRootEnabled() {
return def().getBoolean(getString(R.string.key_record_with_root), false);
}
+
+ public static boolean isRecordToastEnabled() {
+ return def().getBoolean(getString(R.string.key_record_toast), true);
+ }
}
diff --git a/app/src/main/java/com/stardust/scriptdroid/autojs/record/GlobalRecorder.java b/app/src/main/java/com/stardust/scriptdroid/autojs/record/GlobalRecorder.java
index 8ab6d4d5..78f4cef6 100644
--- a/app/src/main/java/com/stardust/scriptdroid/autojs/record/GlobalRecorder.java
+++ b/app/src/main/java/com/stardust/scriptdroid/autojs/record/GlobalRecorder.java
@@ -14,11 +14,13 @@ import com.stardust.app.DialogUtils;
import com.stardust.autojs.core.inputevent.InputEventCodes;
import com.stardust.autojs.core.inputevent.ShellKeyObserver;
import com.stardust.autojs.core.record.Recorder;
+import com.stardust.autojs.core.record.accessibility.AccessibilityActionRecorder;
import com.stardust.autojs.core.record.inputevent.TouchRecorder;
import com.stardust.autojs.runtime.api.Shell;
import com.stardust.scriptdroid.App;
import com.stardust.scriptdroid.Pref;
import com.stardust.scriptdroid.R;
+import com.stardust.scriptdroid.accessibility.AccessibilityEventHelper;
import com.stardust.scriptdroid.autojs.AutoJs;
import com.stardust.scriptdroid.ui.common.ScriptOperations;
import com.stardust.theme.dialog.ThemeColorMaterialDialogBuilder;
@@ -26,6 +28,9 @@ import com.stardust.util.ClipboardUtil;
import com.stardust.view.accessibility.AccessibilityService;
import com.stardust.view.accessibility.OnKeyListener;
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+
import java.util.concurrent.CopyOnWriteArrayList;
/**
@@ -59,6 +64,7 @@ public class GlobalRecorder implements Recorder.OnStateChangedListener {
mContext = new ContextThemeWrapper(context.getApplicationContext(), R.style.AppTheme);
mTouchRecorder = new TouchRecorder(context);
addKeyListeners();
+ EventBus.getDefault().register(this);
}
private void addKeyListeners() {
@@ -90,6 +96,9 @@ public class GlobalRecorder implements Recorder.OnStateChangedListener {
private void onVolumeDown() {
+ if (!Pref.isRecordVolumeControlEnable()) {
+ return;
+ }
if (System.currentTimeMillis() - mLastVolumeDownEventTime < 300) {
return;
}
@@ -147,7 +156,8 @@ public class GlobalRecorder implements Recorder.OnStateChangedListener {
@Override
public void onStart() {
- App.getApp().getUiHandler().toast(R.string.text_start_record);
+ if (Pref.isRecordToastEnabled())
+ App.getApp().getUiHandler().toast(R.string.text_start_record);
for (Recorder.OnStateChangedListener listener : mOnStateChangedListeners) {
listener.onStart();
}
@@ -182,6 +192,13 @@ public class GlobalRecorder implements Recorder.OnStateChangedListener {
stop();
}
+ @Subscribe
+ public void onAccessibilityActionRecordEvent(AccessibilityActionRecorder.AccessibilityActionRecordEvent event) {
+ if (Pref.isRecordToastEnabled()) {
+ App.getApp().getUiHandler().toast(AccessibilityEventHelper.getEventTypeNameResId(event.getAccessibilityEvent()));
+ }
+ }
+
private void handleRecordedScript(final String script) {
if (Looper.myLooper() == Looper.getMainLooper()) {
showRecordHandleDialog(script);
diff --git a/app/src/main/java/com/stardust/scriptdroid/external/floatingwindow/menu/content/RecordNavigatorContent.java b/app/src/main/java/com/stardust/scriptdroid/external/floatingwindow/menu/content/RecordNavigatorContent.java
index f6c8589d..13bf0d5a 100644
--- a/app/src/main/java/com/stardust/scriptdroid/external/floatingwindow/menu/content/RecordNavigatorContent.java
+++ b/app/src/main/java/com/stardust/scriptdroid/external/floatingwindow/menu/content/RecordNavigatorContent.java
@@ -55,7 +55,7 @@ public class RecordNavigatorContent implements NavigatorContent, Recorder.OnStat
PrefSwitch mRecordedByRootSwitch;
@BindView(R.id.sw_record_toast)
- SwitchCompat mRecordToastSwitch;
+ PrefSwitch mRecordToastSwitch;
@BindView(R.id.img_pause_or_resume)
ImageView mPauseOrResumeImage;
@@ -163,13 +163,6 @@ public class RecordNavigatorContent implements NavigatorContent, Recorder.OnStat
mRecorder.removeOnStateChangedListener(this);
}
- @Subscribe
- public void onAccessibilityActionRecordEvent(AccessibilityActionRecorder.AccessibilityActionRecordEvent event) {
- if (mRecordToastSwitch.isChecked()) {
- Toast.makeText(mContext, AccessibilityEventHelper.getEventTypeNameResId(event.getAccessibilityEvent()), Toast.LENGTH_SHORT).show();
- }
- }
-
@Override
public void onStart() {
setState(Recorder.STATE_RECORDING);
diff --git a/app/src/main/res/layout/floating_window_record.xml b/app/src/main/res/layout/floating_window_record.xml
index ee22d262..d83022a5 100644
--- a/app/src/main/res/layout/floating_window_record.xml
+++ b/app/src/main/res/layout/floating_window_record.xml
@@ -62,13 +62,15 @@
android:gravity="center_vertical"
android:padding="16dp">
-
+ android:textOn="@string/text_on"
+ app:defaultValue="true"
+ app:key="@string/key_record_toast"/>
运行脚本
导入脚本文件
key_record_with_root
+ key_record_toast
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 0586684a..b6df81ee 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -13,6 +13,11 @@
android:defaultValue="false"
android:key="@string/key_record_with_root"
android:title="@string/text_record_with_root"/>
+
+