wayland: Emit Cursor::changed signal when cursor surface is committed
The damaged signal is wired to the KWaylandServer::Cursor::changed signal to indicate when the cursor image changes, makes sense.
But it can create issues if you repaint cursor SurfaceItem when the SurfaceInterface::damaged signal is emitted. There might be other signals that we need to wait for to invalidate SurfaceItem's state.
The SurfaceInterface::committed is a better signal. When it's emitted, the surface commit has been completed. Technically, it's different from the damaged signal, but in practice they are equivalent. GTK and Qt always damage the cursor surface.