wayland: Update pointer state before ending the drag
ending a drag will update focus. Kwin explicitly resets it to whatever is now under the mouse now that the implicit grab has ended.
This means no-one sends a pointer up.
Clients (xwayland) don't automatically make leave events count as a mouse up, because typically you don't get a leave event whilst we have a grab.
Xwayland also can't track the status of the wl_datasource as it didn't use it.
This patch shouldn't affect any wayland clients as we don't send a frame event until the focus changes which is after the dnd_finished events.
Testing done:
- dragged firefox under xwayland tabs out from firefox to the desktop
- confirmed a new window appeared