diff --git a/app/src/protyle/render/av/keydown.ts b/app/src/protyle/render/av/keydown.ts index b33c9e02e..9499cee92 100644 --- a/app/src/protyle/render/av/keydown.ts +++ b/app/src/protyle/render/av/keydown.ts @@ -58,12 +58,16 @@ export const avKeydown = (event: KeyboardEvent, nodeElement: HTMLElement, protyl if (event.key === "ArrowLeft" || matchHotKey("⇧⇥", event)) { const previousRowElement = rowElement.previousElementSibling; if (selectCellElement.previousElementSibling && !selectCellElement.previousElementSibling.classList.contains("av__firstcol")) { - if (selectCellElement.previousElementSibling.classList.contains("av__cell")) { - newCellElement = selectCellElement.previousElementSibling; - } else { + if (selectCellElement.previousElementSibling.classList.contains("av__colsticky")) { newCellElement = selectCellElement.previousElementSibling.lastElementChild; + if (newCellElement.classList.contains("av__firstcol")) { + newCellElement = undefined; + } + } else if (selectCellElement.previousElementSibling.classList.contains("av__cell")) { + newCellElement = selectCellElement.previousElementSibling; } - } else if (previousRowElement && !previousRowElement.classList.contains("av__row--header")) { + } + if (!newCellElement && previousRowElement && !previousRowElement.classList.contains("av__row--header")) { const previousCellElements = previousRowElement.querySelectorAll(".av__cell"); newCellElement = previousCellElements[previousCellElements.length - 1]; }