* 🐛 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
1 changed files with 21 additions and 1 deletions
|
@ -101,11 +101,31 @@ export class Wnd {
|
|||
window.siyuan.menus.menu.remove();
|
||||
event.stopPropagation();
|
||||
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;
|
||||
}
|
||||
target = target.parentElement;
|
||||
}
|
||||
|
||||
});
|
||||
this.headersElement.addEventListener("mousewheel", (event: WheelEvent) => {
|
||||
this.headersElement.scrollLeft = this.headersElement.scrollLeft + event.deltaY;
|
||||
|
|
Loading…
Add table
Reference in a new issue