[PATCH 8/9] wined3d: Filter messages generated by focus handling.

Henri Verbeet hverbeet at gmail.com
Mon Dec 8 05:04:54 CST 2014

On 4 December 2014 at 21:51, Stefan Dösinger <stefan at codeweavers.com> wrote:
> We may want to consider moving mode changes, window setup and focus loss
> handling into the client libs. With this patch and the next one we have
> 3 wined3d flags just for focus loss handling. Furthermore, dxgi yet
> again has different behavior - it doesn't hook the window procedure and
Yeah, possibly, although I'd also like to keep the amount of Win32
specific stuff in the public wined3d API to a minimum, so I'd rather
not have the client libs e.g. handle window messages directly.

> diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
> index ae6600e..89ec00a 100644
> --- a/dlls/wined3d/device.c
> +++ b/dlls/wined3d/device.c
> @@ -4961,7 +4961,7 @@ void device_invalidate_state(const struct wined3d_device *device, DWORD state)
>  LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL unicode,
>          UINT message, WPARAM wparam, LPARAM lparam, WNDPROC proc)
>  {
> -    if (device->filter_messages)
> +    if (device->filter_messages && message != WM_DISPLAYCHANGE)
That seems pretty specific. I'd be curious how other broadcast
messages are handled.

More information about the wine-devel mailing list