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"/> + +