Chromium Code Reviews
Help | Chromium Project | Sign in
(6)

Issue 3210007: Add support for a "split" incognito behavior for extensions. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
4 years, 9 months ago by Matt Perry
Modified:
4 years ago
Reviewers:
Aaron Boodman
CC:
chromium-reviews, cbentzel+watch_chromium.org, ben+cc_chromium.org, Erik does not do reviews, brettw-cc_chromium.org, Aaron Boodman, arv, pam+watch_chromium.org, Paweł Hajdan Jr., darin-cc_chromium.org, John Grabowski
Visibility:
Public.

Description

Add support for a "split" incognito behavior for extensions. - On by default for apps, off by default for extensions. - Split mode means "run incognito extensions in a separate process if the user says OK, and the two processes can only see their own profile." - Spanning mode is what we have now, and means "run a single extension process, but allow it to access both profiles if the user says OK." BUG=49232 BUG=49114 TEST=extensions still work in incognito when you check "Allow in Incognito". Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=58033

Patch Set 1 #

Patch Set 2 : didn't upload before #

Total comments: 20

Patch Set 3 : comments address #

Patch Set 4 : latest #

Unified diffs Side-by-side diffs Delta from patch set Stats (+955 lines, -399 lines) Patch
M chrome/app/generated_resources.grd View 1 2 3 2 chunks +12 lines, -0 lines 0 comments Download
M chrome/browser/automation/automation_provider_win.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/browser.cc View 1 2 3 1 chunk +8 lines, -7 lines 0 comments Download
M chrome/browser/cocoa/extensions/extension_popup_controller_unittest.mm View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/dom_ui/dom_ui_factory.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_accessibility_api.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_apitest.h View 1 2 2 chunks +5 lines, -0 lines 0 comments Download
M chrome/browser/extensions/extension_apitest.cc View 1 2 2 chunks +7 lines, -1 line 0 comments Download
M chrome/browser/extensions/extension_bookmark_manager_api.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_bookmarks_module.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_browser_event_router.cc View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_cookies_api.cc View 1 2 3 chunks +4 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_cookies_helpers.cc View 1 chunk +4 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_cookies_unittest.cc View 1 chunk +3 lines, -3 lines 0 comments Download
M chrome/browser/extensions/extension_devtools_bridge.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_function.h View 1 chunk +4 lines, -1 line 0 comments Download
M chrome/browser/extensions/extension_function_dispatcher.cc View 3 chunks +11 lines, -14 lines 0 comments Download
M chrome/browser/extensions/extension_history_api.cc View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_idle_api.cc View 1 chunk +1 line, -4 lines 0 comments Download
M chrome/browser/extensions/extension_incognito_apitest.cc View 1 chunk +25 lines, -0 lines 0 comments Download
M chrome/browser/extensions/extension_menu_manager.cc View 1 chunk +1 line, -2 lines 0 comments Download
M chrome/browser/extensions/extension_menu_manager_unittest.cc View 1 2 2 chunks +2 lines, -6 lines 0 comments Download
M chrome/browser/extensions/extension_message_service.h View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_message_service.cc View 1 4 chunks +19 lines, -11 lines 0 comments Download
M chrome/browser/extensions/extension_messages_apitest.cc View 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/browser/extensions/extension_omnibox_api.cc View 4 chunks +4 lines, -8 lines 0 comments Download
M chrome/browser/extensions/extension_popup_api.cc View 1 chunk +1 line, -4 lines 0 comments Download
M chrome/browser/extensions/extension_process_manager.h View 3 chunks +20 lines, -19 lines 0 comments Download
M chrome/browser/extensions/extension_process_manager.cc View 1 2 10 chunks +154 lines, -14 lines 0 comments Download
M chrome/browser/extensions/extension_process_manager_unittest.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_protocols.cc View 1 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/extensions/extension_sidebar_api.cc View 1 chunk +1 line, -2 lines 0 comments Download
M chrome/browser/extensions/extension_ui_unittest.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extensions_service.cc View 1 2 3 3 chunks +8 lines, -3 lines 0 comments Download
M chrome/browser/extensions/extensions_ui.h View 2 chunks +8 lines, -4 lines 0 comments Download
M chrome/browser/extensions/extensions_ui.cc View 1 2 7 chunks +35 lines, -13 lines 0 comments Download
M chrome/browser/net/chrome_url_request_context.h View 1 2 4 chunks +17 lines, -2 lines 0 comments Download
M chrome/browser/net/chrome_url_request_context.cc View 1 2 7 chunks +31 lines, -11 lines 0 comments Download
M chrome/browser/profile.cc View 1 2 6 chunks +16 lines, -2 lines 0 comments Download
M chrome/browser/profile_impl.cc View 1 2 3 5 chunks +31 lines, -1 line 0 comments Download
M chrome/browser/resources/extensions_ui.html View 3 chunks +13 lines, -7 lines 0 comments Download
M chrome/browser/task_manager_resource_providers.cc View 1 2 2 chunks +25 lines, -5 lines 0 comments Download
M chrome/browser/views/location_bar/icon_label_bubble_view.h View 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/browser/views/location_bar/icon_label_bubble_view.cc View 3 chunks +4 lines, -3 lines 0 comments Download
M chrome/browser/views/location_bar/location_bar_view.h View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/views/location_bar/location_bar_view.cc View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/common/extensions/api/extension_api.json View 1 2 3 1 chunk +3 lines, -3 lines 0 comments Download
M chrome/common/extensions/docs/experimental.sidebar.html View 1 chunk +1 line, -1 line 0 comments Download
M chrome/common/extensions/docs/extension.html View 4 chunks +7 lines, -7 lines 0 comments Download
M chrome/common/extensions/docs/manifest.html View 3 chunks +33 lines, -0 lines 0 comments Download
M chrome/common/extensions/docs/static/manifest.html View 2 chunks +31 lines, -0 lines 0 comments Download
M chrome/common/extensions/extension.h View 1 2 3 2 chunks +5 lines, -0 lines 0 comments Download
M chrome/common/extensions/extension.cc View 1 2 3 2 chunks +20 lines, -0 lines 0 comments Download
M chrome/common/extensions/extension_constants.h View 1 2 3 1 chunk +184 lines, -178 lines 0 comments Download
M chrome/common/extensions/extension_constants.cc View 1 2 3 3 chunks +5 lines, -0 lines 0 comments Download
M chrome/common/render_messages_internal.h View 1 2 3 1 chunk +4 lines, -3 lines 0 comments Download
M chrome/renderer/extensions/event_bindings.cc View 1 chunk +3 lines, -3 lines 0 comments Download
M chrome/renderer/extensions/extension_process_bindings.h View 1 chunk +5 lines, -3 lines 0 comments Download
M chrome/renderer/extensions/extension_process_bindings.cc View 6 chunks +23 lines, -9 lines 0 comments Download
M chrome/renderer/mock_render_thread.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/renderer/render_thread.h View 1 2 4 chunks +7 lines, -5 lines 0 comments Download
M chrome/renderer/render_thread.cc View 1 2 3 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/renderer/resources/extension_process_bindings.js View 2 chunks +2 lines, -1 line 0 comments Download
M chrome/renderer/resources/renderer_extension_bindings.js View 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/renderer/user_script_slave.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/test/data/extensions/api_test/incognito/apis/background.html View 3 chunks +3 lines, -4 lines 0 comments Download
A chrome/test/data/extensions/api_test/incognito/split/background.html View 1 2 1 chunk +89 lines, -0 lines 0 comments Download
A chrome/test/data/extensions/api_test/incognito/split/manifest.json View 1 2 1 chunk +8 lines, -0 lines 0 comments Download
M chrome/test/data/extensions/ui/create_extension_detail_value_expected_output/good-extension1.json View 1 chunk +4 lines, -2 lines 0 comments Download
M chrome/test/data/extensions/ui/create_extension_detail_value_expected_output/good-extension2.json View 1 chunk +4 lines, -2 lines 0 comments Download
Trybot results:
Commit: CQ not working?

Messages

Total messages: 5 (0 generated)
Matt Perry
Still working on api tests.
4 years, 9 months ago (2010-08-27 00:25:09 UTC) #1
Aaron Boodman
That was exhausting. Strong work. http://codereview.chromium.org/3210007/diff/2001/3001 File chrome/app/generated_resources.grd (right): http://codereview.chromium.org/3210007/diff/2001/3001#newcode3316 chrome/app/generated_resources.grd:3316: Incognito Extension: <ph name="EXTENSION_NAME">$1<ex>Sample ...
4 years, 9 months ago (2010-08-27 18:53:52 UTC) #2
Matt Perry
updated http://codereview.chromium.org/3210007/diff/2001/3001 File chrome/app/generated_resources.grd (right): http://codereview.chromium.org/3210007/diff/2001/3001#newcode3316 chrome/app/generated_resources.grd:3316: Incognito Extension: <ph name="EXTENSION_NAME">$1<ex>Sample Extension</ex></ph> On 2010/08/27 18:53:53, ...
4 years, 9 months ago (2010-08-27 22:38:07 UTC) #3
Matt Perry
updated
4 years, 9 months ago (2010-08-27 22:38:09 UTC) #4
Aaron Boodman
4 years, 9 months ago (2010-08-27 22:47:52 UTC) #5
lgtm.

good luck w/ the landing.

http://codereview.chromium.org/3210007/diff/2001/3030
File chrome/browser/extensions/extensions_service.cc (right):

http://codereview.chromium.org/3210007/diff/2001/3030#newcode1377
chrome/browser/extensions/extensions_service.cc:1377: // Unload the entire
extension. We want it to be in a consistent state:
On 2010/08/27 22:38:08, Matt Perry wrote:
> On 2010/08/27 18:53:53, Aaron Boodman wrote:
> > Don't we only want to do this if the extension is spanning or it is split
and
> > profile_ == source?
> 
> AFAICT, this message is only sent when the process crashes. It seems
reasonable
> to unload the extension even if its incognito process crashes. What do you
> think?

Oh, that makes sense. n/m
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld ec887be