mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-16 14:40:12 +01:00
🎨 Improve the backlink panel breadcrumb and block sorting https://github.com/siyuan-note/siyuan/issues/13008
This commit is contained in:
parent
6ac292ff01
commit
f0a292ac51
3 changed files with 8 additions and 11 deletions
|
|
@ -167,8 +167,8 @@ func GetBacklinkDoc(defID, refTreeID, keyword string, containChildren bool) (ret
|
||||||
|
|
||||||
func filterBlockPaths(blockLinks []*Backlink) {
|
func filterBlockPaths(blockLinks []*Backlink) {
|
||||||
for _, b := range blockLinks {
|
for _, b := range blockLinks {
|
||||||
if 1 == len(b.BlockPaths) && "NodeDocument" == b.BlockPaths[0].Type {
|
if 2 == len(b.BlockPaths) {
|
||||||
// 如果只有根文档这一层则不显示
|
// 根下只有一层则不显示
|
||||||
b.BlockPaths = []*BlockPath{}
|
b.BlockPaths = []*BlockPath{}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -246,10 +246,7 @@ func buildBacklink(refID string, refTree *parse.Tree, keywords []string, luteEng
|
||||||
dom := renderBlockDOMByNodes(renderNodes, luteEngine)
|
dom := renderBlockDOMByNodes(renderNodes, luteEngine)
|
||||||
var blockPaths []*BlockPath
|
var blockPaths []*BlockPath
|
||||||
if (nil != n.Parent && ast.NodeDocument != n.Parent.Type) || (ast.NodeHeading != n.Type && 0 < treenode.HeadingLevel(n)) {
|
if (nil != n.Parent && ast.NodeDocument != n.Parent.Type) || (ast.NodeHeading != n.Type && 0 < treenode.HeadingLevel(n)) {
|
||||||
// 仅在多于一层时才显示面包屑,这样界面展示更加简洁
|
blockPaths = buildBlockBreadcrumb(n, nil)
|
||||||
// The backlink panel no longer displays breadcrumbs of the first-level blocks https://github.com/siyuan-note/siyuan/issues/12862
|
|
||||||
// Improve the backlink panel breadcrumb and block sorting https://github.com/siyuan-note/siyuan/issues/13008
|
|
||||||
blockPaths = buildBlockBreadcrumb(n, nil, false)
|
|
||||||
}
|
}
|
||||||
if 1 > len(blockPaths) {
|
if 1 > len(blockPaths) {
|
||||||
blockPaths = []*BlockPath{}
|
blockPaths = []*BlockPath{}
|
||||||
|
|
|
||||||
|
|
@ -887,7 +887,7 @@ func getEmbeddedBlock(trees map[string]*parse.Tree, sqlBlock *sql.Block, heading
|
||||||
}
|
}
|
||||||
|
|
||||||
if breadcrumb {
|
if breadcrumb {
|
||||||
blockPaths = buildBlockBreadcrumb(def, nil, true)
|
blockPaths = buildBlockBreadcrumb(def, nil)
|
||||||
}
|
}
|
||||||
if 1 > len(blockPaths) {
|
if 1 > len(blockPaths) {
|
||||||
blockPaths = []*BlockPath{}
|
blockPaths = []*BlockPath{}
|
||||||
|
|
|
||||||
|
|
@ -416,11 +416,11 @@ func BuildBlockBreadcrumb(id string, excludeTypes []string) (ret []*BlockPath, e
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = buildBlockBreadcrumb(node, excludeTypes, true)
|
ret = buildBlockBreadcrumb(node, excludeTypes)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func buildBlockBreadcrumb(node *ast.Node, excludeTypes []string, displayCurrentNode bool) (ret []*BlockPath) {
|
func buildBlockBreadcrumb(node *ast.Node, excludeTypes []string) (ret []*BlockPath) {
|
||||||
ret = []*BlockPath{}
|
ret = []*BlockPath{}
|
||||||
if nil == node {
|
if nil == node {
|
||||||
return
|
return
|
||||||
|
|
@ -481,8 +481,8 @@ func buildBlockBreadcrumb(node *ast.Node, excludeTypes []string, displayCurrentN
|
||||||
name = strings.ReplaceAll(name, editor.Caret, "")
|
name = strings.ReplaceAll(name, editor.Caret, "")
|
||||||
name = util.EscapeHTML(name)
|
name = util.EscapeHTML(name)
|
||||||
|
|
||||||
if parent == node && !displayCurrentNode {
|
if parent == node {
|
||||||
add = false
|
name = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
if add {
|
if add {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue