On Fri Sep 13 19:39:57 2024 +0000, Rémi Bernon wrote:
I think it would be better to wrap only the metadata in the struct, while keeping the data itself appended. Otherwise it looks like an array of `notify_data_icon` although each struct is also variable sized. Hmmm is it better to do it like this?
``` notify_data -> notify_data_icon -> image bitmap data -> second notify_data_icon -> another image bitmap data ``` where `notify_data_icon`: ```C struct notify_data_icon { /* data for the icon bitmap */ UINT width; UINT height; UINT planes; UINT bpp; }; ``` and `notify_data` will look like that (without image related fields): ```C struct notify_data /* platform-independent format for NOTIFYICONDATA */ { LONG hWnd; UINT uID; UINT uFlags; UINT uCallbackMessage; WCHAR szTip[128]; DWORD dwState; DWORD dwStateMask; WCHAR szInfo[256]; union { UINT uTimeout; UINT uVersion; } u; WCHAR szInfoTitle[64]; DWORD dwInfoFlags; GUID guidItem; ``` -- https://gitlab.winehq.org/wine/wine/-/merge_requests/2875#note_82312