New issue
Advanced search Search tips

Issue 647249 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 609236

Blocking:
issue 412373
issue 550215
issue 617728
issue 655063



Sign in to add a comment

Implement Drag-and-Drop for OOPIF

Project Member Reported by wjmaclean@chromium.org, Sep 15 2016

Issue description

Currently drag-and-drop is not supported for either OOPIF, or WebView running on OOPIF. This is a tracking bug for the implementation.

Speculatively targeting M56.
 
Cc: alex...@chromium.org
I wonder if we could add an UMA to see which "sites" are involved in broken cross-process drag&drop.  This might help quantify the frequency of  issue 655063  (drag&drop VS Hangouts extension), but also might help find out about other extensions that are affected by broken cross-process drag&drop.

I am not sure if "site" (i.e. chrome-extension://guid) is considered PII (OTOH, UMA just gathers aggregate data that is non-attributable to individual users so maybe this is okay).

I am also not sure if there is a good place in the code where we could detect 1) that we are about to hit the broken cross-process drag&drop scenario and 2) be able to get the "site" of the drag&drop target and/or source.

Comment 2 by nick@chromium.org, Oct 21 2016

UMA can't deal with arbitrary strings as buckets. Rappor can and the PII considerations are solved there. The catch with rappor is that you have to have a candidate list server side, and you can't recover strings otherwise.

There is one existing place where we log extension IDs to rappor:

https://cs.chromium.org/chromium/src/chrome/browser/extensions/chrome_extension_web_contents_observer.cc?q=Extensions.AffectedByIsolateExtensions&sq=package:chromium&l=226&dr=C

It's a bit of work to add another; but with some work we definitely we could (and I think we should) make it as easy to log an extension URL as it is to log an UMA. I can help walk you through the google3 side of this if interested.

Comment 3 by creis@chromium.org, Oct 25 2016

Blocking: 655063
Blockedon: 617728
Project Member

Comment 5 by bugdroid1@chromium.org, Nov 3 2016

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

commit f1cf6923ce29e2995e7deefa654d299fd5512d28
Author: lukasza <lukasza@chromium.org>
Date: Thu Nov 03 00:21:43 2016

Initial browser tests for OOPIF support for drag-n-drop.

This CL adds a single test - dragging and dropping a piece of text from
outside of the browser into a cross-site frame.  The test expectedly
fails for now in --site-per-process mode (the CL adds an exception
in site-per-process.content_browsertests.filter).

DOMMessageQueue
===============

The new test verifies whether appropriate javascript events have fired.
This is done by DOMMessageQueue, which has been tweaked slightly to
target only a specified WebContents and detect renderer crashes.

The modified DOMMessageQueue makes the old DOMOperationObserver
obsolete, so the CL deletes the old class and switches its users
to use DOMMessageQueue instead.

DomAutomationController::SendMsg was refusing to serialize and send
javascript objects.  This restriction has been lifted (any object
type can be sent, as long as it can be serialized to JSON).

Simulation of drag-and-drop
===========================

The CL introduces a DragAndDropSimulator that helps with simulating
drag-and-drop events for WebContents.  The simulator supports only
the minimum functionality required to enable the first OOPIF test:

- Currently the simulator only supports drag-enter (dragging something
  from outside the browser into WebContenst) and drop events.

- Currently the simulator only works when WebContents is built on top
  of aura UI abstraction/platform.

Test pages
==========

The CL provides a main test page (content/test/data/drag_and_drop/page.html)
which enables:

- Easy locating of subframes (which are positioned at fixed coordinates).

- Easy replacing of subframe contents, which are specified by URL query.

  - This helps with testing various drag-and-drop scenarios (e.g. using
    different subframes for testing drop with drop_target.html OR for
    testing drag-start with image_source.html).

  - This also helps exercise various OOPIF scenarios (e.g. using
    subframes that are same-site or cross-site).

BUG= 647249 

Review-Url: https://codereview.chromium.org/2453693003
Cr-Commit-Position: refs/heads/master@{#429472}

[add] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/browser/web_contents/drag_and_drop_browsertest.cc
[modify] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/public/test/browser_test_utils.cc
[modify] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/public/test/browser_test_utils.h
[modify] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/renderer/dom_automation_controller.cc
[modify] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/test/BUILD.gn
[add] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/test/data/drag_and_drop/drop_target.html
[add] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/test/data/drag_and_drop/event_monitoring.js
[add] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/test/data/drag_and_drop/image_source.html
[add] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/content/test/data/drag_and_drop/page.html
[modify] https://crrev.com/f1cf6923ce29e2995e7deefa654d299fd5512d28/testing/buildbot/filters/site-per-process.content_browsertests.filter

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 8 2016

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

commit 6ef5a7989fc1b10c8b642863b74714585ebe845d
Author: paulmeyer <paulmeyer@chromium.org>
Date: Tue Nov 08 20:33:58 2016

Drag-and-drop: Move startDrag out of WebView/RenderView.

This patch is part of the effort to transition D&D functions to all be
widget-based instead of view-based. This is necessary in order to allow
D&D to work with out-of-process iframes.

BUG= 647249 ,  655063 

TBR=tommycli@chromium.org

Review-Url: https://codereview.chromium.org/2475443003
Cr-Commit-Position: refs/heads/master@{#430701}

[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/plugins/renderer/webview_plugin.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/plugins/renderer/webview_plugin.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/test_runner/web_view_test_client.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/test_runner/web_view_test_client.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/test_runner/web_view_test_proxy.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/test_runner/web_widget_test_client.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/test_runner/web_widget_test_client.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/components/test_runner/web_widget_test_proxy.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/browser/renderer_host/render_view_host_impl.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/browser/renderer_host/render_widget_host_delegate.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/browser/renderer_host/render_widget_host_delegate.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/public/browser/render_widget_host.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/renderer/render_view_impl.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/renderer/render_view_impl.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/renderer/render_widget.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/renderer/render_widget.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/renderer/render_widget_owner_delegate.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/content/test/test_render_view_host.cc
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/third_party/WebKit/Source/web/ChromeClientImpl.cpp
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/third_party/WebKit/public/web/WebViewClient.h
[modify] https://crrev.com/6ef5a7989fc1b10c8b642863b74714585ebe845d/third_party/WebKit/public/web/WebWidgetClient.h

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 12 2016

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

commit 90f6c31d8095307a275eec336423e749ae6af956
Author: paulmeyer <paulmeyer@chromium.org>
Date: Sat Nov 12 00:17:59 2016

Drag-and-drop: Move DragEnter, DragOver, DragLeave, and DragDrop out of
WebView/RenderView.

This patch is part of the effort to transition D&D functions to all be
widget-based instead of view-based. This is necessary in order to allow
D&D to work with out-of-process iframes.

BUG= 647249 ,  655063 

Review-Url: https://codereview.chromium.org/2485693003
Cr-Commit-Position: refs/heads/master@{#431692}

[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/chrome/browser/ui/webui/webui_webview_browsertest.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/components/test_runner/event_sender.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/components/test_runner/event_sender.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/browser_plugin/browser_plugin_guest.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/renderer_host/render_view_host_impl.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/renderer_host/render_view_host_unittest.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/web_contents/web_contents_view_android.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/web_contents/web_contents_view_aura.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/browser/web_contents/web_drag_dest_mac.mm
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/public/browser/render_view_host.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/public/browser/render_widget_host.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/renderer/render_view_impl.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/renderer/render_view_impl.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/renderer/render_widget.cc
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/content/renderer/render_widget.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/core/page/DragController.cpp
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/BUILD.gn
[add] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebFrameWidgetBase.cpp
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebFrameWidgetBase.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebFrameWidgetImpl.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebViewFrameWidget.cpp
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebViewFrameWidget.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/Source/web/tests/WebViewTest.cpp
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/public/web/WebFrameWidget.h
[modify] https://crrev.com/90f6c31d8095307a275eec336423e749ae6af956/third_party/WebKit/public/web/WebView.h

Project Member

Comment 8 by bugdroid1@chromium.org, Nov 15 2016

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

commit 7f6f1d4f12b96484ad238b5b0be7fd31d89e6906
Author: paulmeyer <paulmeyer@chromium.org>
Date: Tue Nov 15 00:00:27 2016

Drag-and-drop: Move updateDragCursor to RenderWidgetHost.

This patch is part of the effort to transition D&D functions to all be
widget-based instead of view-based. This is necessary in order to allow
D&D to work with out-of-process iframes.

BUG= 647249 ,  655063 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2503563002
Cr-Commit-Position: refs/heads/master@{#431997}

[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/browser_plugin/browser_plugin_embedder.cc
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/browser_plugin/browser_plugin_embedder.h
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/renderer_host/render_view_host_impl.h
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/renderer_host/render_widget_host_delegate.cc
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/renderer_host/render_widget_host_delegate.h
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/7f6f1d4f12b96484ad238b5b0be7fd31d89e6906/content/browser/web_contents/web_contents_impl.h

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 15 2016

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

commit 8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5
Author: paulmeyer <paulmeyer@chromium.org>
Date: Tue Nov 15 05:12:21 2016

Drag-and-drop: Move dragSourceEndedAt and dragSourceSystemDragEnded out
of WebView/RenderView.

This patch is part of the effort to transition D&D functions to all be
widget-based instead of view-based. This is necessary in order to allow
D&D to work with out-of-process iframes.

BUG= 647249 ,  655063 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2501213002
Cr-Commit-Position: refs/heads/master@{#432111}

[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/components/plugins/renderer/webview_plugin.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/components/test_runner/event_sender.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/browser_plugin/browser_plugin_guest.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/frame_host/interstitial_page_impl.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/renderer_host/render_view_host_impl.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/browser/web_contents/web_contents_view_android.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/public/browser/render_view_host.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/public/browser/render_widget_host.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/renderer/render_view_impl.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/renderer/render_view_impl.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/renderer/render_widget.cc
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/content/renderer/render_widget.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/third_party/WebKit/Source/web/WebFrameWidgetBase.cpp
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/third_party/WebKit/Source/web/WebFrameWidgetBase.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/third_party/WebKit/public/web/WebFrameWidget.h
[modify] https://crrev.com/8fc8ea94ab9b37dc2fab2beeb6bff3180685d2d5/third_party/WebKit/public/web/WebView.h

Project Member

Comment 10 by bugdroid1@chromium.org, Nov 16 2016

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

commit 67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead
Author: lukasza <lukasza@chromium.org>
Date: Wed Nov 16 00:27:52 2016

Browser test for starting a drag-and-drop out of an OOPIF.

BUG= 647249 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2478583005
Cr-Commit-Position: refs/heads/master@{#432314}

[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/browser/ui/views/OWNERS
[add] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/browser/ui/views/drag_and_drop_interactive_uitest.cc
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/test/BUILD.gn
[rename] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/test/data/drag_and_drop/drop_target.html
[rename] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/test/data/drag_and_drop/event_monitoring.js
[rename] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/test/data/drag_and_drop/image_source.html
[add] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/chrome/test/data/drag_and_drop/page.html
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/browser/frame_host/frame_tree_browsertest.cc
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/browser/frame_host/navigation_controller_impl_browsertest.cc
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/browser/frame_host/render_frame_host_manager_browsertest.cc
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/browser/site_per_process_browsertest.cc
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/browser/top_document_isolation_browsertest.cc
[delete] https://crrev.com/4554b46f099cc837d4f5aa574a67541eccc0f150/content/browser/web_contents/drag_and_drop_browsertest.cc
[rename] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/public/test/test_frame_navigation_observer.cc
[rename] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/public/test/test_frame_navigation_observer.h
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/test/BUILD.gn
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/content/test/content_browser_test_utils_internal.cc
[delete] https://crrev.com/4554b46f099cc837d4f5aa574a67541eccc0f150/content/test/data/drag_and_drop/page.html
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/testing/buildbot/chromium.fyi.json
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/testing/buildbot/filters/BUILD.gn
[modify] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/testing/buildbot/filters/site-per-process.content_browsertests.filter
[add] https://crrev.com/67fdcaf94a4f3c647aef1ce6f82e88eb0ccfbead/testing/buildbot/filters/site-per-process.interactive_ui_tests.filter

Project Member

Comment 11 by bugdroid1@chromium.org, Nov 16 2016

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

commit f28f069c99a5e92ff19cf327ea3642d650411035
Author: lukasza <lukasza@chromium.org>
Date: Wed Nov 16 17:05:52 2016

Parameterizing tests to cover cross-site and same-site subframes.

BUG= 647249 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2489853004
Cr-Commit-Position: refs/heads/master@{#432525}

[modify] https://crrev.com/f28f069c99a5e92ff19cf327ea3642d650411035/chrome/browser/ui/views/drag_and_drop_interactive_uitest.cc

Project Member

Comment 12 by bugdroid1@chromium.org, Nov 17 2016

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

commit c82b174cd84e9749ec642bfd5bc7805a41d6af0b
Author: paulmeyer <paulmeyer@chromium.org>
Date: Thu Nov 17 01:45:37 2016

Drag-and-drop: Target drag messages to specific RenderWidgets.

This patch allows drag messages (like dragEnter, dragOver, dragEnd,
etc.) to be routed to the specific RenderWidgets they affect (rather
than always to the main frame widget). This is part of an ongoing
effort to allow D&D to work with out-of-process iframes.

BUG= 647249 ,  655063 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2505113002
Cr-Commit-Position: refs/heads/master@{#432688}

[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/browser_plugin/browser_plugin_guest.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/frame_host/interstitial_page_impl.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/renderer_host/render_view_host_delegate_view.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/renderer_host/render_view_host_unittest.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_android.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_android.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_aura.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_aura.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_child_frame.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_child_frame.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_guest.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_guest.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_mac.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_mac.mm
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_mus.cc
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/browser/web_contents/web_contents_view_mus.h
[modify] https://crrev.com/c82b174cd84e9749ec642bfd5bc7805a41d6af0b/content/public/browser/render_widget_host.h

Project Member

Comment 13 by bugdroid1@chromium.org, Nov 17 2016

Project Member

Comment 14 by bugdroid1@chromium.org, Nov 17 2016

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

commit 0c58c371878e696f904efd8e13886b23abd41eea
Author: Paul Meyer <paulmeyer@chromium.org>
Date: Thu Nov 17 22:59:51 2016

Drag-and-drop: Target drag messages (the sequel).

This patch follows up on https://codereview.chromium.org/2505113002/,
completing drag-and-drop targeting in a few remaining places, such as in
Mac-specific code as well as in WebContentsImpl::SystemDragEnded(). This
is part of an ongoing effort to allow D&D to work with out-of-process
iframes.

BUG= 647249 ,  655063 
R=avi@chromium.org, dcheng@chromium.org

Review URL: https://codereview.chromium.org/2509933002 .

Cr-Commit-Position: refs/heads/master@{#433003}

[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_contents_view_aura.cc
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_contents_view_guest.cc
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_contents_view_mac.mm
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_drag_dest_mac.h
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_drag_dest_mac.mm
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_drag_source_mac.h
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_drag_source_mac.mm
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/browser/web_contents/web_drag_source_mac_unittest.mm
[modify] https://crrev.com/0c58c371878e696f904efd8e13886b23abd41eea/content/public/browser/web_contents.h

Project Member

Comment 15 by bugdroid1@chromium.org, Nov 18 2016

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

commit 90572ae460ace736685280a608590812abf6bc6a
Author: paulmeyer <paulmeyer@chromium.org>
Date: Fri Nov 18 03:42:19 2016

Drag-and-drop across OOPIFs.

This patch enables drag-and-drop to work across out-of-process iframes.

BUG= 647249 ,  655063 

Review-Url: https://codereview.chromium.org/2508013002
Cr-Commit-Position: refs/heads/master@{#433068}

[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/core/page/DragController.cpp
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/core/page/DragController.h
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/ChromeClientImpl.cpp
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/WebFrameWidgetBase.cpp
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/WebFrameWidgetBase.h
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/WebFrameWidgetImpl.cpp
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/90572ae460ace736685280a608590812abf6bc6a/third_party/WebKit/Source/web/tests/WebViewTest.cpp

Components: Blink>DataTransfer
Project Member

Comment 17 by bugdroid1@chromium.org, Nov 18 2016

Labels: merge-merged-2924
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4ee134950d793e5cd43ecdb871639f2cb2cd67c9

commit 4ee134950d793e5cd43ecdb871639f2cb2cd67c9
Author: Paul Meyer <paulmeyer@chromium.org>
Date: Fri Nov 18 22:14:18 2016

Drag-and-drop across OOPIFs.

This patch enables drag-and-drop to work across out-of-process iframes.

BUG= 647249 ,  655063 

Review-Url: https://codereview.chromium.org/2508013002
Cr-Commit-Position: refs/heads/master@{#433068}
(cherry picked from commit 90572ae460ace736685280a608590812abf6bc6a)

Review URL: https://codereview.chromium.org/2517653003 .

Cr-Commit-Position: refs/branch-heads/2924@{#6}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/core/page/DragController.cpp
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/core/page/DragController.h
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/ChromeClientImpl.cpp
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/WebFrameWidgetBase.cpp
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/WebFrameWidgetBase.h
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/WebFrameWidgetImpl.cpp
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/4ee134950d793e5cd43ecdb871639f2cb2cd67c9/third_party/WebKit/Source/web/tests/WebViewTest.cpp

Project Member

Comment 18 by bugdroid1@chromium.org, Nov 23 2016

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

commit 07dcd0c5edf1fa134708755ab4066b76ed8182eb
Author: lukasza <lukasza@chromium.org>
Date: Wed Nov 23 20:27:32 2016

Enable drag-and-drop tests on --site-per-process bots.

BUG= 647249 

Review-Url: https://codereview.chromium.org/2521323002
Cr-Commit-Position: refs/heads/master@{#434238}

[modify] https://crrev.com/07dcd0c5edf1fa134708755ab4066b76ed8182eb/testing/buildbot/filters/site-per-process.interactive_ui_tests.filter

Comment 19 by creis@chromium.org, Nov 23 2016

Blocking: 617728

Comment 20 by creis@chromium.org, Nov 23 2016

Blockedon: -617728

Comment 21 by creis@chromium.org, Nov 23 2016

Thanks Paul!  Should this be marked fixed now?
Status: Fixed (was: Assigned)
Summary: Implement Drag-and-Drop for OOPIF (was: Implement Drag-and-Drop for OOPIF, WebView+OOPIF)
It looks like this bug includes drag-and-drop for WebView+OOPIF, but since there's already a separate bug for that case, I think this can be marked fixed now.
Blocking: 412373

Comment 25 by rob@robwu.nl, Mar 16 2018

Blocking: 550215

Sign in to add a comment