A couple of years ago we had a similar discussion about how to persist display configurations. Following that I was tasked with implementing mir_blob_from_display_configuration(), mir_blob_to_display_configuration() et alia. That's a client API for persisting display configurations.
Now, you're talking about persisting them in Unity8. Are you expecting an additional server API?
If you're happy creating an internal connection to use the client API then I think Mir already has everything you're asking for:
1. Clients are notified of config changes (which if it never applies a session config must be base config changes); and
2. there's mechanisms for serializing them and applying them.
I can wrap this implementation up as a MirAL helper class.
A couple of years ago we had a similar discussion about how to persist display configurations. Following that I was tasked with implementing mir_blob_ from_display_ configuration( ), mir_blob_ to_display_ configuration( ) et alia. That's a client API for persisting display configurations.
Now, you're talking about persisting them in Unity8. Are you expecting an additional server API?
If you're happy creating an internal connection to use the client API then I think Mir already has everything you're asking for:
1. Clients are notified of config changes (which if it never applies a session config must be base config changes); and
2. there's mechanisms for serializing them and applying them.
I can wrap this implementation up as a MirAL helper class.