From: Sergei Chernyadyev serg.cherniadjev@gmail.com
Icon-related NIIF_ flags are now handled properly when used alongside with other flags such as NIIF_LARGE_ICON and others. --- programs/explorer/systray.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/programs/explorer/systray.c b/programs/explorer/systray.c index 275c683e3ff..50f0ca49fa0 100644 --- a/programs/explorer/systray.c +++ b/programs/explorer/systray.c @@ -241,7 +241,12 @@ static void balloon_create_timer( struct icon *icon ) if ((icon->info_flags & NIIF_ICONMASK) == NIIF_USER) SendMessageW( balloon_window, TTM_SETTITLEW, (WPARAM)icon->info_icon, (LPARAM)icon->info_title ); else - SendMessageW( balloon_window, TTM_SETTITLEW, icon->info_flags, (LPARAM)icon->info_title ); + { + UINT info_flags_wparam = icon->info_flags & NIIF_ERROR; + if (icon->info_flags & NIIF_LARGEICON) + info_flags_wparam += TTI_ERROR; + SendMessageW( balloon_window, TTM_SETTITLEW, info_flags_wparam, (LPARAM)icon->info_title ); + } balloon_icon = icon; balloon_pos.x = balloon_pos.y = MAXLONG; update_systray_balloon_position();