--
v2: winepulse: Use mmdevapi's AudioSessionControl.
wineoss: Use mmdevapi's AudioSessionControl.
winecoreaudio: Use mmdevapi's AudioSessionControl.
winealsa: Use mmdevapi's AudioSessionControl.
winepulse: Implement function to (un)lock sessions.
wineoss: Implement function to (un)lock sessions.
winecoreaudio: Implement function to (un)lock sessions.
winealsa: Implement function to (un)lock sessions.
mmdevapi: Implement AudioSessionControl.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2669
--
v4: winex11: Use EM_REPLACESEL to set IME composition strings.
winex11: Always zero terminate XIM composition string.
winex11: Compute preedit text buffer sizes in WCHAR units.
winex11: Use an IME UI message to set composition status.
imm32: Only send GCS_CURSORPOS when cursor position changes.
winex11: Use an IME UI message to set cursor pos.
winex11: Use an IME UI message to get cursor pos.
winex11: Use an IME UI message to set open status.
win32u: Keep the builtin IME UI window in win32u struct imc.
imm32: Add a struct ime field to track whether IME is builtin.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2637