DescriptionOilpan: simplify plugin container finalization.
Simplify the finalization of WebPluginContainerImpl by registering a
prefinalizer for it. By doing so, we can let go of the LocalFrame
registration scheme currently used -- a scheme needed to ensure
that plugin containers could safely dispose of their plugin while
the owning LocalFrame was still alive and accessible. That
mechanism predated prefinalizer/eager finalization support. But
with it well in place, we can make good use of it here -- the
prefinalizer disposing of the plugin container while the LocalFrame
is accessible.
Notice that plugin containers (PluginView widgets) still need to
be explicitly disposed of in places. Their plugins will have to
be summarily & predictably destroyed at those points, something
that cannot be left until the next GC (whenever it goes ahead.)
R=dcheng
BUG=340522
Committed: https://crrev.com/bc3e1557791eb247d7bb820e1f8e96a55475119e
Cr-Commit-Position: refs/heads/master@{#365792}
Patch Set 1 #Patch Set 2 : rebase #Patch Set 3 : reinstate disconnectConnectFrame() ifdef #Patch Set 4 : remove unused pluginFrame() helper #Patch Set 5 : simplify away disconnectContentFrame override #Messages
Total messages: 29 (15 generated)
|