1
0
forked from x/volcanos

opt chrome

This commit is contained in:
shaoying 2021-07-22 08:47:33 +08:00
parent c217a06db6
commit ff304154e0
5 changed files with 44 additions and 19 deletions

View File

@ -20,6 +20,7 @@ Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta,
can.base.Copy(can.onengine.river, can.Conf("river"))
can.ondaemon._init(can), can.onmotion._init(can, target), can.onkeypop._init(can, target)
can.onengine.signal(can, "onmain", can.request())
can.base.isFunc(cb) && cb()
})
},
_search: function(event, can, msg, panel, cmds, cb) {
@ -402,8 +403,8 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
})
},
_plugin: function(can, value, meta, cb, target) {
meta.feature = can.base.Obj(value.meta||"{}", {})
meta.inputs = can.base.Obj(value.list||"[]", [])
meta.feature = can.base.Obj(value.meta||"{}", meta.feature)||{}
meta.inputs =can.base.Obj(value.list||"[]", meta.inputs)||[]
meta.name = meta.name||value.name||"story"
meta.help = meta.help||value.help||"story"

View File

@ -109,7 +109,7 @@ Volcanos("misc", {help: "通信协议", Message: function(event, can) { var msg
})
can.misc.POST(can, msg, can.base.MergeURL(dataset.names.toLowerCase(),
"_", (msg._can.sup||msg._can)._name, "_daemon", dataset.daemon,
"_", (msg._can.sup||msg._can)._name, "_daemon", dataset.daemon||"",
), form, cb)
},
WSS: function(can, args, cb, onopen, onclose, onerror) {

View File

@ -162,6 +162,9 @@ Volcanos("user", {help: "用户操作", agent: {
var carte = {_target: ui._target, _parent: parent}
null && can.onmotion.float.add(can, "carte", carte)
ui._target.onmouseover = function(event) {
event.stopPropagation(), event.preventDefault()
}
return event.stopPropagation(), event.preventDefault(), carte
},
input: function(event, can, form, cb, button) { // form [ string, array, object, {_input: "select", values: []}

View File

@ -15,6 +15,8 @@ var Volcanos = shy("火山架", {volcano: "/frame.js", args: {}, pack: {}, libs:
var meta = arguments.callee.meta, list = arguments.callee.list
if (typeof name == "object") { var Config = name; _can_name = ""
meta.libs = Config.libs, meta.volcano = Config.volcano
Config.panels = Config.panels||[]
Config.main = Config.main||{}
// 预加载
var Preload = []; for (var i = 0; i < Config.panels.length; i++) { var panel = Config.panels[i]
@ -24,7 +26,9 @@ var Volcanos = shy("火山架", {volcano: "/frame.js", args: {}, pack: {}, libs:
// 根模块
name = Config.name, can = {_follow: Config.name, _target: document.body}
libs = Preload.concat(Config.main.list, Config.libs, Config.volcano), cb = function(can) {
can.onengine._init(can, can.Conf(Config), Config.panels, function(msg) {}, can._target)
can.onengine._init(can, can.Conf(Config), Config.panels, function(msg) {
can.base.isFunc(Config._init) && Config._init(can)
}, can._target)
}
}
@ -47,6 +51,7 @@ var Volcanos = shy("火山架", {volcano: "/frame.js", args: {}, pack: {}, libs:
typeof cb == "function" && setTimeout(function() { cb(can) }, 10)
return // 加载完成
}
if (!libs[0]) { return can.require(libs.slice(1), cb, each) }
libs[0] = libs[0].toLowerCase()
// 请求模块

View File

@ -34,7 +34,33 @@ Volcanos("chrome", {
msg.Push("link", item.src)
})
},
}, [], function(can) { can._load("/frame.js")
field: function(can, msg, arg) { can.require(["https://shylinux.com/page/index.css"])
can.onappend.plugin(can, {index: arg[0], arg: arg.slice(1)}, function(sub, meta) {
var top = msg.Option("top")||400
can.onmotion.float.auto(can, document.body, "carte")
can.onmotion.float.auto(can, sub._output, "carte")
can.page.Modify(can, sub._target, {style: {
background: "radial-gradient(black, #00000073)",
position: "absolute", "top": top,
}})
can.page.Modify(can, sub._output, {style: {
"max-height": window.innerHeight-top-80,
"max-width": window.innerWidth,
}})
sub._legend.onclick = function(event) {
can.onmotion.toggle(can, sub._option)
can.onmotion.toggle(can, sub._action)
can.onmotion.toggle(can, sub._output)
can.onmotion.toggle(can, sub._status)
}, sub._legend.onclick()
sub.run = function(event, cmds, cb) {
can.run(event, ["action", "command", "run", meta.index].concat(cmds), cb)
}
}, document.body)
},
}, ["/frame.js"], function(can) {
chrome.extension.onMessage.addListener(function(req, sender, cb) {
var msg = can.request(); can.core.List(req.option, function(key) { msg.Option(key, req[key][0]) })
can.core.CallFunc([can, req.detail[3]||"spide"], {can: can, msg: msg, arg: req.detail.slice(4), cb: function() {
@ -43,20 +69,10 @@ Volcanos("chrome", {
})
can.run = function(event, cmds, cb) { var msg = can.request(event); msg.detail = ["page"].concat(cmds)
chrome.runtime.sendMessage(msg, function(res) {
can.base.isFunc(cb) && cb(msg.Copy(res))
})
chrome.runtime.sendMessage(msg, function(res) { can.base.isFunc(cb) && cb(msg.Copy(res)) })
}
can.require(["https://shylinux.com/page/index.css"])
can.onappend.plugin(can, {index: "web.spide"}, function(sub, meta) {
can.page.Modify(can, sub._target, {style: {
position: "absolute", "z-index": "100", "top": "400px",
background: "radial-gradient(black, transparent)",
}})
sub.run = function(event, cmds, cb) {
can.run(event, ["action", "command", "run", meta.index].concat(cmds), cb)
}
}, document.body)
can.run({}, ["action", "command", "get"], function(msg) {
msg.result && msg.result[0] && can.field(can, msg, msg.result)
})
})