| Thanks for the test case. This patch should fix the problem (at least for WebKit on OS X).
|
Index: rendering/RenderView.cpp
===================================================================
--- rendering/RenderView.cpp (revision 35185)
+++ rendering/RenderView.cpp (working copy)
@@ -152,11 +152,13 @@ void RenderView::paintBoxDecorations(Pai
{
// Check to see if we are enclosed by a transparent layer. If so, we
cannot blit
// when scrolling, and we need to use slow repaints.
- Element* elt = document()->ownerElement();
- if (view() && elt && elt->renderer()) {
+ Element* elt;
+ for (elt = document()->ownerElement(); view() && elt && elt->renderer();
elt = elt->document()->ownerElement()) {
RenderLayer* layer = elt->renderer()->enclosingLayer();
- if (layer->isTransparent() || layer->transparentAncestor())
+ if (layer->isTransparent() || layer->transparentAncestor()) {
frameView()->setUseSlowRepaints();
+ break;
+ }
}
if (elt || (firstChild() && firstChild()->style()->visibility() ==
VISIBLE) || !view())
On Jul 17, 2008, at 9:36 AM, Artem Ananiev wrote: <html> <body>
<div style="opacity:0.5;position:absolute;left:150;top:150"> <iframe src=""http://java.sun.com/javase/6/docs/api">http://java.sun.com/javase/6/docs/api" width="600" height="450"></iframe> </div>
<div style="opacity:0.2;position:absolute;left:250;top:250"> <iframe src=""http://java.sun.com/javase/6/docs/api">http://java.sun.com/javase/6/docs/api" width="600" height="450"></iframe> </div>
</body> </html> |
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev