leaferjs / leafer-ui

一款好用的 Canvas 渲染引擎,革新的体验。高效绘图 、UI 交互(小游戏、互动应用、组态)、图形编辑,前端开发必备~
https://www.leaferjs.com
MIT License
2.38k stars 82 forks source link

Menu和MenuTap事件的触发顺序存在问题 #192

Open Formulaaa opened 1 month ago

Formulaaa commented 1 month ago

环境: web 期望: 先触发Menu再触发MenuTap 实际: 顺序颠倒了 测试流程: 在浏览器中单击右键 const app = new App({ view: window, editor: {}, }); app.on(PointerEvent.MENU, () => { console.log('menu down') }); app.on(PointerEvent.MENU_TAP, () => { console.log('menu up') }); // 输出 // menu up // menu down

Formulaaa commented 1 month ago

观察源码里面,MenuTap事件好像是绑定在canvas上的,Menu事件好像是绑定在window上的。经过测试,绑定在canvas上的contextmenu事件 晚于 window上的pointerup事件触发,可能导致了顺序异常。

leaferjs commented 1 month ago

感谢反馈,刚测了一下,在Mac上是正常的,Window上有这个问题,下个版本修复~

leaferjs commented 1 month ago

已修复,等待新版本发布~