
Split the struct into mutable and immutable parts. Access the mutable parts via getters and the immutable parts via a single struct. This avoids copying around the immutable parts. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3280>