New issue
Advanced search Search tips

Issue 911161 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Bug

Blocking:
issue 659750



Sign in to add a comment

Move frame-based MimeHandlerViewGuest attach logic into content layer

Project Member Reported by ekaramad@chromium.org, Dec 3

Issue description

The logic currently is based on navigating the current frame (or proxy) to about:blank and then attaching WebContents. There is many subtle issues such as supporting BeforeUnload. Some have been resolved using new public content API. However, the best solution is to move all the logic inside content and expose a single asynchronous attach API for guests such as MimeHandlerViewGuest. 
 
Blocking: 659750
Project Member

Comment 2 by bugdroid1@chromium.org, Jan 9

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5bb223676defeba9c44a5ce42460c86e24561e73

commit 5bb223676defeba9c44a5ce42460c86e24561e73
Author: Ehsan Karamad <ekaramad@chromium.org>
Date: Wed Jan 09 15:53:27 2019

[GuestView] - Introduce MimeHandlerViewAttachHelper

This CL is for the most part a mechanical change which extracts almost
all the frame-based MimeHandlerView code out of
ExtensionsGuestViewMessageFilter. This change both removes the current
clutter form EGVMF as well as fixesa race introduced when the
frame-based logic was added to EGVMF. The reason for the race was that
EGVMF is destroyed on IO thread but all the access to it (for
frame-based MHV) are from UI.

TBR=avi@chromium.org,lazyboy@chromium.org

Bug: 659750, 896679, 911161, 918861
Change-Id: I6474b870e4d56daa68be03637bb633665d9f9dda
Reviewed-on: https://chromium-review.googlesource.com/c/1401451
Commit-Queue: Ehsan Karamad <ekaramad@chromium.org>
Reviewed-by: James MacLean <wjmaclean@chromium.org>
Reviewed-by: Ehsan Karamad <ekaramad@chromium.org>
Cr-Commit-Position: refs/heads/master@{#621155}
[modify] https://crrev.com/5bb223676defeba9c44a5ce42460c86e24561e73/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/5bb223676defeba9c44a5ce42460c86e24561e73/extensions/browser/BUILD.gn
[modify] https://crrev.com/5bb223676defeba9c44a5ce42460c86e24561e73/extensions/browser/guest_view/extensions_guest_view_message_filter.cc
[modify] https://crrev.com/5bb223676defeba9c44a5ce42460c86e24561e73/extensions/browser/guest_view/extensions_guest_view_message_filter.h
[add] https://crrev.com/5bb223676defeba9c44a5ce42460c86e24561e73/extensions/browser/guest_view/mime_handler_view/mime_handler_view_attach_helper.cc
[add] https://crrev.com/5bb223676defeba9c44a5ce42460c86e24561e73/extensions/browser/guest_view/mime_handler_view/mime_handler_view_attach_helper.h

Sign in to add a comment