mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-05-12 15:11:10 +08:00
* 🐛 Fix Linux key paste issue in tab
* Better way to fix Linux key paste issue in tab
* Only work on linux
* Fix Linux key paste issue in tab
This commit is contained in:
parent
b9f3c1c03c
commit
6d66c807d0
@ -101,11 +101,31 @@ export class Wnd {
|
|||||||
window.siyuan.menus.menu.remove();
|
window.siyuan.menus.menu.remove();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
|
const activeElement = document.activeElement;
|
||||||
|
const pasteHandler = (e: ClipboardEvent) => {
|
||||||
|
e.preventDefault();
|
||||||
|
e.stopPropagation();
|
||||||
|
};
|
||||||
|
window.addEventListener("paste", pasteHandler, {
|
||||||
|
capture: true,
|
||||||
|
once: true
|
||||||
|
});
|
||||||
|
|
||||||
|
// 如果在短时间内没有 paste 事件发生,移除监听
|
||||||
|
setTimeout(() => {
|
||||||
|
window.removeEventListener("paste", pasteHandler, {
|
||||||
|
capture: true
|
||||||
|
});
|
||||||
|
}, 250);
|
||||||
|
|
||||||
|
// 保持原有焦点
|
||||||
|
if (activeElement instanceof HTMLElement) {
|
||||||
|
activeElement.focus();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
target = target.parentElement;
|
target = target.parentElement;
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
this.headersElement.addEventListener("mousewheel", (event: WheelEvent) => {
|
this.headersElement.addEventListener("mousewheel", (event: WheelEvent) => {
|
||||||
this.headersElement.scrollLeft = this.headersElement.scrollLeft + event.deltaY;
|
this.headersElement.scrollLeft = this.headersElement.scrollLeft + event.deltaY;
|
||||||
|
Loading…
Reference in New Issue
Block a user