Vanessa 2023-11-30 22:05:23 +08:00
parent 004bc16b59
commit e0e44f6677
4 changed files with 26 additions and 1 deletions

View file

@ -146,6 +146,24 @@ export const avClick = (protyle: IProtyle, event: MouseEvent & { target: HTMLEle
return true; return true;
} }
const addTabElement = hasClosestByAttribute(event.target, "data-type", "av-add");
if (addTabElement) {
const id = Lute.NewNodeID();
const avID = blockElement.getAttribute("data-av-id");
transaction(protyle, [{
action: "addAttrViewView",
avID,
id
}], [{
action: "removeAttrViewView",
avID,
id
}]);
event.preventDefault();
event.stopPropagation();
return true;
}
const linkElement = hasClosestByClassName(event.target, "av__celltext--url"); const linkElement = hasClosestByClassName(event.target, "av__celltext--url");
if (linkElement) { if (linkElement) {
let linkAddress = linkElement.textContent.trim(); let linkAddress = linkElement.textContent.trim();

View file

@ -210,6 +210,10 @@ ${cell.color ? `color:${cell.color};` : ""}">${text}</div>`;
<div class="av__header"> <div class="av__header">
<div class="layout-tab-bar fn__flex"> <div class="layout-tab-bar fn__flex">
${tabHTML} ${tabHTML}
<div class="fn__space"></div>
<span data-type="av-add" class="block__icon block__icon--show">
<svg><use xlink:href="#iconAdd"></use></svg>
</span>
<div class="fn__flex-1"></div> <div class="fn__flex-1"></div>
${response.data.isMirror ? ` <span class="block__icon block__icon--show b3-tooltips b3-tooltips__w" aria-label="${window.siyuan.languages.mirrorTip}"> ${response.data.isMirror ? ` <span class="block__icon block__icon--show b3-tooltips b3-tooltips__w" aria-label="${window.siyuan.languages.mirrorTip}">
<svg><use xlink:href="#iconSplitLR"></use></svg></span><div class="fn__space"></div>` : ""} <svg><use xlink:href="#iconSplitLR"></use></svg></span><div class="fn__space"></div>` : ""}

View file

@ -711,7 +711,8 @@ export const onTransaction = (protyle: IProtyle, operation: IOperation, isUndo:
"updateAttrViewColOption", "updateAttrViewCell", "sortAttrViewRow", "sortAttrViewCol", "setAttrViewColHidden", "updateAttrViewColOption", "updateAttrViewCell", "sortAttrViewRow", "sortAttrViewCol", "setAttrViewColHidden",
"setAttrViewColWrap", "setAttrViewColWidth", "removeAttrViewColOption", "setAttrViewName", "setAttrViewFilters", "setAttrViewColWrap", "setAttrViewColWidth", "removeAttrViewColOption", "setAttrViewName", "setAttrViewFilters",
"setAttrViewSorts", "setAttrViewColCalc", "removeAttrViewCol", "updateAttrViewColNumberFormat", "removeAttrViewBlock", "setAttrViewSorts", "setAttrViewColCalc", "removeAttrViewCol", "updateAttrViewColNumberFormat", "removeAttrViewBlock",
"replaceAttrViewBlock", "updateAttrViewColTemplate", "setAttrViewColIcon", "setAttrViewColPin"].includes(operation.action)) { "replaceAttrViewBlock", "updateAttrViewColTemplate", "setAttrViewColIcon", "setAttrViewColPin", "addAttrViewView",
"removeAttrViewView"].includes(operation.action)) {
refreshAV(protyle, operation, isUndo); refreshAV(protyle, operation, isUndo);
} else if (operation.action === "doUpdateUpdated") { } else if (operation.action === "doUpdateUpdated") {
updateElements.forEach(item => { updateElements.forEach(item => {

View file

@ -42,6 +42,8 @@ type TOperation =
| "setAttrViewColCalc" | "setAttrViewColCalc"
| "updateAttrViewColNumberFormat" | "updateAttrViewColNumberFormat"
| "replaceAttrViewBlock" | "replaceAttrViewBlock"
| "addAttrViewView"
| "removeAttrViewView"
type TBazaarType = "templates" | "icons" | "widgets" | "themes" | "plugins" type TBazaarType = "templates" | "icons" | "widgets" | "themes" | "plugins"
type TCardType = "doc" | "notebook" | "all" type TCardType = "doc" | "notebook" | "all"
type TEventBus = "ws-main" | type TEventBus = "ws-main" |