fix(ui): Don't call setOn(Long)ClickListener for an AdapterView
This commit is contained in:
9
autojs/src/main/assets/modules/__java_util__.js
Normal file
9
autojs/src/main/assets/modules/__java_util__.js
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
var J = {};
|
||||||
|
|
||||||
|
J.instanceOf = function(obj, clazz){
|
||||||
|
return java.lang.Class.forName(clazz).isAssignableFrom(obj.getClass());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
module.exports = J;
|
||||||
@@ -3,6 +3,8 @@ module.exports = function (runtime, global) {
|
|||||||
require("object-observe-lite.min")();
|
require("object-observe-lite.min")();
|
||||||
require("array-observe.min")();
|
require("array-observe.min")();
|
||||||
|
|
||||||
|
var J = require("__java_util__");
|
||||||
|
|
||||||
|
|
||||||
var ui = {};
|
var ui = {};
|
||||||
ui.__view_cache__ = {};
|
ui.__view_cache__ = {};
|
||||||
@@ -234,16 +236,19 @@ module.exports = function (runtime, global) {
|
|||||||
event.consumed = false;
|
event.consumed = false;
|
||||||
emit("touch", event, view);
|
emit("touch", event, view);
|
||||||
return event.consumed;
|
return event.consumed;
|
||||||
})
|
|
||||||
view.setOnLongClickListener(function (v) {
|
|
||||||
var event = {};
|
|
||||||
event.consumed = false;
|
|
||||||
emit("long_click", event, view);
|
|
||||||
return event.consumed;
|
|
||||||
});
|
|
||||||
view.setOnClickListener(function (v) {
|
|
||||||
emit("click", view);
|
|
||||||
});
|
});
|
||||||
|
if(!J.instanceOf(view, "android.widget.AdapterView")){
|
||||||
|
view.setOnLongClickListener(function (v) {
|
||||||
|
var event = {};
|
||||||
|
event.consumed = false;
|
||||||
|
emit("long_click", event, view);
|
||||||
|
return event.consumed;
|
||||||
|
});
|
||||||
|
view.setOnClickListener(function (v) {
|
||||||
|
emit("click", view);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
view.setOnKeyListener(function (v, keyCode, event) {
|
view.setOnKeyListener(function (v, keyCode, event) {
|
||||||
event = wrapMotionEvent(event);
|
event = wrapMotionEvent(event);
|
||||||
emit("key", keyCode, event, v);
|
emit("key", keyCode, event, v);
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.stardust.autojs.core.http;
|
package com.stardust.autojs.core.http;
|
||||||
|
|
||||||
|
import android.widget.AdapterView;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|||||||
Reference in New Issue
Block a user