diff --git a/frame.js b/frame.js index 8a0866d6..915b1a2a 100644 --- a/frame.js +++ b/frame.js @@ -185,7 +185,10 @@ Volcanos(chat.ONAPPEND, { }, Clone: function() { meta.args = can.page.SelectArgs(can), can.onappend._init(can, meta, list, function(sub) { can.base.isFunc(cb) && cb(sub, true), can.onmotion.delay(can, sub.Focus) }, target) }, }, list, function(sub) { meta.feature = can.base.Obj(meta.feature, {}), sub.Conf(meta), field._can = sub - can.onappend.style(sub, meta.index? meta.index.split(nfs.PT): meta.name), can.onappend.style(sub, sub.Conf(ctx.STYLE)), can.onappend.style(sub, sub.Mode()) + can.onappend.style(sub, meta.index? meta.index.split(nfs.PT): meta.name) + can.onappend.style(sub, sub.Conf(ctx.STYLE)) + can.onappend.style(sub, sub.Conf("_style")) + can.onappend.style(sub, sub.Mode()) sub.isCmdMode() && can.onappend.style(sub, can.misc.Search(can, ctx.STYLE)), sub.isCmdMode() && sub.Conf(can.misc.Search(can)) sub._trans = can.base.Copy(sub._trans||{}, can.core.Value(sub, [chat.ONACTION, chat._TRANS])) can.core.Item(meta.feature, function(key, cb) { cb.help && sub.user.trans(sub, kit.Dict(key, cb.help)) }) @@ -301,6 +304,7 @@ Volcanos(chat.ONAPPEND, { open: !can.isCmdMode() && "打开链接", // chat: "发送聊天", }: {_space: "", + qrcode: !can.isCmdMode() && "生成链接", full: !can.isCmdMode() && "切换全屏", open: !can.isCmdMode() && "打开链接", // chat: can.user.isTechOrRoot(can) && can.ConfIndex() != chat.MESSAGE && "发送聊天", diff --git a/index.css b/index.css index c998db69..62a6da4f 100644 --- a/index.css +++ b/index.css @@ -910,10 +910,15 @@ body.print fieldset.draw div.output { background-color:lightgray; } body.print fieldset.draw div.output div.content svg { background-color:lightgray; } /* misc */ fieldset.iframe>form.option>div.item.hash input { width:var(--form-width); } -fieldset.iframe.float>form.option>div.item:not(.delete) { display:none; } +fieldset.iframe.float>form.option>div.item:not(.delete):not(.refresh) { display:none; } fieldset.iframe.float>form.option>div.item.hash input { width:var(--form-width); } fieldset.iframe>div.status { display:none; } fieldset.iframe.float { border:0; } +fieldset.iframe.float { background-color:var(--panel-bg-color); color:var(--panel-fg-color); } +fieldset.iframe.float>legend { background-color:var(--panel-bg-color); color:var(--panel-fg-color); } +fieldset.iframe.float.portal { background-color:var(--notice-bg-color); color:var(--notice-fg-color); } +fieldset.iframe.float.portal>legend { background-color:var(--notice-bg-color); color:var(--notice-fg-color); } +fieldset.iframe.float.portal>div.action>div.item.full { display:none; } fieldset.desktop { border:0; } fieldset.desktop>legend { background-color:transparent; color:silver; } fieldset.desktop>form.option>div.item:not(.delete) { display:none; } @@ -986,9 +991,9 @@ fieldset.draw>div.output>div.layout>div.layout>div.profile table { width:100%; } fieldset.draw>div.output>div.layout>div.layout>div.profile { width:var(--project-width); flex:0 0 var(--project-width); } fieldset.draw>div.output>svg { margin-bottom:-5px; } fieldset.draw>div.output>svg { min-height:100%; } -body.dark fieldset.float { background-color:#000c; } +body.dark fieldset.float:not(.iframe) { background-color:#000c; } body.dark fieldset.float>div.output { background-color:transparent; } -body.light fieldset.float { background-color:#fffc; } +body.light fieldset.float:not(.iframe) { background-color:#fffc; } body.light fieldset.float>div.output { background-color:transparent; } fieldset.draw.spides>div.output>svg text { cursor:pointer; } fieldset.draw.spides>div.output>svg path { stroke-width:1; } diff --git a/panel/footer.js b/panel/footer.js index fbf44b1c..dc5a1a7b 100644 --- a/panel/footer.js +++ b/panel/footer.js @@ -14,6 +14,7 @@ Volcanos(chat.ONIMPORT, { // {index: chat.FLOWS, value: "流程"}, // {index: chat.MESSAGE}, {index: web.SPIDE, value: "服务"}, + {index: web.SPACE, value: "空间"}, {index: cli.RUNTIME}, {index: code.XTERM, args: [cli.SH]}, ], function(value) { value.type = html.BUTTON, value.name = value.index diff --git a/plugin/local/chat/iframe.js b/plugin/local/chat/iframe.js index 50416698..d5b6c705 100644 --- a/plugin/local/chat/iframe.js +++ b/plugin/local/chat/iframe.js @@ -1,9 +1,8 @@ Volcanos(chat.ONIMPORT, { _init: function(can, msg) { can.db.current = msg.TableDetail() - can.Conf("_width") && can.sup.onimport.size(can.sup, can.Conf("_height"), can.Conf("_width"), false) + can.Conf("_width") && can.sup.onimport.size(can.sup, can.Conf("_height"), can.Conf("_width"), false), can.page.style(can, can._output, "overflow-y", html.HIDDEN) can.ui.target = can.page.Appends(can, can._output, [{type: html.IFRAME, src: can.db.current.link, height: can.ConfHeight(), width: can.ConfWidth()}])._target - can.page.style(can, can._output, "overflow-y", html.HIDDEN) - can.sup.onexport.link = function() { return can.db.current.link } + can.sup.onexport.link = function() { return can.base.beginWith(can.db.current.link, "/")? location.origin+can.db.current.link: can.db.current.link } }, layout: function(can) { var item = can.db.current; can.sup.onexport.title(can, item.name||item.link.split(mdb.QS)[0]) diff --git a/plugin/local/code/inner.js b/plugin/local/code/inner.js index f0fc12ef..eb99009f 100644 --- a/plugin/local/code/inner.js +++ b/plugin/local/code/inner.js @@ -257,7 +257,7 @@ Volcanos(chat.ONIMPORT, { }) }) }, layout: function(can) { - if (can.Conf(ctx.STYLE) == html.OUTPUT) { return can.page.style(can, can.ui.content, html.WIDTH, (can.Conf("_width")||can.ConfWidth())-3) } + if (can.Conf(ctx.STYLE) == html.OUTPUT) { return can.page.style(can, can.ui.content, html.WIDTH, (can.Conf("_width")||can.ConfWidth())-5) } if (can.isSimpleMode() && !can.page.tagis(can._fields, html.FIELDSET_FLOAT)) { can.page.style(can, can._output, html.MAX_HEIGHT, "") } if (can.isSimpleMode()) { can.ui.layout(can.ConfHeight(), can.ConfWidth()); return can.page.style(can, can.ui.content, html.WIDTH, can.ConfWidth()) } if (can.isCmdMode()) { can.page.style(can, can._output, html.HEIGHT, can.ConfHeight(can.page.height())) } diff --git a/plugin/state.js b/plugin/state.js index 16781af2..cab5001b 100644 --- a/plugin/state.js +++ b/plugin/state.js @@ -126,7 +126,7 @@ Volcanos(chat.ONIMPORT, { (can.page.style(can, can._output, html.HEIGHT, height, html.WIDTH, width, html.MAX_HEIGHT, "", html.MAX_WIDTH, ""), can.page.style(can, can._target, html.WIDTH, width)) if (can.misc.Search(can, log.DEBUG) == ice.TRUE) { can.Status(html.HEIGHT, can.base.Max(height, can._output.offsetHeight), html.WIDTH, width) } can.page.style(can, can._status, html.MAX_WIDTH, width) - can.core.List(can._plugins, function(sub) { sub.onimport.size(sub, height, width, false) }) + can.core.List(can._plugins, function(sub) { can.page.tagis(sub._target, "fieldset.float") || sub.onimport.size(sub, height, width, false) }) var sub = can.sub; if (!sub) { return auto } sub.Mode(mode), sub.ConfHeight(height), sub.ConfWidth(width), can.onimport._size(can) mode? sub.onlayout[mode](sub, height, width): sub.onlayout._init(sub, height, width) return auto