[Wayland] Clipboard/dnd destination may cut transfers short
The wayland selection implementation relies on GInputStream async functions to read from the source app. However the g_input_stream_read_bytes_async() callback relies on glib always reading as many bits as possible. Given these functions don't provide hard guarantees, transfers may be cut short due to the clipboard/dnd dest app thinking it reached the end of transferred data.
It seems safer to rely on the 0-len read that'll happen after the transfer is finished.