Estimated read time: 1 minutes

I've recently
fixed
a missing-repaint problem in LibreOffice's headless backend, but the root
cause wasn't close to the symptom I saw first. Part of the debugging process
was to understand what's the relation between sdr::contact::ViewContact,
sdr::contact::ViewObjectContact and sdr::contact::ObjectContact.
See this old presentation and the review of my documentation update for the details, but the short version is that:
- somewhat confusingly,
sdr::contact::ViewContactis part of the model, and there is onesdr::contact::ViewContactobject per shape sdr::contact::ViewObjectContactis part of a view, and there is onesdr::contact::ViewObjectContactper shape, per view- finally
sdr::contact::ObjectContactis part of a view, and there is onesdr::contact::ObjectContactper view
So the answer to my original 'Is it normal that I have two object contacts and a single view contact for a shape and two views?' question is: yes, that's expected. ;-) Hopefully the updated documentation is now more clear, the incorrect 1:N relation in the original class diagram first confused me.