RemoteMacViews: Unify views::View to content::WebContentsView interfaces
There exist two interface through which a views::View is stitched to a content::WebContentsView - the ui::Layer is attached via a cr_setParentUiLayer method - accessibility is attached via the accesibilityHostable protocol Lifetimes of the embedding are slightly unclear because the attached WebContentsView may be destroyed the NativeViewHost detaches it. Replace the AccessibilityHostable protocol with a ViewsHostable protocol, and add a C++ interface, ui::ViewsHostableView, which provides a single place through which a views::View and a content::WebContentsView are stitched together - have content::WebContentsViewMac implement ui::ViewsHostableView - have views::NativeWidgetHost implement ui::ViewsHostableView::Host Use this explicit interface to ensure that the views::NativeWidgetHost detaches from the content::WebContentsViewMac before it is destroyed. Additional parameters and method will be added to the ui::ViewsHostableView interface to enable stitching together out-of-process NSViews. R=lgrey TBR=avi (content/ OWNERship) Bug: 821561 Change-Id: Iddc46278cd06b9e27d3f12aa5a9e830273f3b562 Reviewed-on: https://chromium-review.googlesource.com/1252641 Commit-Queue: ccameron <ccameron@chromium.org> Reviewed-by:Leonard Grey <lgrey@chromium.org> Cr-Commit-Position: refs/heads/master@{#595521}
Showing
Please register or sign in to comment