1
0
mirror of https://shylinux.com/x/volcanos synced 2025-04-25 08:48:06 +08:00

opt webview

This commit is contained in:
harveyshao 2022-04-09 17:56:08 +08:00
parent dc7c8bf577
commit 59877656c3
7 changed files with 33 additions and 4 deletions

View File

@ -27,7 +27,7 @@ Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta,
}, target)
}, function() { can.misc.Log(can.user.title(), ice.RUN, can)
can.require([can.volcano], null, function(can, name, sub) { can[name] = sub })
can.ondaemon._init(can), can.onmotion._init(can, target), can.onkeymap._init(can)
can.onmotion._init(can, target), can.onkeymap._init(can)
can.onlayout.topic(can), can.onengine.signal(can, chat.ONMAIN, can.request())
can.onmotion.float.auto(can, target), can.base.isFunc(cb) && cb()
})
@ -861,7 +861,17 @@ Volcanos("onmotion", {help: "动态特效", list: [], _init: function(can, targe
},
})
Volcanos("onkeymap", {help: "键盘交互", list: [], _focus: [], _init: function(can, target) {
can.onkeymap._build(can), document.body.onkeydown = function(event) { if (event.metaKey) { return }
can.onkeymap._build(can), document.body.onkeydown = function(event) {
if (event.metaKey) { if (window.webview) {
switch (event.key) {
case "q": window.terminate(); break
case "w": window.close(); break
case "r": location.reload(); break
case "f": can.onengine.signal(can, "onopensearch", can.request({}, {type: "*"})); break
case "[": history.back(); break
case "]": history.forward(); break
}
} return }
if (can.page.tagis([html.SELECT, html.INPUT, html.TEXTAREA], event.target)) { return }
var msg = can.request(event, {"model": "normal"}); if (msg.Option(ice.MSG_HANDLE) == ice.TRUE) { return }
can.onengine.signal(can, chat.ONKEYDOWN, msg); if (msg.Option(ice.MSG_HANDLE) == ice.TRUE) { return }

View File

@ -49,7 +49,10 @@ Volcanos("user", {help: "用户操作", agent: {
return can.base.Time(time, (fmt||"%y-%m-%d %H:%M:%S").replace("%w", list[now.getDay()]))
},
title: function(text) { return text && (document.title = Volcanos.meta.args.name||text), document.title },
title: function(text) {
if (window.webview) { return title(text) }
return text && (document.title = Volcanos.meta.args.name||text), document.title
},
topic: function(can, name) {
can.user.mod.isCmd && (name += " simple")
can.Conf("display") && (name += " "+can.Conf("display"))

View File

@ -13,7 +13,7 @@ fieldset.Action.free>div.output fieldset.plugin.select { display:block; }
fieldset.Action.flow>div.output fieldset.plugin { float:left; }
fieldset.Action div.output fieldset.plugin.Full { background-color:#073947f2; padding:0; margin:0; position:fixed; left:0; top:0; overflow:auto; z-index:10; }
fieldset.Action div.output fieldset.plugin.Full>legend { float:left; }
fieldset.Action div.output fieldset.plugin.Full>legend { float:left; display:contents; }
fieldset.Action div.output fieldset.story.Full { background-color:#073947f2; padding:0; margin:0; position:fixed; left:0; top:0; overflow:auto; z-index:10; }
fieldset.Action div.output fieldset.story.Full>legend { float:left; }
fieldset.Action>div.project.toggle {

View File

@ -5,6 +5,15 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
can.onimport._toast(can, msg, target)
can.onimport._cli(can, msg, target)
can.base.isFunc(cb) && cb(msg)
history.length > 2 && can.core.Timer(100, function() {
window.webview && can.setHeaderMenu(["后退"], function(event, button, list) {
switch (button) {
case "后退": history.back(); break
}
can.core.CallFunc([can.onaction, list[0]], [can, button])
})
})
},
_title: function(can, msg, target) {
!can.user.isMobile && can.core.List(msg.result, function(item) {

View File

@ -1,5 +1,6 @@
Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, cb, target) {
can.Conf(aaa.USERNICK, msg.Option(aaa.USERNICK)||msg.Option(ice.MSG_USERNICK)||msg.Option(ice.MSG_USERNAME)||can.Conf(aaa.USERNICK))
can.ondaemon._init(can)
can.onengine.plugin(can, "topic", shy("主题", {
"demo": function(can, msg, cmds) { can.onlayout.topic(can, cmds[0]) },

View File

@ -14,6 +14,9 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
can.page.Modify(can, can.ui.profile, kit.Dict(html.MAX_HEIGHT, height-(table&&table.offsetHeight||0)))
})
msg.Length() == 1 && can.page.Select(can, table, html.TD)[0].click()
can.page.Select(can, can._output, "A", function(item) {
item.onclick = function(event) { can.user.open(item.href), can.onkeymap.prevent(event) }
})
},
_word: function(can, msg, cmds, fields) { can.type = cmds[0]
var cb = can.onaction[cmds[1]]; if (cb) { cb({}, can); return }

View File

@ -400,6 +400,9 @@ function can(tool) {
{name: "Search", help: "搜索框", pos: chat.AUTO},
]})
}
function _can(tool) {
Volcanos({name: "chat", panels: [{name: "Action", help: "工作台", pos: chat.MAIN, tool: tool}]})
}
try { if (typeof(global) == lang.OBJECT) {
global.kit = kit, global.ice = ice