Their surfaces may be used.
---
x11drv already supports this (and we test for it in opengl32/tests/opengl.c:test_message_window). x11drv doesn't make an x11drv_win_data for message-only windows when they are initially created in X11DRV_create_win_data, but does later if a surface is requested (x11drv_client_surface_create -> create_client_window). I don't see much of a reason to do it lazily in macdrv. We won't make a Cocoa window for message-only windows in macdrv_create_win_data since the parent isn't the desktop, so we're really just allocating space for the macdrv_win_data. And plus opengl.c:macdrv_surface_create uses `get_win_data(hwnd)` as its check for whether a hwnd is in-process; we'd have to adjust that logic (and shuffle some things around in that function) if we were to have macdrv_client_surface_create potentially create a macdrv_win_data.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/9253
H.264 uses a 16-pixel alignment, and the stream sink media type should
have the aligned height after the session has started.
--
v15: mf/tests: Test H.264 decoder alignment.
mf/tests: Test H.264 sink media type height alignment.
mf/tests: Fix a scheme resolver test failure on current Windows 11.
mf/tests: Skip some tests invalid on current Windows 11.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8887
I plan to do the same to extensions.
--
v3: opengl32: Use stored GL version in wrap_glGetString.
opengl32: Use stored context GL version in get_integer.
opengl32: Hide GL versions larger than 4.3 on wow64 in make_context_current.
opengl32: Use stored GL version in check_extension_support.
opengl32: Use the actual context GL version in is_extension_supported.
opengl32: Factor out make_context_current.
https://gitlab.winehq.org/wine/wine/-/merge_requests/9250
I plan to do the same to extensions.
--
v2: opengl32: Use stored GL version in wrap_glGetString.
opengl32: Use stored context GL version in get_integer.
opengl32: Hide GL versions larger than 4.3 on wow64 in sync_context_version.
opengl32: Use stored GL version in check_extension_support.
opengl32: Use the actual context GL version in is_extension_supported.
opengl32: Facror out make_context_current.
https://gitlab.winehq.org/wine/wine/-/merge_requests/9250
Since !9128, macdrv ime processing has been broken. In my opinion, this seems to be an issue with the macdrv ime code rather than a problem with !9128.
In macdrv_ImeProcessKey:
```
macdrv_send_keydown_to_input_source(flags, repeat, keyc, himc, &done);
while (!done) NtUserMsgWaitForMultipleObjectsEx(0, NULL, INFINITE, QS_POSTMESSAGE | QS_SENDMESSAGE, 0);
```
Within the macdrv WINE_IME_POST_UPDATE code path, there are no message post/send operations, causing it to wait infinitely here. I haven't analyzed in detail why it worked before, but I guess it escaped the wait due to unrelated messages. This code likely represents a remnant of the old macdrv ime code. I recall the old macdrv ime code used SendMessage().
In ime processing, some key inputs reach macdrv_sent_text_input without calling macdrv_ime_set_text. Therefore, I modified the code to clearly detect when macdrv_sent_text_input is reached.
I left a working fallback code in case NtCreateEvent() fails. But that might be superfluous.
--
v3: win32u: Fix typo.
winemac: Use event handle to detect macdrv ime processing done.
https://gitlab.winehq.org/wine/wine/-/merge_requests/9246