context-aware configuration supports config resource collection inheritance, and config resource property inheritance (which can be combined with config resource collection inheritance). both are not active by default, but have to be switched on explicitely for each config collection or config.
general handling for special properties:
whenever a property with name sling:configCollectionInherit or sling:configPropertyInherit is found, it should not be displaye in the GUI as configuration field.
collection properties should not be displayed at all, the current usage is only to contain the sling:configCollectionInherit property or nothing.
for each configuration (singleton or item of a collection) a checkbox "Enable property inheritance" should be displayed
it is checked when a property sling:configPropertyInherit is present, and has the value true
when saving the configuration: if sling:configPropertyInherit is set, put it in the list of posted config values with value true. if not set, remove it from the list of posted config values.
if a config collection is displayed a checkbox "Enable collection inheritance" is additionally displayed
it is checked when a property sling:configCollectionInherit is present, and has the value true
when saving the configuration collection: if sling:configCollectionInherit is set, put it in the collection properties with value true. if not set, remove it from the collection properties.
(please use the lastest snapshot of sample app & content to reproduce the usecases with the URLs)