From 299437d75168a9d1fca13be01c7da272b6993da2 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Tue, 2 Apr 2024 21:15:07 +0800 Subject: [PATCH] :art: Improve database template empty date rendering https://github.com/siyuan-note/siyuan/issues/10830 --- app/src/boot/globalEvent/click.ts | 11 ++++++++++- app/src/layout/dock/Outline.ts | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/src/boot/globalEvent/click.ts b/app/src/boot/globalEvent/click.ts index 607e3d4f0..6ba8c4520 100644 --- a/app/src/boot/globalEvent/click.ts +++ b/app/src/boot/globalEvent/click.ts @@ -6,7 +6,16 @@ import {writeText} from "../../protyle/util/compatibility"; import {showMessage} from "../../dialog/message"; export const globalClick = (event: MouseEvent & { target: HTMLElement }) => { - document.getElementById("dragGhost")?.remove(); + const ghostElement = document.getElementById("dragGhost") + if (ghostElement) { + const startElement = ghostElement.parentElement.querySelector(`[data-node-id="${ghostElement.getAttribute("data-node-id")}"]`) as HTMLElement + startElement ? startElement.style.opacity = "" : "" + ghostElement.parentElement.querySelectorAll(".dragover__top, .dragover__bottom, .dragover").forEach((item: HTMLElement) => { + item.classList.remove("dragover__top", "dragover__bottom", "dragover"); + item.style.opacity = "" + }); + ghostElement.remove(); + } if (!window.siyuan.menus.menu.element.contains(event.target) && !hasClosestByAttribute(event.target, "data-menu", "true")) { if (getSelection().rangeCount > 0 && window.siyuan.menus.menu.element.contains(getSelection().getRangeAt(0).startContainer) && window.siyuan.menus.menu.element.contains(document.activeElement)) { diff --git a/app/src/layout/dock/Outline.ts b/app/src/layout/dock/Outline.ts index bf3da5862..9d35f744d 100644 --- a/app/src/layout/dock/Outline.ts +++ b/app/src/layout/dock/Outline.ts @@ -235,8 +235,8 @@ export class Outline extends Model { const documentSelf = document; item.style.opacity = "0.38"; const ghostElement = item.cloneNode(true) as HTMLElement; - document.body.append(ghostElement); - ghostElement.dataset.id = "dragGhost" + this.element.append(ghostElement); + ghostElement.setAttribute("id", "dragGhost"); ghostElement.firstElementChild.setAttribute("style", "padding-left:4px"); ghostElement.setAttribute("style", `border-radius: var(--b3-border-radius);background-color: var(--b3-list-hover);position: fixed; top: ${event.clientY}px; left: ${event.clientX}px; z-index:999997;`);