fix(tray): macOS 菜单栏图标因 mouse-enter 消失 - #637
Merged
Merged
Conversation
#636 subscribed to mouse-enter so a failed Host read could retry on hover. On macOS that event replaces NSStatusItem with a custom view, which hides the extra and stops the attached menu. Gate hover/right-click retry to Windows/Linux; macOS still refreshes from session and inbox events.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
原因
#636 给托盘加了
mouse-enter,用来在悬停时重试失败的 Host 读取。macOS 上监听这个事件会把原生
NSStatusItem换成自定义 view,菜单栏图标消失,左键也不再弹出挂上的菜单。再叠加上 darwin 去掉了click还原窗口,看起来就像「没有托盘了」。修复
mouse-enter/right-click,继续用setContextMenu的原生菜单栏 extra验证
node --test apps/desktop/test/close-behavior-tray.test.mjs10/10