Issue #1953528 by swentel, amateescu, plopesc: Store 'per-bundle view mode settings' in CMI, get rid of field_bundle_settings() & its variable.
The configuration for
"does this view mode shows a separate setup screen in 'Manage Display', or does it use the settings for the 'default' view mode"
is the only thing left in field_bundle_settings(), which is still based on variable_set() / variable_get().
This is configured bundle by bundle, and thus is not a direct property of the view mode.
Leave view modes CMI files untouched, but use the "active" property of the EntityDisplay CMI files
This maps fairly well to the conceptual model of the feature - the EntityDisplay is there, just "disabled".
Drawback: You load two EntityDisplay objects at runtime; "load the display for 'full'; oh, it has 'active = FALSE', then load the display for 'default'"
- field_bundle_settings() (used to read and write) goes away, there's nothing left in there.
- most reads of those settings are done through entity_get_render_display(), so the storage change will stay encapsulated in that function
PASSED: [[SimpleTest]]: [MySQL] 58,421 pass(es). View
PASSED: [[SimpleTest]]: [MySQL] 58,997 pass(es). View
PASSED: [[SimpleTest]]: [MySQL] 58,865 pass(es). View