The default bug view has changed. See this FAQ.

When scrolling with D3D9 layers, plugins aren't clipped properly against chrome

RESOLVED FIXED

Status

()

Core
Graphics
RESOLVED FIXED
7 years ago
6 years ago

People

(Reporter: robarnold, Assigned: roc)

Tracking

Trunk
x86
Windows 7
Points:
---

Firefox Tracking Flags

(blocking2.0 betaN+)

Details

(Whiteboard: [depends on 590568])

Attachments

(2 attachments)

(Reporter)

Description

7 years ago
STR:
1) Go to http://www.reddit.com/r/programming/ and spot the flash ad on the right hand side
2) Scroll slowly (don't use page down) so that the top part plugin should be clipped by chrome.

Expected:
The UI is still visible

Actual:
The UI has a white rectangle where I'd expect the plugin to be. Mousing over the white rectangle or switching tabs redraws parts of it.
blocking2.0: --- → beta6+
I don't see this. That URL doesn't have a Flash ad for me, but I don't see any problems on pages that do have Flash ads.
(Reporter)

Comment 2

7 years ago
Created attachment 472418 [details]
Screenshot

Turns out I can reproduce this on youtube. Not all videos seem to display the bug. The URL for the one in the screenshot is http://www.youtube.com/watch?v=z99EHyG2jQA
Can you reproduce it every time with that URL? I can't reproduce it at all.
(Reporter)

Comment 4

7 years ago
Yes, every time. I should also mention that I'm using GDI, not D2D. The reddit link sometimes has flash ads and only some of them exhibit the problem. That youtube video is consistent. I'm playing it at 360p (the default). I also just noticed that my browser hangs when I try to switch resolutions for that video. I'm not sure if it's related to this issue.
A very similar thing happens on OS X without any accelerated layer manager (and has since bug 130078 landed). I wonder if it's the same root cause?
Joe, is that still happening on Mac after 592563 was fixed?
Yep.
Can you file a new bug for that with steps to reproduce? Because I don't know how.
(Reporter)

Comment 9

7 years ago
(In reply to comment #8)
> Can you file a new bug for that with steps to reproduce? Because I don't know
> how.

I cannot reproduce the hang anymore. I suspect my browser somehow worked itself into a bad state. If I find STR, I'll file. Original issue still remains.
(Reporter)

Comment 10

7 years ago
Err, I'm sorry, I misread who that was directed to.
The bug I'm seeing on OS X is bug 594992.
Should this be marked as betaN+? Not sure it's a beta6/7 blocker anymore.
blocking2.0: beta6+ → betaN+
(Reporter)

Updated

7 years ago
Duplicate of this bug: 596715
I tried and failed to reproduce this with D2D on and D2D off.
I failed again to reproduce this (D2D on or off).

For anybody else that has seen this it would be useful to have info like the following:
1) was d2d on or off
2) the site and what you did to see the problem
3) graphics card info
(Reporter)

Comment 16

7 years ago
1) D2D off
2) http://www.youtube.com/watch?v=z99EHyG2jQA scroll down while the video is playing and you see white chunks in the titlebar just as in the screenshots.
3) ATI Mobility Radeon X1400
Driver Version: 8.561.0.0:
Driver Date: 12-1-2008

The drivers are old because it's a mobile chip.
1) D2D off
2) Any youtube video
3) nVidia GeForce 7800 GT
Driver Version: 195.62
(In reply to comment #17)
> 1) D2D off
> 2) Any youtube video
> 3) nVidia GeForce 7800 GT
> Driver Version: 195.62

Is that an older version of the driver? What happens if you use the latest driver?
Yes, it's an "old" version, because I use an old card, but I will try the latest driver version.
Just installed 258.96, and I have the same problem.
For the people who see this, it started between the 2010-08-27 and 2010-08-28 nightlies?
No, it started after 2010-08-28 and before 2010-09-09, I'll try to narrow the regression window.
Here is the regression window :
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=bd474ff6f86c&tochange=fd13b6ce36bd
(In reply to comment #23)
> Here is the regression window :
> http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=bd474ff6f86c&tochange=fd13b6ce36bd

That just tells us enabling D3D9 layers caused your problem, which we already knew :-)
(In reply to comment #24)
> (In reply to comment #23)
> > Here is the regression window :
> > http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=bd474ff6f86c&tochange=fd13b6ce36bd
> 
> That just tells us enabling D3D9 layers caused your problem, which we already
> knew :-)
Sorry, when setting layers.accelerate-all to true the regression window stated by timothy is right.
Occurs for me on any YouTube page after scrolling.

Disabling hardware acceleration fixes it.

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b7pre) Gecko/20101005
Firefox/4.0b7pre

Flash: v10.1.85.3

Adapter Description: NVIDIA GeForce 6200 TurboCache(TM)
Vendor ID: 10de
Device ID: 0161
Adapter RAM: 64
Adapter Drivers: nvd3dumx,nvd3dum
Driver Version: 8.17.12.6063
Driver Date: 9-10-2010
Direct2D Enabled: false
DirectWrite Enabled: false
GPU Accelerated Windows: 1/1 Direct3D 9

For configs of other people who this has also been happening to, see bug 597955 (which should probably be marked a dupe of this one).

Thanks!
Timothy, your comment 21 implies you have a theory?
Assignee: nobody → tnikkel
Duplicate of this bug: 601761
(In reply to comment #27)
> Timothy, your comment 21 implies you have a theory?

Just the opposite unfortunately. What we need here is a machine that can reproduce this in the hands of someone who can debug it.
If someone can guide me through whatever you need doing (I haven't touched a debugger for years), I'm more than happy to help.
Unfortunately there isn't anything specific I can think of to look at in a debugger, just general debugging.
I have a wild guess, anyone who sees this bug could you try this try server build? http://stage.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/tnikkel@gmail.com-94a378af37db/
The bug occurs using that tryserver build too. (Albeit using the same profile, I didn't test using a brand new profile, should I have done?).
Not using a new profile is fine.
I wonder if bug 590568 is the same as this.
The screenshot in the other bug looks exactly like what happens on my machine.

Reference you wanting to try using a debugger, would me setting up VNC on this machine and giving you access help?
(In reply to comment #32)
> I have a wild guess, anyone who sees this bug could you try this try server
> build?
> http://stage.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/tnikkel@gmail.com-94a378af37db/

I still see the bug with this build.

Comment 38

7 years ago
hi i am coming from this bug https://bugzilla.mozilla.org/show_bug.cgi?id=590568 , i could say we are experiencing same issue. Untill now it seams that only nvidia card before the 8xxx series are affected

Adapter Description NVIDIA GeForce 7600 
GS Vendor ID10de
Device ID 0392
Adapter RAM 512
Adapter Driver snvd3dum
Driver Version 8.17.12.6089
Driver Date 10-8-2010
Direct2D Enabled true
DirectWrite Enabled true
GPU Accelerated Windows1/1 Direct3D 9
(In reply to comment #36)
> Reference you wanting to try using a debugger, would me setting up VNC on this
> machine and giving you access help?

Your machine would also need a build environment including mozilla-build and visual studio, so before we go that route I think we should exhaust some other options; somewhere in Mozilla there must be a laptop that has this problem.
(In reply to comment #39)
> (In reply to comment #36)
> > Reference you wanting to try using a debugger, would me setting up VNC on this
> > machine and giving you access help?
> 
> Your machine would also need a build environment including mozilla-build and
> visual studio, so before we go that route I think we should exhaust some other
> options; somewhere in Mozilla there must be a laptop that has this problem.

You can create a debug build, give it to him, and then use the Remote Debugger. to hook your local debugger to the build on his machine.
I've just spotted something strange.

If I watch YouTube videos embedded in a certain news site, the issue doesn't occur. However, if click through to view the video on it's page on YouTube, the issue does.

ie:
Embedded video works fine = http://www.neowin.net/news/twitter-redesign-fully-rolled-out
Same video on Youtube, broken = http://www.youtube.com/watch?v=NshQFrpC2O4

The news site embeds the video using <object>, whereas YouTube uses javascript, presumably so the page xhtml validates. Could this be the reason that one works and the other doesn't, for the same video?

Hope that helps :-)

Comment 42

7 years ago
confirmed , good guess
(In reply to comment #41)
> The news site embeds the video using <object>, whereas YouTube uses javascript,
> presumably so the page xhtml validates. Could this be the reason that one works
> and the other doesn't, for the same video?

That is interesting. I wonder if a page with the problem can be reduced. There might be something telltale in the reduced page that could help narrow this down.
(In reply to comment #40)
> You can create a debug build, give it to him, and then use the Remote Debugger.
> to hook your local debugger to the build on his machine.

I didn't know about this. Are there details somewhere about how to do this?
I've managed to create a reduced test case and as a result have found out something that may hopefully be of use to you. (As well as finding out the difference probably isn't due to object vs embed).

#Causes the issue:
<html>
<head></head>
<body>
<embed height="385" width="640" src="http://www.youtube.com/v/NshQFrpC2O4" type="application/x-shockwave-flash"></embed>
</body>
</html>

#Works fine:
<html>
<head></head>
<body>
<embed height="385" width="640" src="http://www.youtube.com/v/NshQFrpC2O4" type="application/x-shockwave-flash" wmode="transparent"></embed>
</body>
</html>

ie: if the wmode="transparent" is present, the issue does not occur, if it is missing, it occurs.
Created attachment 483035 [details]
Reduced test case. Open in Fx, reduce window size such that scrollbars appear, scroll down, observe toolbar.
(In reply to comment #46)
> Created attachment 483035 [details]
> Reduced test case. Open in Fx, reduce window size such that scrollbars appear,
> scroll down, observe toolbar.

Sadly this isn't too helpful. In transparent mode drawing is completely different. This is indeed a problem with windowed plugins. But it doesn't occur for most people.
OK, I can reproduce this in my VM.
(In reply to comment #45)
> I've managed to create a reduced test case...

Thanks for doing that. It at least shows that you don't need any special testcase to cause this.

Comment 50

7 years ago
I read somewhere far above that you can inhibit this by turning off hardware acceleration.
You mean by the Settings in the Flash context menu?

No changes here; the glitches still appear as if I had made no changes.
(In reply to comment #50)
> I read somewhere far above that you can inhibit this by turning off hardware
> acceleration.
> You mean by the Settings in the Flash context menu?
 
This was about the "Use hardware acceleration when available" option in the "Advanced" tab of Firefox/Minefield Options.

Comment 52

7 years ago
Ah, thanks!
I was looking high and low in about:config and found nothing.

Comment 53

7 years ago
i know , title already said it , but just to confirm , that even using DX9 card on Win7 , enabling "layers.use-d3d10" the youtube glitch disappears , so we can assume that the issue is on layer code and not on flash

Comment 54

7 years ago
another round 

strange situation here:

layers.accelerate-all;false

layers.prefer-d3d9;false

gfx.direct2d.force-enabled;true

result in

Direct2D Enabled true
DirectWrite Enabled true
GPU Accelerated Windows 0/1

all seams accelerated , i have better score on ie9 test drive than before

all the glitch (black box , trasparent layer not rendere etc etc) gone

flash player glitch gone (a white box is drawed on the toolbar but is repainted almost immediatly with chrome element)
Dupe of https://bugzilla.mozilla.org/show_bug.cgi?id=590568 ?
Assignee: tnikkel → nobody
Assignee: nobody → roc
Whiteboard: [depends on 590568]
Should have been fixed in bug 590568.
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.