backend/wayland: don't attach null buffers to owned surfaces
If an output owns the surface, it means that the surface plays the role of an xdg_toplevel. The xdg-shell protocol mandates that in order to be mapped again, the surface must perform the whole initial commit and configuration dance, which is not an option. Instead, we can just stop updating the output. This also avoids resetting xdg_toplevel state such as title and app_id, which are cleared whe the surface is unmapped.
wlr_wl_output_create_from_surface() users might depend on the current behavior, so preserve it for outputs backed by existing surfaces, at least for now.