6.7.0 - Alpha4 - Fine tuning

This commit is contained in:
SuperMonster003
2025-09-09 17:26:54 +08:00
parent 9991ec3c28
commit c2aab17618
13 changed files with 111 additions and 112 deletions

40
.run/app (legacy).run.xml Normal file
View File

@@ -0,0 +1,40 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="app (legacy)" type="AndroidRunConfigurationType" factoryName="Android App" singleton="true">
<module name="AutoJs6.app.main" />
<option name="DEPLOY" value="true" />
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
<option name="DEPLOY_AS_INSTANT" value="false" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="ALL_USERS" value="false" />
<option name="ALWAYS_INSTALL_WITH_PM" value="true" />
<option name="CLEAR_APP_STORAGE" value="false" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="specific_activity" />
<option name="CLEAR_LOGCAT" value="false" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
<option name="INSPECTION_WITHOUT_ACTIVITY_RESTART" value="false" />
<option name="TARGET_SELECTION_MODE" value="DEVICE_AND_SNAPSHOT_COMBO_BOX" />
<option name="DEBUGGER_TYPE" value="Java" />
<Java>
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
<option name="DEBUG_SANDBOX_SDK" value="false" />
</Java>
<Profilers>
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
<option name="STARTUP_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Java/Kotlin Method Sample (legacy)" />
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
</Profilers>
<option name="DEEP_LINK" value="" />
<option name="ACTIVITY_CLASS" value="org.autojs.autojs.ui.splash.SplashActivity" />
<option name="SEARCH_ACTIVITY_IN_GLOBAL_SCOPE" value="false" />
<option name="SKIP_ACTIVITY_VALIDATION" value="true" />
<method v="2">
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
</method>
</configuration>
</component>

45
.run/app (modern).run.xml Normal file
View File

@@ -0,0 +1,45 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="app (modern)" type="AndroidRunConfigurationType" factoryName="Android App" singleton="true">
<module name="AutoJs6.app" />
<option name="ANDROID_RUN_CONFIGURATION_SCHEMA_VERSION" value="1" />
<option name="DEPLOY" value="true" />
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
<option name="DEPLOY_AS_INSTANT" value="false" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="ALL_USERS" value="false" />
<option name="ALWAYS_INSTALL_WITH_PM" value="true" />
<option name="ALLOW_ASSUME_VERIFIED" value="false" />
<option name="CLEAR_APP_STORAGE" value="false" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="specific_activity" />
<option name="RESTORE_ENABLED" value="false" />
<option name="RESTORE_FILE" value="" />
<option name="RESTORE_FRESH_INSTALL_ONLY" value="false" />
<option name="CLEAR_LOGCAT" value="false" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
<option name="TARGET_SELECTION_MODE" value="DEVICE_AND_SNAPSHOT_COMBO_BOX" />
<option name="DEBUGGER_TYPE" value="Java" />
<Java>
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
<option name="DEBUG_SANDBOX_SDK" value="false" />
</Java>
<Profilers>
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
<option name="STARTUP_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Java/Kotlin Method Sample (legacy)" />
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
</Profilers>
<option name="DEEP_LINK" value="" />
<option name="ACTIVITY" value="" />
<option name="ACTIVITY_CLASS" value="org.autojs.autojs.ui.splash.SplashActivity" />
<option name="SEARCH_ACTIVITY_IN_GLOBAL_SCOPE" value="false" />
<option name="SKIP_ACTIVITY_VALIDATION" value="true" />
<method v="2">
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
</method>
</configuration>
</component>

View File

@@ -1,88 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App" activateToolWindowBeforeRun="false" singleton="true">
<module name="AutoJs6.app" />
<option name="ANDROID_RUN_CONFIGURATION_SCHEMA_VERSION" value="1" />
<option name="DEPLOY" value="true" />
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
<option name="DEPLOY_AS_INSTANT" value="false" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="ALL_USERS" value="false" />
<option name="ALWAYS_INSTALL_WITH_PM" value="true" />
<option name="ALLOW_ASSUME_VERIFIED" value="false" />
<option name="CLEAR_APP_STORAGE" value="false" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="specific_activity" />
<option name="RESTORE_ENABLED" value="false" />
<option name="RESTORE_FILE" value="" />
<option name="RESTORE_FRESH_INSTALL_ONLY" value="false" />
<option name="CLEAR_LOGCAT" value="false" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
<option name="TARGET_SELECTION_MODE" value="DEVICE_AND_SNAPSHOT_COMBO_BOX" />
<option name="DEBUGGER_TYPE" value="Java" />
<Java>
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
<option name="DEBUG_SANDBOX_SDK" value="false" />
</Java>
<Profilers>
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
<option name="STARTUP_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Java/Kotlin Method Sample (legacy)" />
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
</Profilers>
<option name="DEEP_LINK" value="" />
<option name="ACTIVITY" value="" />
<option name="ACTIVITY_CLASS" value="org.autojs.autojs.ui.splash.SplashActivity" />
<option name="SEARCH_ACTIVITY_IN_GLOBAL_SCOPE" value="false" />
<option name="SKIP_ACTIVITY_VALIDATION" value="false" />
<method v="2">
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
</method>
</configuration>
<configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App" activateToolWindowBeforeRun="false" singleton="true">
<module name="AutoJs6.app" />
<option name="ANDROID_RUN_CONFIGURATION_SCHEMA_VERSION" value="1" />
<option name="DEPLOY" value="true" />
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
<option name="DEPLOY_AS_INSTANT" value="false" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="ALL_USERS" value="false" />
<option name="ALWAYS_INSTALL_WITH_PM" value="true" />
<option name="ALLOW_ASSUME_VERIFIED" value="false" />
<option name="CLEAR_APP_STORAGE" value="false" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="specific_activity" />
<option name="RESTORE_ENABLED" value="false" />
<option name="RESTORE_FILE" value="" />
<option name="RESTORE_FRESH_INSTALL_ONLY" value="false" />
<option name="CLEAR_LOGCAT" value="false" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
<option name="TARGET_SELECTION_MODE" value="DEVICE_AND_SNAPSHOT_COMBO_BOX" />
<option name="DEBUGGER_TYPE" value="Java" />
<Java>
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
<option name="DEBUG_SANDBOX_SDK" value="false" />
</Java>
<Profilers>
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
<option name="STARTUP_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Java/Kotlin Method Sample (legacy)" />
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
</Profilers>
<option name="DEEP_LINK" value="" />
<option name="ACTIVITY" value="" />
<option name="ACTIVITY_CLASS" value="org.autojs.autojs.ui.splash.SplashActivity" />
<option name="SEARCH_ACTIVITY_IN_GLOBAL_SCOPE" value="false" />
<option name="SKIP_ACTIVITY_VALIDATION" value="false" />
<method v="2">
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
</method>
</configuration>
</component>

View File

@@ -206,9 +206,9 @@ class UiSelector : UiGlobalSelector {
public override fun idStartsWith(prefix: String): UiGlobalSelector {
if (!prefix.contains(":")) {
addFilter(object : Filter {
override fun filter(nodeInfo: UiObject): Boolean {
override fun filter(node: UiObject): Boolean {
val fullIdPrefix = mAccessibilityBridge.getInfoProvider().latestPackage + ":id/" + prefix
val id = nodeInfo.getViewIdResourceName()
val id = node.getViewIdResourceName()
return id != null && id.startsWith(fullIdPrefix)
}

View File

@@ -16,28 +16,28 @@ interface Able {
val ABLE_MAP = SparseArrayEntries<Able>()
.entry(AccessibilityNodeInfo.ACTION_CLICK, object : Able {
override fun isAble(nodeInfo: UiObject): Boolean {
return nodeInfo.isClickable
override fun isAble(node: UiObject): Boolean {
return node.isClickable
}
})
.entry(AccessibilityNodeInfo.ACTION_LONG_CLICK, object : Able {
override fun isAble(nodeInfo: UiObject): Boolean {
return nodeInfo.isLongClickable
override fun isAble(node: UiObject): Boolean {
return node.isLongClickable
}
})
.entry(AccessibilityNodeInfo.ACTION_FOCUS, object : Able {
override fun isAble(nodeInfo: UiObject): Boolean {
return nodeInfo.isFocusable
override fun isAble(node: UiObject): Boolean {
return node.isFocusable
}
})
.entry(AccessibilityNodeInfo.ACTION_SCROLL_BACKWARD, object : Able {
override fun isAble(nodeInfo: UiObject): Boolean {
return nodeInfo.isScrollable
override fun isAble(node: UiObject): Boolean {
return node.isScrollable
}
})
.entry(AccessibilityNodeInfo.ACTION_SCROLL_FORWARD, object : Able {
override fun isAble(nodeInfo: UiObject): Boolean {
return nodeInfo.isScrollable
override fun isAble(node: UiObject): Boolean {
return node.isScrollable
}
})
.sparseArray()

View File

@@ -400,7 +400,7 @@ class Shell(private val scriptRuntime: ScriptRuntime) : Augmentable(scriptRuntim
data class CommandArgumentsData(val arguments: String = "", val withRoot: Boolean = false, val withExit: Boolean = false)
data class CommandData(val command: String, @IntRange(0, 1) val withRoot: Int = 0)
data class CommandData(val command: String, val withRoot: Int = 0)
}

View File

@@ -47,7 +47,7 @@ open class ResizableExpandableFloatyWindow(private var floaty: ResizableExpandab
val windowView = View.inflate(service, R.layout.ef_expandable_floaty_container, null).apply {
isFocusableInTouchMode = true
}
mViewSwitcher = windowView.findViewById<ViewSwitcher?>(R.id.container).also { switcher ->
mViewSwitcher = windowView.findViewById<ViewSwitcher>(R.id.container).also { switcher ->
switcher.measureAllChildren = false
ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT).let { params ->
switcher.addView(mCollapsedView, params)

View File

@@ -7,7 +7,6 @@ import android.view.Menu
import android.view.MenuItem
import android.widget.Toast
import androidx.annotation.StringRes
import androidx.core.content.ContextCompat
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.DefaultItemAnimator
import androidx.recyclerview.widget.LinearLayoutManager
@@ -38,9 +37,7 @@ class ManageKeyStoreActivity : BaseActivity() {
companion object {
fun startActivity(context: Context) {
Intent(context, ManageKeyStoreActivity::class.java).apply {}.also {
ContextCompat.startActivity(context, it, null)
}
context.startActivity(Intent(context, ManageKeyStoreActivity::class.java))
}
}

View File

@@ -88,7 +88,7 @@ class VersionHistoryRepository {
private val regexValidMarkdownVersion = Regex("""^#\s+v[\d.]+\S*""")
enum class Category(@StringRes val labelRes: Int, val priority: Int) {
enum class Category(val labelRes: Int, val priority: Int) {
HINT(R.string.changelog_label_hint, -2),
FEATURE(R.string.changelog_label_feature, 3),
FIX(R.string.changelog_label_fix, 2),

View File

@@ -32,7 +32,7 @@ class RoundCheckboxWithText : LinearLayout {
mCheckbox = findViewById<CheckBox>(R.id.checkbox).also { it.isChecked = isChecked }
mTextView = findViewById<TextView>(R.id.text).also { it.text = text }
mWrapper = findViewById<LinearLayout?>(R.id.wrapper).also {
mWrapper = findViewById<LinearLayout>(R.id.wrapper).also {
it.setOnClickListener { if (isEnabled) mCheckbox.toggle() }
}
}

View File

@@ -26,7 +26,8 @@ target_include_directories(pngquant_bridge PRIVATE
external/libpng)
target_link_libraries(pngquant_bridge
jnigraphics # Android NDK 库,用于从本地代码访问位图像素
imagequant # libimagequant 静态库
png_static # libpng 静态库
${ZLIB_LIB} # zlib.so
log) # __android_log_print
${ZLIB_LIB} # zlib.so - libpng 使用的压缩库
log) # Android

View File

@@ -40,7 +40,11 @@ android {
externalNativeBuild {
cmake {
cppFlags "-std=c++17"
cFlags "-ljnigraphics"
// @Hint by SuperMonster003 on Aug 28, 2025.
// ! Moved into `target_link_libraries(pngquant_bridge ...)` in `CMakeLists.txt`.
// ! zh-CN: 移至 `CMakeLists.txt` 文件 `target_link_libraries(pngquant_bridge ...)` 代码中.
// # cFlags "-ljnigraphics"
}
}

View File

@@ -56,6 +56,7 @@ import java.util.TimeZone;
/**
* Dialog allowing users to select a date.
*/
@SuppressWarnings("unchecked")
public class DatePickerDialog extends AppCompatDialogFragment implements
OnClickListener, DatePickerController {
@@ -321,7 +322,6 @@ public class DatePickerDialog extends AppCompatDialogFragment implements
currentView = savedInstanceState.getInt(KEY_CURRENT_VIEW);
listPosition = savedInstanceState.getInt(KEY_LIST_POSITION);
listPositionOffset = savedInstanceState.getInt(KEY_LIST_POSITION_OFFSET);
//noinspection unchecked
highlightedDays = (HashSet<Calendar>) savedInstanceState.getSerializable(KEY_HIGHLIGHTED_DAYS);
mThemeDark = savedInstanceState.getBoolean(KEY_THEME_DARK);
mThemeDarkChanged = savedInstanceState.getBoolean(KEY_THEME_DARK_CHANGED);