New issue
Advanced search Search tips

Issue 593520 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocking:
issue 593522



Sign in to add a comment

Flash in OOPIFs doesn't animate

Project Member Reported by alex...@chromium.org, Mar 9 2016

Issue description

With --site-per-process and a Flash-enabled Chrome:
- go to http://csreis.github.io/tests/cross-site-iframe-simple.html
- from devtools, navigate the frame to a page with a Flash object with some animations:
    frames[0].location.href="http://gapcode.com/banner-tester/#swf"
- click on the play button over the blue Flash object to activate it (assuming click to play is enabled)

Expected: Flash should animate: the word "Sample" should spin.  This is what happens without --site-per-process.

Actual: Flash doesn't animate.  

Note that you can still interact with Flash just fine - if you click on this particular example, it will open a link in a new tab as it should.  Right-click also works.

I've reproed this on Win and Mac canaries.  Also tried a Linux debug build with Flash enabled, and there I didn't even see the first frame - the whole object area was painted with a checkerboard.

Lucas and Ken - you've looked at similar bugs in the past - any ideas on what could be happening here?

 
Labels: Proj-IsolateExtensions-BlockingLaunch
Just verified that this still occurs on 52.0.2716.0 (Linux dev channel).  Adding the launch blocker label so it doesn't slip through the cracks.  This gives a pretty broken user experience without the user having to do anything if an OOPIF has Flash.

Comment 2 by lfg@chromium.org, May 4 2016

Cc: -lfg@chromium.org
Owner: lfg@chromium.org

Comment 3 by lfg@chromium.org, May 9 2016

Cc: a...@chromium.org
Status: Started (was: Available)
I've looked into the problem, and the biggest issue is that the tracking of active pepper instances is per-view instead of per-widget (see RenderViewImpl::RenderWidgetDidCommitAndDrawCompositorFrame). So when a frame's RenderWidget receives RenderWidget::DidInitiatePaint, the renderer will drop the message.

I'll start working on fixing this.

(adding avi@ since this is also related to the RenderView/RenderWidget disentanglement).

Blocking: 593522
Project Member

Comment 5 by bugdroid1@chromium.org, May 11 2016

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

commit e0c2792eceaa5dded2926522bcfd16a5c295a46f
Author: lfg <lfg@chromium.org>
Date: Wed May 11 18:52:08 2016

Fix rendering of flash content inside an out-of-process iframe.

This patch moves the tracking of pepper plugins from RenderViewImpl to
RenderWidget.

BUG= 593520 

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

[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/pepper/pepper_plugin_instance_impl.cc
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/pepper/pepper_plugin_instance_impl.h
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_frame_impl.h
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_view_impl.cc
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_view_impl.h
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_widget.cc
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_widget.h
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/render_widget_owner_delegate.h
[modify] https://crrev.com/e0c2792eceaa5dded2926522bcfd16a5c295a46f/content/renderer/text_input_client_observer.cc

Comment 6 by lfg@chromium.org, May 11 2016

Status: Fixed (was: Started)

Sign in to add a comment