mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-05-12 23:21:23 +08:00
This commit is contained in:
parent
006cb533ac
commit
fa0f062421
@ -861,5 +861,7 @@ export const addDragFill = (cellElement: Element) => {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
cellElement.classList.add("av__cell--active");
|
cellElement.classList.add("av__cell--active");
|
||||||
cellElement.insertAdjacentHTML("beforeend", `<div aria-label="${window.siyuan.languages.dragFill}" class="av__drag-fill ariaLabel"></div>`);
|
if (!cellElement.querySelector(".av__drag-fill")) {
|
||||||
|
cellElement.insertAdjacentHTML("beforeend", `<div aria-label="${window.siyuan.languages.dragFill}" class="av__drag-fill ariaLabel"></div>`);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
@ -28,15 +28,17 @@ export const avKeydown = (event: KeyboardEvent, nodeElement: HTMLElement, protyl
|
|||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
// 复制、粘贴
|
const avPanelElement = document.querySelector(".av__panel")
|
||||||
if (!event.ctrlKey && !event.metaKey) {
|
if (avPanelElement &&
|
||||||
nodeElement.querySelectorAll(".av__cell--active").forEach(item => {
|
(event.key === "Escape" || event.key.startsWith("ArrowLeft") || event.key === "Enter" || matchHotKey("⇥", event) || matchHotKey("⇧⇥", event))) {
|
||||||
item.classList.remove("av__cell--active");
|
avPanelElement.remove();
|
||||||
item.querySelector(".av__drag-fill")?.remove();
|
event.preventDefault();
|
||||||
});
|
event.stopPropagation();
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
if (event.key === "Escape") {
|
if (event.key === "Escape") {
|
||||||
selectCellElement.classList.remove("av__cell--select");
|
selectCellElement.classList.remove("av__cell--select", "av__cell--active");
|
||||||
|
selectCellElement.querySelector(".av__drag-fill")?.remove();
|
||||||
selectRow(rowElement.querySelector(".av__firstcol"), "select");
|
selectRow(rowElement.querySelector(".av__firstcol"), "select");
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
return true;
|
return true;
|
||||||
@ -60,7 +62,8 @@ export const avKeydown = (event: KeyboardEvent, nodeElement: HTMLElement, protyl
|
|||||||
newCellElement = previousCellElements[previousCellElements.length - 1];
|
newCellElement = previousCellElements[previousCellElements.length - 1];
|
||||||
}
|
}
|
||||||
if (newCellElement) {
|
if (newCellElement) {
|
||||||
selectCellElement.classList.remove("av__cell--select");
|
selectCellElement.classList.remove("av__cell--select", "av__cell--active");
|
||||||
|
selectCellElement.querySelector(".av__drag-fill")?.remove();
|
||||||
newCellElement.classList.add("av__cell--select");
|
newCellElement.classList.add("av__cell--select");
|
||||||
addDragFill(newCellElement);
|
addDragFill(newCellElement);
|
||||||
cellScrollIntoView(nodeElement, newCellElement, false);
|
cellScrollIntoView(nodeElement, newCellElement, false);
|
||||||
@ -78,7 +81,8 @@ export const avKeydown = (event: KeyboardEvent, nodeElement: HTMLElement, protyl
|
|||||||
newCellElement = nextRowElement.querySelector(".av__cell");
|
newCellElement = nextRowElement.querySelector(".av__cell");
|
||||||
}
|
}
|
||||||
if (newCellElement) {
|
if (newCellElement) {
|
||||||
selectCellElement.classList.remove("av__cell--select");
|
selectCellElement.classList.remove("av__cell--select", "av__cell--active");
|
||||||
|
selectCellElement.querySelector(".av__drag-fill")?.remove();
|
||||||
newCellElement.classList.add("av__cell--select");
|
newCellElement.classList.add("av__cell--select");
|
||||||
addDragFill(newCellElement);
|
addDragFill(newCellElement);
|
||||||
cellScrollIntoView(nodeElement, newCellElement, false);
|
cellScrollIntoView(nodeElement, newCellElement, false);
|
||||||
@ -92,7 +96,8 @@ export const avKeydown = (event: KeyboardEvent, nodeElement: HTMLElement, protyl
|
|||||||
newCellElement = previousRowElement.querySelector(`.av__cell[data-col-id="${selectCellElement.dataset.colId}"]`);
|
newCellElement = previousRowElement.querySelector(`.av__cell[data-col-id="${selectCellElement.dataset.colId}"]`);
|
||||||
}
|
}
|
||||||
if (newCellElement) {
|
if (newCellElement) {
|
||||||
selectCellElement.classList.remove("av__cell--select");
|
selectCellElement.classList.remove("av__cell--select", "av__cell--active");
|
||||||
|
selectCellElement.querySelector(".av__drag-fill")?.remove();
|
||||||
newCellElement.classList.add("av__cell--select");
|
newCellElement.classList.add("av__cell--select");
|
||||||
addDragFill(newCellElement);
|
addDragFill(newCellElement);
|
||||||
cellScrollIntoView(nodeElement, newCellElement);
|
cellScrollIntoView(nodeElement, newCellElement);
|
||||||
@ -106,7 +111,8 @@ export const avKeydown = (event: KeyboardEvent, nodeElement: HTMLElement, protyl
|
|||||||
newCellElement = nextRowElement.querySelector(`.av__cell[data-col-id="${selectCellElement.dataset.colId}"]`);
|
newCellElement = nextRowElement.querySelector(`.av__cell[data-col-id="${selectCellElement.dataset.colId}"]`);
|
||||||
}
|
}
|
||||||
if (newCellElement) {
|
if (newCellElement) {
|
||||||
selectCellElement.classList.remove("av__cell--select");
|
selectCellElement.classList.remove("av__cell--select", "av__cell--active");
|
||||||
|
selectCellElement.querySelector(".av__drag-fill")?.remove();
|
||||||
newCellElement.classList.add("av__cell--select");
|
newCellElement.classList.add("av__cell--select");
|
||||||
addDragFill(newCellElement);
|
addDragFill(newCellElement);
|
||||||
cellScrollIntoView(nodeElement, newCellElement);
|
cellScrollIntoView(nodeElement, newCellElement);
|
||||||
|
Loading…
Reference in New Issue
Block a user