1
0
mirror of https://shylinux.com/x/volcanos synced 2025-04-25 08:48:06 +08:00
This commit is contained in:
IT 老营长 @云轩领航-创始人 2024-05-18 22:20:18 +08:00
parent 78ae374e42
commit a953d011b4
5 changed files with 14 additions and 17 deletions

View File

@ -986,18 +986,12 @@ Volcanos(chat.ONMOTION, {_init: function(can, target) {
},
},
scrollHold: function(can, cb, target) { target = target || can._output; var left = target.scrollLeft; cb(), target.scrollLeft = left },
scrollIntoView: function(can, target, margin, parent) {
parent = parent||target.parentNode
if (parent._scroll) { return } parent._scroll = true, margin = margin||0
scrollIntoView: function(can, target, margin, parent) { if (!target) { return }
margin = margin||0, parent = parent||target.parentNode
if (parent._scroll) { return } parent._scroll = true
var offset = (target.offsetTop-margin) - parent.scrollTop, step = offset < 0? -20: 20
if (Math.abs(offset) > 3000) {
return parent.scrollTop = (target.offsetTop-margin), delete(can._scroll)
}
can.core.Timer({interval: 10, length: offset/step}, function() {
parent.scrollTop += step
}, function() {
parent.scrollTop = (target.offsetTop-margin), delete(can._scroll)
})
if (Math.abs(offset) > 3000) { return parent.scrollTop = (target.offsetTop-margin), delete(parent._scroll) }
can.core.Timer({interval: 10, length: offset/step}, function() { parent.scrollTop += step }, function() { parent.scrollTop = (target.offsetTop-margin), delete(parent._scroll) })
},
clearFloat: function(can) {
var list = ["fieldset.input.float", "div.input.float", "div.carte.float"]; for (var i = 0; i < list.length; i++) {

View File

@ -39,10 +39,10 @@ fieldset.inner.cmd>div.output>div.layout>div.tabs:not(.hide) { background-color:
fieldset.inner.cmd>div.output>div.layout>div.tabs>div { height:var(--code-tabs-height); }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.icon>div.icon { font-size:26px; line-height:32px; padding:2px 5px; position:sticky; top:0; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.tabs { justify-content:flex-start; flex-grow:1; flex-wrap:wrap; overflow:auto; display:flex; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.tabs:hover { background-color:unset; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.tabs:hover { background-color:unset; color:unset; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.tabs>div.tabs { padding:var(--input-padding) var(--button-padding); height:var(--code-tabs-height); display:flex; align-items:center; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head { display:flex; flex-direction:row-reverse; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head>div { padding:0 var(--input-padding); display:flex; align-items:center; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head { display:flex; flex-direction:row-reverse; flex-shrink:0; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head>div { padding:0 var(--input-padding); display:flex; align-items:center; flex-shrink:0; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head>div.online { margin-left:0 !important; margin-right:0 !important; flex-direction: row-reverse; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head>div.online img { height:24px; }
fieldset.inner.cmd>div.output>div.layout>div.tabs>div.head>div.avatar { padding:0; }

View File

@ -148,6 +148,7 @@ Volcanos(chat.ONIMPORT, {
can.onmotion.cacheClear(can, key, can.ui._content, can.ui._profile, can.ui._display)
}, can.ui._tabs)
}
can._msg._tab && can.onmotion.scrollIntoView(can, can._msg._tab)
if (can.db.tabview[key]) { return can.isSimpleMode()? show(): can._msg._tab? (can._msg._tab.click(), show()): load(can.db.tabview[key]) }
isIndex()||isSpace()? load(can.request({}, {index: file, line: line})): can.run({}, [path, file], load, true)
},

View File

@ -173,7 +173,6 @@ Volcanos(chat.ONEXPORT, {list: [mdb.TIME, mdb.HASH, mdb.TYPE, mdb.NAME, "rows",
return {type: target.className, name: name, list: can.page.SelectChild(can, target, can.page.Keys(html.DIV_OUTPUT, html.DIV_LAYOUT), function(target) { return show(target) })}
} else { var item = target._term._item; return {type: item.type, name: name, text: item.text, hash: item.hash} }
} return show(target._output) }) },
title: function(can, term, title) {
term && term._output && can.page.Modify(can, can.page.SelectOne(can, term._output._tabs, html.SPAN_NAME), title), can.Status(mdb.NAME, title), can.sup.onexport.title(can.sup, title) },
title: function(can, term, title) { term && term._output && can.page.Modify(can, can.page.SelectOne(can, term._output._tabs, html.SPAN_NAME), title), can.Status(mdb.NAME, title), can.sup.onexport.title(can.sup, title) },
})
})()

View File

@ -181,7 +181,10 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target, cb) {
}
return {view: [[html.TABS, tabs.type, tabs.role, tabs.status]], title: tabs.title||tabs.text, list: [
can.onimport._icons(can, tabs), can.onimport._nick(can, tabs), {icon: mdb.DELETE, onclick: function(event) { tabs._target._close(), can.onkeymap.prevent(event) }},
], onclick: function(event) { can.onmotion.scrollIntoView(can, tabs._target)
], onclick: function(event) {
can.onmotion.delay(can, function() {
can.onmotion.scrollIntoView(can, tabs._target)
})
if (can.page.ClassList.has(can, tabs._target, html.SELECT)) { return }
can.onmotion.select(can, action, html.DIV_TABS, tabs._target), can.base.isFunc(cb) && cb(event, tabs)
}, oncontextmenu: function(event) { var target = tabs._target, _action = can.page.parseAction(can, tabs)