Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
Vanessa 2023-11-10 10:51:51 +08:00
commit 62e27ba24c
6 changed files with 45 additions and 3 deletions

View file

@ -39,6 +39,7 @@ type ViewTableColumn struct {
Wrap bool `json:"wrap"` // 是否换行
Hidden bool `json:"hidden"` // 是否隐藏
Pin bool `json:"pin"` // 是否固定
Width string `json:"width"` // 列宽度
Calc *ColumnCalc `json:"calc,omitempty"` // 计算
}
@ -562,6 +563,7 @@ type TableColumn struct {
Icon string `json:"icon"` // 列图标
Wrap bool `json:"wrap"` // 是否换行
Hidden bool `json:"hidden"` // 是否隐藏
Pin bool `json:"pin"` // 是否固定
Width string `json:"width"` // 列宽度
Calc *ColumnCalc `json:"calc"` // 计算

View file

@ -366,6 +366,7 @@ func renderAttributeViewTable(attrView *av.AttributeView, view *av.View) (ret *a
Wrap: col.Wrap,
Hidden: col.Hidden,
Width: col.Width,
Pin: col.Pin,
Calc: col.Calc,
})
}
@ -947,6 +948,39 @@ func setAttributeViewColHidden(operation *Operation) (err error) {
return
}
func (tx *Transaction) doSetAttrViewColumnPin(operation *Operation) (ret *TxErr) {
err := setAttributeViewColPin(operation)
if nil != err {
return &TxErr{code: TxErrWriteAttributeView, id: operation.AvID, msg: err.Error()}
}
return
}
func setAttributeViewColPin(operation *Operation) (err error) {
attrView, err := av.ParseAttributeView(operation.AvID)
if nil != err {
return
}
view, err := attrView.GetView()
if nil != err {
return
}
switch view.LayoutType {
case av.LayoutTypeTable:
for _, column := range view.Table.Columns {
if column.ID == operation.ID {
column.Pin = operation.Data.(bool)
break
}
}
}
err = av.SaveAttributeView(attrView)
return
}
func (tx *Transaction) doSetAttrViewColumnIcon(operation *Operation) (ret *TxErr) {
err := setAttributeViewColIcon(operation)
if nil != err {

View file

@ -722,8 +722,12 @@ func GetDoc(startID, endID, id string, index int, query string, queryTypes map[s
}
if "1" == n.IALAttr("heading-fold") {
unlinks = append(unlinks, n)
return ast.WalkContinue
// 折叠标题下被引用的块无法悬浮查看
// The referenced block under the folded heading cannot be hovered to view https://github.com/siyuan-note/siyuan/issues/9582
if 0 != mode && id != n.ID {
unlinks = append(unlinks, n)
return ast.WalkContinue
}
}
if "" != n.ID {

View file

@ -54,7 +54,6 @@ func (tx *Transaction) doFoldHeading(operation *Operation) (ret *TxErr) {
return ast.WalkContinue
}
n.SetIALAttr("fold", "1")
n.SetIALAttr("heading-fold", "1")
return ast.WalkContinue
})

View file

@ -208,6 +208,8 @@ func performTx(tx *Transaction) (ret *TxErr) {
ret = tx.doSetAttrViewColumnWrap(op)
case "setAttrViewColHidden":
ret = tx.doSetAttrViewColumnHidden(op)
case "setAttrViewColPin":
ret = tx.doSetAttrViewColumnPin(op)
case "setAttrViewColIcon":
ret = tx.doSetAttrViewColumnIcon(op)
case "insertAttrViewBlock":

View file

@ -582,6 +582,7 @@ func renderAttributeViewTable(attrView *av.AttributeView, view *av.View) (ret *a
Wrap: col.Wrap,
Hidden: col.Hidden,
Width: col.Width,
Pin: col.Pin,
Calc: col.Calc,
})
}