6.7.0 - Alpha5 - 修复 floaty.window/rawWindow 方法无法接受字符串参数的问题
This commit is contained in:
@@ -12,6 +12,7 @@
|
|||||||
"fix": [
|
"fix": [
|
||||||
"isJavaClass/isJavaPackage 等全局方法无效的问题",
|
"isJavaClass/isJavaPackage 等全局方法无效的问题",
|
||||||
"timers.keepAlive 方法 timeout 参数功能无效的问题",
|
"timers.keepAlive 方法 timeout 参数功能无效的问题",
|
||||||
|
"floaty.window/rawWindow 方法无法接受字符串参数的问题",
|
||||||
"使用 XML 语法将 JavaScript 表达式作为属性值时, this 对象可能出现指向错误的问题",
|
"使用 XML 语法将 JavaScript 表达式作为属性值时, this 对象可能出现指向错误的问题",
|
||||||
"canvas 元素控件 setMaxFps 方法内部帧率计算错误",
|
"canvas 元素控件 setMaxFps 方法内部帧率计算错误",
|
||||||
"images.concat 方法纵向拼接时宽度值计算错误",
|
"images.concat 方法纵向拼接时宽度值计算错误",
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import org.autojs.autojs.annotation.RhinoRuntimeFunctionInterface
|
|||||||
import org.autojs.autojs.core.floaty.BaseResizableFloatyWindow
|
import org.autojs.autojs.core.floaty.BaseResizableFloatyWindow
|
||||||
import org.autojs.autojs.core.ui.ViewExtras
|
import org.autojs.autojs.core.ui.ViewExtras
|
||||||
import org.autojs.autojs.extension.AnyExtensions.isJsNullish
|
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.AnyExtensions.jsBrief
|
||||||
import org.autojs.autojs.extension.FlexibleArray
|
import org.autojs.autojs.extension.FlexibleArray
|
||||||
import org.autojs.autojs.extension.ScriptableExtensions.defineProp
|
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 {
|
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<String, Any?>()
|
val storage = mutableMapOf<String, Any?>()
|
||||||
val layoutInflater = scriptRuntime.ui.layoutInflater
|
val layoutInflater = scriptRuntime.ui.layoutInflater
|
||||||
val window = windowFunction(object : BaseResizableFloatyWindow.ViewSupplier {
|
val window = windowFunction(object : BaseResizableFloatyWindow.ViewSupplier {
|
||||||
override fun inflate(context: AndroidContext, parent: ViewGroup?): View {
|
override fun inflate(context: AndroidContext, parent: ViewGroup?): View {
|
||||||
layoutInflater.context = context
|
layoutInflater.context = context
|
||||||
return layoutInflater.inflate(toXMLString(xml), parent, true)
|
return layoutInflater.inflate(toXMLString(xml!!), parent, true)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
val getter = fun(args: Array<out Any?>): Any? {
|
val getter = fun(args: Array<out Any?>): Any? {
|
||||||
|
|||||||
Reference in New Issue
Block a user