[PATCH 2/2] winex11.drv: Implement FlashWindow with _NET_WM_STATE_DEMANDS_ATTENTION. (try 2)

Dmitry Timoshkov dmitry at baikal.ru
Tue Sep 15 22:21:19 CDT 2015


Jactry Zeng <jzeng at codeweavers.com> wrote:

> +void X11DRV_FlashWindow( HWND hwnd, BOOL bInvert )
> +{
> +    struct x11drv_win_data *data = get_win_data( hwnd );
> +    XEvent xev;
> +
> +    if (!data)
> +        return;
> +
> +    memset( &xev, 0, sizeof(xev) );
> +    xev.type = ClientMessage;
> +    xev.xclient.window = data->whole_window;
> +    xev.xclient.message_type = x11drv_atom( _NET_WM_STATE );
> +    xev.xclient.format = 32;
> +    xev.xclient.data.l[0] = 1;
> +    xev.xclient.data.l[1] = XInternAtom( data->display, "_NET_WM_STATE_DEMANDS_ATTENTION",
> +                                         False );
> +
> +    XSendEvent( data->display, DefaultRootWindow( data->display ), False,
> +                SubstructureNotifyMask, &xev );
> +    release_win_data( data );
> +}

This can't work, please have a look how XSendEvent is used in other
parts of x11drv.

-- 
Dmitry.



More information about the wine-devel mailing list