Closed cgutman closed 1 year ago
When Explorer restarts, it's the application's responsibility to re-add any notification icons that were present. To trigger this, Explorer will send a global TaskbarCreated message. Details on this process are available on MSDN here: https://learn.microsoft.com/en-us/windows/win32/shell/taskbar#taskbar-creation-notification
This PR introduces handling of this message in _tray_wnd_proc() to prevent the tray icon from disappearing after an Explorer crash/restart.
_tray_wnd_proc()
The existing bug can be reproduced as follows:
tray_init()
Prior to this PR, the tray icon will not reappear. With this change, it reappears properly.
Hi @cgutman , great catch, thank you for working on this!
When Explorer restarts, it's the application's responsibility to re-add any notification icons that were present. To trigger this, Explorer will send a global TaskbarCreated message. Details on this process are available on MSDN here: https://learn.microsoft.com/en-us/windows/win32/shell/taskbar#taskbar-creation-notification
This PR introduces handling of this message in
_tray_wnd_proc()
to prevent the tray icon from disappearing after an Explorer crash/restart.The existing bug can be reproduced as follows:
tray_init()
and confirm presence in the notification area.Prior to this PR, the tray icon will not reappear. With this change, it reappears properly.