6.6.2 - Alpha4 - UI 模式状态栏及导航栏默认为 md_grey_50 色值且设置为亮色模式

This commit is contained in:
SuperMonster003
2025-03-16 00:13:53 +08:00
parent 05bde0f7a3
commit f82726178d
2 changed files with 33 additions and 7 deletions

View File

@@ -24,6 +24,7 @@
"控件的文字及图标根据主题色亮度值自动切换合适的颜色", "控件的文字及图标根据主题色亮度值自动切换合适的颜色",
"部分控件主题色与背景色对比度过低时的视觉体验", "部分控件主题色与背景色对比度过低时的视觉体验",
"应用内页面导航栏设置为透明或半透明以增强视觉体验", "应用内页面导航栏设置为透明或半透明以增强视觉体验",
"UI 模式状态栏及导航栏默认为 `md_grey_50` 色值且设置为亮色模式",
"长按应用主页 \"文件\" 标签可切换浮动按钮可见状态", "长按应用主页 \"文件\" 标签可切换浮动按钮可见状态",
"日志页面浮动按钮可见状态与列表滚动操作联动", "日志页面浮动按钮可见状态与列表滚动操作联动",
"脚本项目配置文件 project.json 支持更多打包选项 _[`issue #305`](http://issues.autojs6.com/305)_ _[`issue #306`](http://issues.autojs6.com/306)_", "脚本项目配置文件 project.json 支持更多打包选项 _[`issue #305`](http://issues.autojs6.com/305)_ _[`issue #306`](http://issues.autojs6.com/306)_",

View File

@@ -3,12 +3,16 @@ package org.autojs.autojs.execution
import android.app.Activity import android.app.Activity
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.drawable.ColorDrawable
import android.graphics.drawable.Drawable
import android.os.Build
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
import android.view.KeyEvent import android.view.KeyEvent
import android.view.Menu import android.view.Menu
import android.view.MenuItem import android.view.MenuItem
import android.view.MotionEvent import android.view.MotionEvent
import android.view.WindowManager
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import org.autojs.autojs.annotation.ScriptInterface import org.autojs.autojs.annotation.ScriptInterface
import org.autojs.autojs.core.eventloop.EventEmitter import org.autojs.autojs.core.eventloop.EventEmitter
@@ -23,7 +27,10 @@ import org.autojs.autojs.execution.ScriptExecution.AbstractScriptExecution
import org.autojs.autojs.inrt.autojs.LoopBasedJavaScriptEngineWithDecryption import org.autojs.autojs.inrt.autojs.LoopBasedJavaScriptEngineWithDecryption
import org.autojs.autojs.runtime.ScriptRuntime import org.autojs.autojs.runtime.ScriptRuntime
import org.autojs.autojs.script.ScriptSource import org.autojs.autojs.script.ScriptSource
import org.autojs.autojs.util.ColorUtils
import org.autojs.autojs.util.ViewUtils
import org.autojs.autojs6.BuildConfig import org.autojs.autojs6.BuildConfig
import org.autojs.autojs6.R
import org.mozilla.javascript.ContinuationPending import org.mozilla.javascript.ContinuationPending
/** /**
@@ -31,12 +38,18 @@ import org.mozilla.javascript.ContinuationPending
* Modified by SuperMonster003 as of Nov 15, 2023. * Modified by SuperMonster003 as of Nov 15, 2023.
*/ */
class ScriptExecuteActivity : AppCompatActivity() { class ScriptExecuteActivity : AppCompatActivity() {
private var mResult: Any? = null
private lateinit var mScriptEngine: ScriptEngine<*> private var mRuntime: ScriptRuntime? = null
private var mExecutionListener: ScriptExecutionListener? = null private var mExecutionListener: ScriptExecutionListener? = null
private var mScriptSource: ScriptSource? = null private var mScriptSource: ScriptSource? = null
private var mResult: Any? = null
private lateinit var mScriptEngine: ScriptEngine<*>
private lateinit var mScriptExecution: ActivityScriptExecution private lateinit var mScriptExecution: ActivityScriptExecution
private var mRuntime: ScriptRuntime? = null
@ScriptInterface
lateinit var eventEmitter: EventEmitter
private set
@ScriptInterface @ScriptInterface
val emitter: EventEmitter? val emitter: EventEmitter?
@@ -45,16 +58,28 @@ class ScriptExecuteActivity : AppCompatActivity() {
else -> null else -> null
} }
@ScriptInterface
lateinit var eventEmitter: EventEmitter
private set
// FIXME by Stardust on Mar 16, 2018. // FIXME by Stardust on Mar 16, 2018.
// ! 如果 Activity 被回收则得不到改进. // ! 如果 Activity 被回收则得不到改进.
// ! en-US (translated by SuperMonster003 on Jul 29, 2024): // ! en-US (translated by SuperMonster003 on Jul 29, 2024):
// ! No improvements would be obtained if Activity was destroyed. // ! No improvements would be obtained if Activity was destroyed.
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
val windowBackground: Drawable = window.decorView.background
?: ColorDrawable(getColor(R.color.md_grey_50)).also { window.setBackgroundDrawable(it) }
if (windowBackground is ColorDrawable) windowBackground.color.let { backgroundColor ->
val isLightColor = ColorUtils.isLuminanceDark(backgroundColor)
ViewUtils.setStatusBarBackgroundColor(this, backgroundColor)
ViewUtils.setStatusBarAppearanceLight(this, isLightColor)
ViewUtils.setNavigationBarBackgroundColor(this, backgroundColor)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
ViewUtils.setNavigationBarAppearanceLight(this, isLightColor)
}
}
ViewUtils.addWindowFlags(this, WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS)
val executionId = intent.getIntExtra(EXTRA_EXECUTION_ID, ScriptExecution.NO_ID) val executionId = intent.getIntExtra(EXTRA_EXECUTION_ID, ScriptExecution.NO_ID)
if (executionId == ScriptExecution.NO_ID) { if (executionId == ScriptExecution.NO_ID) {
super.finish() super.finish()