diff --git a/frame.js b/frame.js index 7e213783..46c5439f 100644 --- a/frame.js +++ b/frame.js @@ -141,10 +141,7 @@ Volcanos(chat.ONAPPEND, {_init: function(can, meta, list, cb, target, field) { }), meta.inputs && sub.onappend._option(sub, meta, sub._option, meta.msg) sub._legend && (sub._legend.onclick = function(event) { can.user.carte(event, sub, sub.onaction, sub.onaction.list.concat([[ctx.ACTION].concat(can.core.Item(meta.feature._trans))]), function(event, button) { can.misc.Event(event, sub, function(msg) { - can.misc.Inputs(sub, msg, [ctx.ACTION, button], null, meta) || - msg.RunAction(event, sub.sub, [ctx.ACTION, button]) || - msg.RunAction(event, sub, [ctx.ACTION, button]) || - sub.runAction(event, button, [], function(msg) { can.onappend._output(sub, msg) }) + can.misc.Inputs(sub, msg, [ctx.ACTION, button], null, meta) || msg.RunAction(event, sub.sub, [ctx.ACTION, button]) || msg.RunAction(event, sub, [ctx.ACTION, button]) || sub.runAction(event, button, [], function(msg) { can.onappend._output(sub, msg) }) }) }) }), can.base.isFunc(cb) && cb(sub) if (sub.isOutputStyle()) { return } if (can.user.isMobile && !can.user.isLandscape()) { return } @@ -157,7 +154,6 @@ Volcanos(chat.ONAPPEND, {_init: function(can, meta, list, cb, target, field) { var icon = { "": {name: mdb.DELETE, cb: function(event) { can.onaction.close(event, can) }}, run: {name: web.PLAY, cb: function(event) { can.Update(event) }}, - // refresh: {name: web.REFRESH, cb: function(event) { can.Update(event) }}, list: {name: web.REFRESH, cb: function(event) { can.Update(event) }}, back: {name: "goback", cb: function(event) { can.onimport.back(event, can) }}, prev: {name: mdb.PREV, cb: function(event) { var sub = can.sub; sub.onaction && sub.onaction.prev? sub.onaction.prev(event, sub): can.onaction.prev(event, can) }}, @@ -198,10 +194,7 @@ Volcanos(chat.ONAPPEND, {_init: function(can, meta, list, cb, target, field) { skip || can.Conf(ice.AUTO) == cli.DELAY || can.Update({}, [ctx.ACTION, p]) } else { skip || can.Conf(ice.AUTO) == cli.DELAY || auto && auto.click() - } - if (meta.inputs.length == 0) { return } - var _can = can._fields? can.sup: can - if (!can.page.tagis(_can._target, html.FIELDSET_PLUGIN)) { return } + } if (meta.inputs.length == 0) { return } var _can = can._fields? can.sup: can; if (!can.page.tagis(_can._target, html.FIELDSET_PLUGIN)) { return } can.user.isMobile || meta._help && add({type: html.BUTTON, name: ice.HELP, onclick: function(event) { can.onappend._float(can, {index: web.WIKI_WORD}, [meta._help]) }}, function() {}) !can.Conf("_fileline") || can.base.isIn(can.ConfIndex(), web.CODE_VIMER) || can.user.isMobile || can.misc.Search(can, ice.MSG_DEBUG) == ice.TRUE && add({type: html.BUTTON, name: "vimer", _trans: "源码", onclick: function(event) { var value = "查看源码"; _can.onaction[value](event, _can, value, _can.sub) diff --git a/plugin/local/code/xterm.js b/plugin/local/code/xterm.js index 976630d8..42e26ecb 100644 --- a/plugin/local/code/xterm.js +++ b/plugin/local/code/xterm.js @@ -3,8 +3,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, cb) { can.page.requireModules var item = can.base.Obj(msg.TableDetail(), {hash: "only"}); item.hash = item.hash||can.Option(mdb.HASH), can.onmotion.clear(can) if (item.type == html.LAYOUT) { can.onimport._layout(can, item) } else { can.onimport._connect(can, item, can._output) } can.onimport.layout(can) can.sup.onexport.link = function() { return can.misc.MergePodCmd(can, {pod: can.Conf(ice.POD), cmd: web.CODE_XTERM, hash: item.hash}) } - can.sup.onexport.title(can, item.name||item.type) - can.base.isFunc(cb) && cb(msg), can.onappend._status(can), can.onkeymap._build(can) + can.sup.onexport.title(can, item.name||item.type), can.base.isFunc(cb) && cb(msg), can.onappend._status(can), can.onkeymap._build(can) }) }, _layout: function(can, item) { function connect(item, output, tabs) { can.run(can.request({}, item), [item.hash], function(msg) { @@ -53,19 +52,12 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, cb) { can.page.requireModules can.onmotion.clear(can, output), term.open(output), term.focus() can.onengine.listen(can, chat.ONTHEMECHANGE, function() { term.selectAll(), can.onimport._connect(can, item, output, tabs, can.base.trimSuffix(term.getSelection(), lex.NL)) - }), can.onimport._recover(can, item, term, text) + }) can.page.style(can, output, html.BACKGROUND_COLOR, term._publicOptions.theme.background||cli.BLACK) output.onclick = function() { output._tabs._current = output, term.focus(), can.onexport.term(can, term) can.page.Select(can, can._fields, html.DIV_OUTPUT, function(target) { can.page.ClassList.set(can, target, html.SELECT, target == output) }) }; return can.db = can.db||{}, can.db[item.hash] = term }, - _recover: function(can, item, term, text) { - // var recover = can.onexport.session(can, RECOVER_STORE+item.hash) - var recover = "" - if (recover) { can.onexport.session(can, RECOVER_STORE+item.hash, ""), can.onmotion.delay(can, function() { term.write(recover.replaceAll(lex.NL, "\r\n")) }) } - can.onengine.listen(can, chat.ONUNLOAD, function(msg) { term.selectAll(), can.onexport.session(can, RECOVER_STORE+item.hash, can.base.trimSuffix(term.getSelection(), lex.NL)+lex.NL) }) - text && can.onmotion.delay(can, function() { term.write(text.replaceAll(lex.NL, "\r\n")) }) - }, _resize: function(can, term, size) { can.runAction(can.request({}, size, term._item), web.RESIZE, [], function(msg) { if (msg.IsErr()) { can.misc.Warn(msg.Result()) } can.onexport.term(can, term) }) }, @@ -73,20 +65,6 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, cb) { can.page.requireModules can.runAction(can.request({}, {rows: term.rows, cols: term.cols}, term._item), html.INPUT, [btoa(data)], function(msg) { if (msg.IsErr()) { can.misc.Warn(msg.Result()) } }), can._output = term._output - return - - if (data == "\u0013") { can._delay = true - can.onmotion.delay(can, function() { can._delay && can.runAction(can.request({}, term._item), html.INPUT, [btoa(data)], function(msg) { - if (msg.IsErr()) { can.misc.Warn(msg.Result()) } - }) }) - } else { - if (can._delay) { can._delay = false; var msg = can.request({}, {_handle: ice.TRUE}, term._item) - can._keylist = can.onkeymap._parse({key: data, _msg: msg}, can, mdb.NORMAL, can._keylist||[], term); return - } - can.runAction(can.request({}, {rows: term.rows, cols: term.cols}, term._item), html.INPUT, [btoa(data)], function(msg) { - if (msg.IsErr()) { can.misc.Warn(msg.Result()) } - }), can._output = term._output - } }, grow: function(can, msg, hash, text) { var arg = msg.detail.slice(1); arg = [hash||arg[0], text||arg[1]]