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

Issue 1162053003: Move BrowserPluginDelegate's lifetime mgmt out of content/ (Closed)

Created:
5 years, 6 months ago by lazyboy
Modified:
5 years, 6 months ago
CC:
arv+watch_chromium.org, chromium-apps-reviews_chromium.org, chromium-reviews, creis+watch_chromium.org, darin-cc_chromium.org, extensions-reviews_chromium.org, jam, mkwst+moarreviews-renderer_chromium.org, mlamouri+watch-content_chromium.org, nasko+codewatch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Move BrowserPluginDelegate's lifetime mgmt out of content/ This CL makes BrowserPlugin not own BPDelegate (GuestViewContainer) anymore. BrowserPluginDelegate's lifetime has been tied to garbage collection of the shadow root HTML element that contains the plugin. For example, for <webview>, this is the <webview> element. Before registering BPDelegate to GC, there's a brief period while BPDelegate is not owned by anyone directly, this case is covered with the static PostTask that deletes the delegate if we did not tie it to GC (UpdateInternalInstanceIdAndBindDelegateToGC()). To make <webview> run without BrowserPlugin, we need to manage GuestViewContainer's (which is a BPDelegate) lifetime out of content/. BUG=330264 Test=None, internal change only. Committed: https://crrev.com/cb6ba5c2ad69bf9daf896e5d3cd0c252c0ce6da3 Cr-Commit-Position: refs/heads/master@{#333552}

Patch Set 1 #

Patch Set 2 : for trybot run #

Patch Set 3 : Clean up for review. #

Total comments: 9

Patch Set 4 : make dtor protected #

Total comments: 16

Patch Set 5 : upload correct patch this time #

Total comments: 16

Patch Set 6 : pass one #

Patch Set 7 : pass two #

Patch Set 8 : . #

Total comments: 4

Patch Set 9 : address nits #

Patch Set 10 : Sync @tott #

Unified diffs Side-by-side diffs Delta from patch set Stats (+141 lines, -44 lines) Patch
M components/guest_view/renderer/guest_view_container.h View 1 2 3 4 5 6 7 8 4 chunks +13 lines, -1 line 0 comments Download
M components/guest_view/renderer/guest_view_container.cc View 1 2 3 4 5 3 chunks +38 lines, -8 lines 0 comments Download
M content/public/renderer/browser_plugin_delegate.h View 1 2 3 4 5 6 3 chunks +6 lines, -4 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin.h View 1 2 3 4 5 6 3 chunks +5 lines, -4 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin.cc View 1 2 3 4 5 6 6 chunks +17 lines, -14 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin_manager.h View 1 2 3 4 5 6 1 chunk +5 lines, -3 lines 0 comments Download
M content/renderer/browser_plugin/browser_plugin_manager.cc View 1 2 3 4 5 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/render_frame_impl.cc View 1 2 3 4 5 6 7 8 9 2 chunks +4 lines, -6 lines 0 comments Download
M extensions/renderer/guest_view/extensions_guest_view_container.h View 1 2 3 4 5 2 chunks +6 lines, -1 line 0 comments Download
M extensions/renderer/guest_view/extensions_guest_view_container.cc View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
M extensions/renderer/guest_view/guest_view_internal_custom_bindings.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M extensions/renderer/guest_view/guest_view_internal_custom_bindings.cc View 1 2 3 4 5 6 7 8 2 chunks +27 lines, -0 lines 0 comments Download
M extensions/renderer/guest_view/mime_handler_view/mime_handler_view_container.h View 1 2 3 2 chunks +3 lines, -1 line 0 comments Download
M extensions/renderer/resources/guest_view/guest_view_container.js View 2 2 chunks +9 lines, -0 lines 0 comments Download

Messages

Total messages: 19 (4 generated)
lazyboy
5 years, 6 months ago (2015-06-05 14:38:05 UTC) #2
Fady Samuel
https://chromiumcodereview.appspot.com/1162053003/diff/40001/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (left): https://chromiumcodereview.appspot.com/1162053003/diff/40001/content/renderer/browser_plugin/browser_plugin.cc#oldcode64 content/renderer/browser_plugin/browser_plugin.cc:64: scoped_ptr<BrowserPluginDelegate> delegate) Why did you make this change? https://chromiumcodereview.appspot.com/1162053003/diff/40001/content/renderer/browser_plugin/browser_plugin.cc ...
5 years, 6 months ago (2015-06-05 15:10:42 UTC) #3
lazyboy
https://chromiumcodereview.appspot.com/1162053003/diff/40001/components/guest_view/renderer/guest_view_container.h File components/guest_view/renderer/guest_view_container.h (right): https://chromiumcodereview.appspot.com/1162053003/diff/40001/components/guest_view/renderer/guest_view_container.h#newcode65 components/guest_view/renderer/guest_view_container.h:65: void WillDestroy() final; The chosen name here is ambiguous, ...
5 years, 6 months ago (2015-06-05 16:56:55 UTC) #4
Fady Samuel
https://codereview.chromium.org/1162053003/diff/60001/components/guest_view/renderer/guest_view_container.cc File components/guest_view/renderer/guest_view_container.cc (right): https://codereview.chromium.org/1162053003/diff/60001/components/guest_view/renderer/guest_view_container.cc#newcode84 components/guest_view/renderer/guest_view_container.cc:84: set in_destruction_ to true here. https://codereview.chromium.org/1162053003/diff/60001/content/renderer/browser_plugin/browser_plugin.cc File content/renderer/browser_plugin/browser_plugin.cc (right): ...
5 years, 6 months ago (2015-06-05 17:31:13 UTC) #5
Fady Samuel
https://codereview.chromium.org/1162053003/diff/80001/components/guest_view/renderer/guest_view_container.cc File components/guest_view/renderer/guest_view_container.cc (right): https://codereview.chromium.org/1162053003/diff/80001/components/guest_view/renderer/guest_view_container.cc#newcode59 components/guest_view/renderer/guest_view_container.cc:59: if (element_instance_id() != guest_view::kInstanceIDNone) Move all work out of ...
5 years, 6 months ago (2015-06-05 18:52:33 UTC) #6
lazyboy
https://chromiumcodereview.appspot.com/1162053003/diff/60001/components/guest_view/renderer/guest_view_container.cc File components/guest_view/renderer/guest_view_container.cc (right): https://chromiumcodereview.appspot.com/1162053003/diff/60001/components/guest_view/renderer/guest_view_container.cc#newcode84 components/guest_view/renderer/guest_view_container.cc:84: On 2015/06/05 17:31:12, Fady Samuel wrote: > set in_destruction_ ...
5 years, 6 months ago (2015-06-05 21:24:01 UTC) #7
Fady Samuel
lgtm + nit https://chromiumcodereview.appspot.com/1162053003/diff/140001/components/guest_view/renderer/guest_view_container.h File components/guest_view/renderer/guest_view_container.h (right): https://chromiumcodereview.appspot.com/1162053003/diff/140001/components/guest_view/renderer/guest_view_container.h#newcode38 components/guest_view/renderer/guest_view_container.h:38: void DidDestroyElement() final; Does this need ...
5 years, 6 months ago (2015-06-05 22:12:47 UTC) #8
lazyboy
https://chromiumcodereview.appspot.com/1162053003/diff/140001/components/guest_view/renderer/guest_view_container.h File components/guest_view/renderer/guest_view_container.h (right): https://chromiumcodereview.appspot.com/1162053003/diff/140001/components/guest_view/renderer/guest_view_container.h#newcode38 components/guest_view/renderer/guest_view_container.h:38: void DidDestroyElement() final; On 2015/06/05 22:12:46, Fady Samuel wrote: ...
5 years, 6 months ago (2015-06-05 22:26:15 UTC) #9
lazyboy
+jochen for ONWERS of: content/public/renderer/browser_plugin_delegate.h and content/renderer/render_frame_impl.cc
5 years, 6 months ago (2015-06-05 23:09:29 UTC) #11
jochen (gone - plz use gerrit)
lgtm btw, it looks like the browser plugin stuff could be entirely moved to a ...
5 years, 6 months ago (2015-06-08 09:37:20 UTC) #12
lazyboy
On 2015/06/08 09:37:20, jochen wrote: > lgtm > > btw, it looks like the browser ...
5 years, 6 months ago (2015-06-09 18:05:58 UTC) #13
Fady Samuel
On 2015/06/09 18:05:58, lazyboy wrote: > On 2015/06/08 09:37:20, jochen wrote: > > lgtm > ...
5 years, 6 months ago (2015-06-09 18:51:50 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1162053003/180001
5 years, 6 months ago (2015-06-09 19:27:43 UTC) #17
commit-bot: I haz the power
Committed patchset #10 (id:180001)
5 years, 6 months ago (2015-06-09 19:35:12 UTC) #18
commit-bot: I haz the power
5 years, 6 months ago (2015-06-09 19:35:51 UTC) #19
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/cb6ba5c2ad69bf9daf896e5d3cd0c252c0ce6da3
Cr-Commit-Position: refs/heads/master@{#333552}

Powered by Google App Engine
This is Rietveld 408576698