-
Notifications
You must be signed in to change notification settings - Fork 42
我用Niva开发了一个置顶文档的小工具及遇到的bug #119
Description
介绍
我们平时使用 obsidian 或其他文档文件的时候有没有这样的体会,就是我需要对照某个笔记的内容清单做一些事情。
这是时候,如果某个笔记能置顶就好了,然后就可以悬浮在桌面上来边对照边修改了。
DocOnTop 就是为这个需求而开发的。
主窗口预览
下载地址
https://github.com/wish5115/Niva-DocOnTop/releases
遇到的问题
-
文档错误
Niva.event.window.close文档是这个,实际应该是Niva.api.window.close -
Niva.api.tray.update 不生效
-
setTimeout和keydown等问题
如果用定时器setTimeout,setInterval等会导致界面卡顿直到卡死,setTimeout就停止工作了,大约执行200-300次左右会停止工作,而且定时也不准,越到后面间隔时间越久。
keydown等也有这个问题,如果你连续不停的触发,也大约执行200-300次左右会停止工作。我在keydown里用了setTimeout防止抖动,不知道是不是这个原因。
-
Niva.api.shortcut.register的坑这个注册快捷键每次刷新页面都会新注册一个,而且前一个注册的不会消失,如果先删除再注册,那么新注册的id就会递增,这样不好处理快捷键捕获事件。最后,只能记录下快捷键id,下次传进去,并处理好增删改的逻辑才行。
-
Mac上当窗口最小化后,再通过代码还原,无论是
window.setMinimized(false)还是window.setVisible(true),textarea里的光标都消失了,确切的说不可见了,但能正常输入,鼠标指针也变成默认了,而不是输入状态的指针。必须点击系统图标,让最小化还原才能恢复指针和光标为正常状态。
总结
优点:简单易上手,开发小工具不错
缺点:接口粒度粗,功能有限
