diff --git a/.changes/enter-event.md b/.changes/enter-event.md new file mode 100644 index 0000000..1b638dc --- /dev/null +++ b/.changes/enter-event.md @@ -0,0 +1,5 @@ +--- +"tray-icon": "patch" +--- + +On Windows, fix `Enter` event emitted only once and never emitted again. diff --git a/src/platform_impl/windows/mod.rs b/src/platform_impl/windows/mod.rs index b143020..fd52d83 100644 --- a/src/platform_impl/windows/mod.rs +++ b/src/platform_impl/windows/mod.rs @@ -439,6 +439,7 @@ unsafe extern "system" fn tray_proc( if !in_x || !in_y { KillTimer(hwnd, WM_USER_LEAVE_TIMER_ID as _); + userdata.entered = false; TrayIconEvent::send(TrayIconEvent::Leave { id: userdata.id.clone(),