Chromium Code Reviews| Index: services/preferences/public/interfaces/preferences.mojom |
| diff --git a/services/preferences/public/interfaces/preferences.mojom b/services/preferences/public/interfaces/preferences.mojom |
| index 47a79dc538663c83bcbf39c83e5ee82d1f3f0a2c..75b8573f09d65d9871c6c4b1b1f6d6146fc8ec60 100644 |
| --- a/services/preferences/public/interfaces/preferences.mojom |
| +++ b/services/preferences/public/interfaces/preferences.mojom |
| @@ -99,13 +99,27 @@ interface PrefStoreConnector { |
| map<PrefStoreType, PrefStoreConnection> connections); |
| }; |
| +// An update to a subcomponent of a pref. |
| +struct SubPrefUpdate { |
| + // The path to the changed value within the pref. |
| + array<string> path; |
| + // The new value; a null |value| indicates a delete. |
| + mojo.common.mojom.Value? value; |
| +}; |
| + |
| +union PrefUpdateValue { |
| + array<SubPrefUpdate> split_updates; |
|
tibell
2017/04/12 07:13:53
// Updates to several values withing a pref (e.g.
|
| + // An atomic update to the pref. A null |atomic_update| indicates a delete. |
| + mojo.common.mojom.Value? atomic_update; |
| +}; |
| + |
| // An update to a pref. |
| struct PrefUpdate { |
| // The key of the pref being updated. |
| string key; |
| - // The new value; a null |value| indicates a delete. |
| - mojo.common.mojom.Value? value; |
| - //|flags| is a bitmask of WritablePrefStore::PrefWriteFlags. |
| + // The value update. |
| + PrefUpdateValue value; |
| + // |flags| is a bitmask of WritablePrefStore::PrefWriteFlags. |
| uint32 flags; |
| }; |