Various patches and improvements

Remove `virtual` here may break `--svg-embed-bitmap 0`, because `CairoBackgroundRenderer` can no longer override `setMimeData()`.