Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(856)

Issue 7775008: Enable sync for the settings from the Extension Settings API. (Closed)

Created:
9 years, 3 months ago by not at google - send to devlin
Modified:
9 years, 3 months ago
CC:
chromium-reviews, ncarter (slow), idana, Raghu Simha, Erik does not do reviews, mihaip+watch_chromium.org, cbentzel+watch_chromium.org, Aaron Boodman, darin-cc_chromium.org, pam+watch_chromium.org, Paweł Hajdan Jr., estade+watch_chromium.org, tim (not reviewing), Matt Perry
Visibility:
Public.

Description

Enable sync for the settings from the Extension Settings API. BUG=94575 TEST=unit tests included

Patch Set 1 #

Patch Set 2 : Reordering #

Total comments: 14

Patch Set 3 : Comments #1 #

Patch Set 4 : Rewrite to be sychronous #

Patch Set 5 : Update comments etc #

Patch Set 6 : Fix win build, sync unit tests #

Patch Set 7 : Fix mac/win sync tests #

Patch Set 8 : Fix mac/win sync tests #2 #

Total comments: 10

Patch Set 9 : Comments (against future change containing GROUP_FILE) #

Total comments: 19

Patch Set 10 : Review #1 #

Total comments: 109

Patch Set 11 : Review #2 #

Patch Set 12 : Review #2 against correct branch #

Total comments: 28

Patch Set 13 : Review #3 #

Total comments: 26

Patch Set 14 : Review #4 #

Patch Set 15 : Review #4 against correct branch #

Patch Set 16 : Comments, GCC compile fix #

Patch Set 17 : Comments, GCC compile fix #

Total comments: 43

Patch Set 18 : Review #5 #

Total comments: 23

Patch Set 19 : Review #6 #

Total comments: 17

Patch Set 20 : Sync to tip. Latest comments. #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+1960 lines, -110 lines) Patch
M chrome/browser/extensions/extension_service.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 5 chunks +4 lines, -5 lines 0 comments Download
M chrome/browser/extensions/extension_service.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +4 lines, -4 lines 0 comments Download
A chrome/browser/extensions/extension_setting_sync_data.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +77 lines, -0 lines 0 comments Download
A chrome/browser/extensions/extension_setting_sync_data.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +78 lines, -0 lines 0 comments Download
M chrome/browser/extensions/extension_settings.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +56 lines, -12 lines 0 comments Download
M chrome/browser/extensions/extension_settings.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +229 lines, -40 lines 0 comments Download
M chrome/browser/extensions/extension_settings_api.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_settings_api.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +4 lines, -7 lines 0 comments Download
M chrome/browser/extensions/extension_settings_cached_leveldb_storage_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_settings_cached_noop_storage_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_settings_leveldb_storage_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -3 lines 0 comments Download
M chrome/browser/extensions/extension_settings_storage.h View 1 2 3 4 5 6 7 8 9 10 14 16 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_settings_storage_unittest.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 3 chunks +8 lines, -5 lines 0 comments Download
M chrome/browser/extensions/extension_settings_storage_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +13 lines, -12 lines 0 comments Download
A chrome/browser/extensions/extension_settings_sync_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +492 lines, -0 lines 0 comments Download
A chrome/browser/extensions/extension_settings_sync_util.h View 1 2 3 4 5 6 7 8 9 10 14 16 1 chunk +43 lines, -0 lines 0 comments Download
A chrome/browser/extensions/extension_settings_sync_util.cc View 1 2 3 4 5 6 7 8 9 10 14 16 1 chunk +51 lines, -0 lines 0 comments Download
A chrome/browser/extensions/extension_settings_ui_wrapper.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +62 lines, -0 lines 0 comments Download
A chrome/browser/extensions/extension_settings_ui_wrapper.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +65 lines, -0 lines 0 comments Download
A chrome/browser/extensions/syncable_extension_settings_storage.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +79 lines, -0 lines 0 comments Download
A chrome/browser/extensions/syncable_extension_settings_storage.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +341 lines, -0 lines 0 comments Download
M chrome/browser/profiles/profile_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/profiles/profile_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +0 lines, -4 lines 0 comments Download
M chrome/browser/sync/glue/data_type_manager_impl.cc View 1 2 3 14 16 1 chunk +1 line, -0 lines 0 comments Download
A chrome/browser/sync/glue/extension_setting_data_type_controller.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +64 lines, -0 lines 0 comments Download
A chrome/browser/sync/glue/extension_setting_data_type_controller.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +107 lines, -0 lines 0 comments Download
M chrome/browser/sync/profile_sync_factory.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +9 lines, -0 lines 0 comments Download
M chrome/browser/sync/profile_sync_factory_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +6 lines, -0 lines 0 comments Download
M chrome/browser/sync/profile_sync_factory_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 6 chunks +27 lines, -0 lines 0 comments Download
chrome/browser/sync/profile_sync_factory_mock.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +6 lines, -0 lines 0 comments Download
M chrome/browser/sync/profile_sync_service.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +5 lines, -0 lines 0 comments Download
A chrome/browser/sync/protocol/extension_setting_specifics.proto View 1 2 3 4 14 16 1 chunk +33 lines, -0 lines 0 comments Download
M chrome/browser/sync/protocol/nigori_specifics.proto View 1 2 3 4 5 14 16 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/sync/protocol/proto_value_conversions.h View 14 16 2 chunks +4 lines, -0 lines 0 comments Download
chrome/browser/sync/protocol/proto_value_conversions.cc View 1 2 3 4 5 14 16 4 chunks +12 lines, -0 lines 0 comments Download
M chrome/browser/sync/protocol/proto_value_conversions_unittest.cc View 1 2 3 4 5 14 16 4 chunks +7 lines, -1 line 0 comments Download
M chrome/browser/sync/protocol/sync_proto.gyp View 14 16 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/sync/syncable/model_type.h View 14 16 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/sync/syncable/model_type.cc View 14 16 11 chunks +27 lines, -0 lines 0 comments Download
M chrome/browser/sync/util/cryptographer.cc View 1 2 3 4 5 14 16 2 chunks +4 lines, -0 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 4 chunks +10 lines, -0 lines 0 comments Download
M chrome/chrome_tests.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 1 comment Download
M chrome/common/chrome_switches.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/common/chrome_switches.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/common/pref_names.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/pref_names.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M chrome/test/base/testing_profile.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +0 lines, -5 lines 0 comments Download
M chrome/test/base/testing_profile.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +0 lines, -3 lines 0 comments Download
M net/tools/testserver/chromiumsync.py View 1 2 3 14 16 4 chunks +7 lines, -1 line 0 comments Download

Messages

Total messages: 43 (0 generated)
not at google - send to devlin
(This is the non-WIP version of http://codereview.chromium.org/7747043/) http://codereview.chromium.org/7775008/diff/2001/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc File chrome/browser/ui/webui/ntp/ntp_resource_cache.cc (right): http://codereview.chromium.org/7775008/diff/2001/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc#newcode489 chrome/browser/ui/webui/ntp/ntp_resource_cache.cc:489: LOG(ERROR) << ...
9 years, 3 months ago (2011-08-29 09:07:44 UTC) #1
akalin
Before I look too deeply, one big question. http://codereview.chromium.org/7775008/diff/2001/chrome/browser/extensions/extension_setting_sync_data.h File chrome/browser/extensions/extension_setting_sync_data.h (right): http://codereview.chromium.org/7775008/diff/2001/chrome/browser/extensions/extension_setting_sync_data.h#newcode26 chrome/browser/extensions/extension_setting_sync_data.h:26: explicit ...
9 years, 3 months ago (2011-08-31 07:49:34 UTC) #2
Ben Olmstead
Haven't had a chance to go over this in detail, but given Fred's concerns, I'm ...
9 years, 3 months ago (2011-08-31 17:36:43 UTC) #3
akalin
+atwilson, who may have an opinion re. the NTP string stuff Also, we should probably ...
9 years, 3 months ago (2011-08-31 21:12:51 UTC) #4
Ben Olmstead
http://codereview.chromium.org/7775008/diff/2001/chrome/browser/extensions/syncable_extension_settings_storage.h File chrome/browser/extensions/syncable_extension_settings_storage.h (right): http://codereview.chromium.org/7775008/diff/2001/chrome/browser/extensions/syncable_extension_settings_storage.h#newcode50 chrome/browser/extensions/syncable_extension_settings_storage.h:50: virtual void Get(const std::string& key, Callback* callback) OVERRIDE; On ...
9 years, 3 months ago (2011-08-31 21:19:42 UTC) #5
not at google - send to devlin
http://codereview.chromium.org/7775008/diff/2001/chrome/browser/extensions/extension_setting_sync_data.h File chrome/browser/extensions/extension_setting_sync_data.h (right): http://codereview.chromium.org/7775008/diff/2001/chrome/browser/extensions/extension_setting_sync_data.h#newcode26 chrome/browser/extensions/extension_setting_sync_data.h:26: explicit ExtensionSettingSyncData( On 2011/08/31 07:49:34, akalin wrote: > no ...
9 years, 3 months ago (2011-09-02 05:00:40 UTC) #6
akalin
> The extension settings code already thread jumps because it needs to go > to ...
9 years, 3 months ago (2011-09-02 05:43:56 UTC) #7
not at google - send to devlin
That's fine, it... shouldn't be too hard to change. It's basically the weekend though so ...
9 years, 3 months ago (2011-09-02 06:12:13 UTC) #8
not at google - send to devlin
Ok, this is ready for another look. It has changed drastically so there is no ...
9 years, 3 months ago (2011-09-10 19:41:07 UTC) #9
akalin
On 2011/09/10 19:41:07, kalman1 wrote: > Ok, this is ready for another look. > > ...
9 years, 3 months ago (2011-09-13 23:04:44 UTC) #10
akalin
Some initial comments. I suspect you may have to do more refactoring to handle those, ...
9 years, 3 months ago (2011-09-14 05:57:29 UTC) #11
not at google - send to devlin
Most recent version of this patch, uploaded against http://codereview.chromium.org/7891054/ http://codereview.chromium.org/7775008/diff/20003/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): http://codereview.chromium.org/7775008/diff/20003/chrome/browser/extensions/extension_settings.cc#newcode129 chrome/browser/extensions/extension_settings.cc:129: ...
9 years, 3 months ago (2011-09-14 20:23:57 UTC) #12
Ben Olmstead
http://codereview.chromium.org/7775008/diff/27002/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): http://codereview.chromium.org/7775008/diff/27002/chrome/browser/extensions/extension_settings.cc#newcode137 chrome/browser/extensions/extension_settings.cc:137: const ExtensionList* extensions = extension_service_->extensions(); You will also need ...
9 years, 3 months ago (2011-09-14 20:33:24 UTC) #13
akalin
This is looking much better, thanks. Some initial comments, will look more later this afternoon. ...
9 years, 3 months ago (2011-09-14 21:08:52 UTC) #14
not at google - send to devlin
http://codereview.chromium.org/7775008/diff/27002/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): http://codereview.chromium.org/7775008/diff/27002/chrome/browser/extensions/extension_settings.cc#newcode111 chrome/browser/extensions/extension_settings.cc:111: if (storage == NULL) { On 2011/09/14 21:08:53, akalin ...
9 years, 3 months ago (2011-09-14 22:45:04 UTC) #15
akalin
Okay, took a detailed look at pretty much everything except maybe the unit test file. ...
9 years, 3 months ago (2011-09-15 19:56:44 UTC) #16
not at google - send to devlin
Ok, done most things apart from the error propagation from StartSyncing (as I've said in ...
9 years, 3 months ago (2011-09-16 05:18:59 UTC) #17
akalin
Replies to comments, will take another look at new version, too http://codereview.chromium.org/7775008/diff/32002/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): ...
9 years, 3 months ago (2011-09-16 15:36:39 UTC) #18
Ben Olmstead
http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_service.cc File chrome/browser/extensions/extension_service.cc (right): http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_service.cc#newcode653 chrome/browser/extensions/extension_service.cc:653: static void AddAllExtensionIds( Wrap in anonymous namespace. http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_service.h File ...
9 years, 3 months ago (2011-09-16 18:21:43 UTC) #19
akalin
some more comments re. ExtensionSettings. I think this + my replies to your comments are ...
9 years, 3 months ago (2011-09-17 08:44:47 UTC) #20
not at google - send to devlin
http://codereview.chromium.org/7775008/diff/32002/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): http://codereview.chromium.org/7775008/diff/32002/chrome/browser/extensions/extension_settings.cc#newcode25 chrome/browser/extensions/extension_settings.cc:25: sync_processor_(NULL) {} > An object which is constructed/destroyed on ...
9 years, 3 months ago (2011-09-19 07:10:46 UTC) #21
akalin
http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_settings.cc#newcode133 chrome/browser/extensions/extension_settings.cc:133: std::vector<std::string> extension_ids( On 2011/09/19 07:10:47, kalman1 wrote: > On ...
9 years, 3 months ago (2011-09-19 07:49:16 UTC) #22
akalin
> Well, you can turn extension sync and app sync on and off independently. So ...
9 years, 3 months ago (2011-09-19 07:51:24 UTC) #23
not at google - send to devlin
http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_settings.cc File chrome/browser/extensions/extension_settings.cc (right): http://codereview.chromium.org/7775008/diff/42051/chrome/browser/extensions/extension_settings.cc#newcode133 chrome/browser/extensions/extension_settings.cc:133: std::vector<std::string> extension_ids( On 2011/09/19 07:49:16, akalin wrote: > On ...
9 years, 3 months ago (2011-09-19 08:42:19 UTC) #24
not at google - send to devlin
On 2011/09/19 07:51:24, akalin wrote: > > Well, you can turn extension sync and app ...
9 years, 3 months ago (2011-09-19 08:43:15 UTC) #25
akalin
On 2011/09/19 07:10:46, kalman1 wrote: > http://codereview.chromium.org/7775008/diff/32002/chrome/browser/extensions/extension_settings.cc > I don't see why it can't be ...
9 years, 3 months ago (2011-09-19 18:46:16 UTC) #26
akalin
Okay, so how to implement ExtensionSettingsUIWrapper (a sketch): class ExtensionSettingsUIWrapper { public: ExtensionSettingsUIWrapper(<extension settings args>) ...
9 years, 3 months ago (2011-09-19 18:57:57 UTC) #27
akalin
> Doesn't sound hard, but hopefully something for a follow-up patch, this one is > ...
9 years, 3 months ago (2011-09-19 19:00:28 UTC) #28
akalin
Next round of comments http://codereview.chromium.org/7775008/diff/32002/chrome/browser/extensions/syncable_extension_settings_storage.cc File chrome/browser/extensions/syncable_extension_settings_storage.cc (right): http://codereview.chromium.org/7775008/diff/32002/chrome/browser/extensions/syncable_extension_settings_storage.cc#newcode121 chrome/browser/extensions/syncable_extension_settings_storage.cc:121: return; > I looked at ...
9 years, 3 months ago (2011-09-19 19:24:10 UTC) #29
not at google - send to devlin
Thanks for all that. ExtensionSettingsUIWrapper is done; it wasn't identical to what you said but ...
9 years, 3 months ago (2011-09-20 07:59:36 UTC) #30
akalin
Thanks for making the changes. This is looking a lot better! More comments, mostly minor ...
9 years, 3 months ago (2011-09-20 14:53:10 UTC) #31
not at google - send to devlin
I'm going to spend some time syncing this to tip (haven't done so in a ...
9 years, 3 months ago (2011-09-21 00:20:13 UTC) #32
not at google - send to devlin
http://codereview.chromium.org/7775008/diff/63007/chrome/browser/extensions/extension_settings_ui_wrapper.cc File chrome/browser/extensions/extension_settings_ui_wrapper.cc (right): http://codereview.chromium.org/7775008/diff/63007/chrome/browser/extensions/extension_settings_ui_wrapper.cc#newcode30 chrome/browser/extensions/extension_settings_ui_wrapper.cc:30: return core_.get(); On 2011/09/21 00:20:14, kalman1 wrote: > On ...
9 years, 3 months ago (2011-09-21 01:44:00 UTC) #33
akalin
> So as it stands, this patch causes sync to crash. I'll change this to ...
9 years, 3 months ago (2011-09-21 01:51:56 UTC) #34
akalin
Okay, I think this should work. Sorry about this, I know that this part of ...
9 years, 3 months ago (2011-09-21 01:58:41 UTC) #35
akalin
Some more comments. I'll let you implement my suggested fix for the problem you had ...
9 years, 3 months ago (2011-09-21 02:05:56 UTC) #36
not at google - send to devlin
http://codereview.chromium.org/7775008/diff/63007/chrome/browser/extensions/extension_settings_storage_unittest.h File chrome/browser/extensions/extension_settings_storage_unittest.h (right): http://codereview.chromium.org/7775008/diff/63007/chrome/browser/extensions/extension_settings_storage_unittest.h#newcode58 chrome/browser/extensions/extension_settings_storage_unittest.h:58: ExtensionSettings* settings_; On 2011/09/21 02:05:56, akalin wrote: > On ...
9 years, 3 months ago (2011-09-21 03:55:18 UTC) #37
akalin
LGTM after nits below!! Your latest patch set has some files with missing statuses (the ...
9 years, 3 months ago (2011-09-21 05:41:53 UTC) #38
not at google - send to devlin
Thanks Fred. I've synced to tip... I'm having problems running the try bots though. They ...
9 years, 3 months ago (2011-09-21 06:22:41 UTC) #39
akalin
Hunh, those errors are weird. I'll copy your patch set and I'll see if I ...
9 years, 3 months ago (2011-09-21 06:28:22 UTC) #40
akalin
http://codereview.chromium.org/7775008/diff/66058/chrome/chrome_tests.gypi File chrome/chrome_tests.gypi (right): http://codereview.chromium.org/7775008/diff/66058/chrome/chrome_tests.gypi#newcode2327 chrome/chrome_tests.gypi:2327: 'browser/extensions/extension_settings_sync_unittest.cc', this is in browser_tests, which is meant for ...
9 years, 3 months ago (2011-09-21 06:49:09 UTC) #41
akalin
On 2011/09/21 06:49:09, akalin wrote: > http://codereview.chromium.org/7775008/diff/66058/chrome/chrome_tests.gypi > File chrome/chrome_tests.gypi (right): > > http://codereview.chromium.org/7775008/diff/66058/chrome/chrome_tests.gypi#newcode2327 > ...
9 years, 3 months ago (2011-09-21 06:52:52 UTC) #42
akalin
9 years, 3 months ago (2011-09-21 19:08:07 UTC) #43
Committed as 102140.  Yay!

Powered by Google App Engine
This is Rietveld 408576698