From 1d18e5652a34d6b5f13516f89b229b1974c1ffc3 Mon Sep 17 00:00:00 2001 From: SuperMonster003 Date: Fri, 12 Sep 2025 14:31:08 +0800 Subject: [PATCH] =?UTF-8?q?6.7.0=20-=20Alpha5=20-=20=E4=BF=AE=E5=A4=8D=20f?= =?UTF-8?q?loaty.window/rawWindow=20=E6=96=B9=E6=B3=95=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E6=8E=A5=E5=8F=97=E5=AD=97=E7=AC=A6=E4=B8=B2=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .changelog/lang_zh-Hans.json | 1 + .../org/autojs/autojs/runtime/api/augment/floaty/Floaty.kt | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.changelog/lang_zh-Hans.json b/.changelog/lang_zh-Hans.json index adef8464..ec590b08 100644 --- a/.changelog/lang_zh-Hans.json +++ b/.changelog/lang_zh-Hans.json @@ -12,6 +12,7 @@ "fix": [ "isJavaClass/isJavaPackage 等全局方法无效的问题", "timers.keepAlive 方法 timeout 参数功能无效的问题", + "floaty.window/rawWindow 方法无法接受字符串参数的问题", "使用 XML 语法将 JavaScript 表达式作为属性值时, this 对象可能出现指向错误的问题", "canvas 元素控件 setMaxFps 方法内部帧率计算错误", "images.concat 方法纵向拼接时宽度值计算错误", diff --git a/app/src/main/java/org/autojs/autojs/runtime/api/augment/floaty/Floaty.kt b/app/src/main/java/org/autojs/autojs/runtime/api/augment/floaty/Floaty.kt index 590af94b..39a878b9 100644 --- a/app/src/main/java/org/autojs/autojs/runtime/api/augment/floaty/Floaty.kt +++ b/app/src/main/java/org/autojs/autojs/runtime/api/augment/floaty/Floaty.kt @@ -6,6 +6,7 @@ import org.autojs.autojs.annotation.RhinoRuntimeFunctionInterface import org.autojs.autojs.core.floaty.BaseResizableFloatyWindow import org.autojs.autojs.core.ui.ViewExtras import org.autojs.autojs.extension.AnyExtensions.isJsNullish +import org.autojs.autojs.extension.AnyExtensions.isJsString import org.autojs.autojs.extension.AnyExtensions.jsBrief import org.autojs.autojs.extension.FlexibleArray import org.autojs.autojs.extension.ScriptableExtensions.defineProp @@ -93,13 +94,13 @@ class Floaty(scriptRuntime: ScriptRuntime) : Augmentable(scriptRuntime) { } private fun wrap(scriptRuntime: ScriptRuntime, windowFunction: (supplier: BaseResizableFloatyWindow.ViewSupplier) -> JsWindow, xml: Any?): ProxyJavaObject { - require(xml is XML) { "Argument xml ${xml.jsBrief()} is invalid for Floaty#wrap" } + require(xml is XML || xml.isJsString()) { "Argument xml ${xml.jsBrief()} is invalid for Floaty#wrap" } val storage = mutableMapOf() val layoutInflater = scriptRuntime.ui.layoutInflater val window = windowFunction(object : BaseResizableFloatyWindow.ViewSupplier { override fun inflate(context: AndroidContext, parent: ViewGroup?): View { layoutInflater.context = context - return layoutInflater.inflate(toXMLString(xml), parent, true) + return layoutInflater.inflate(toXMLString(xml!!), parent, true) } }) val getter = fun(args: Array): Any? {