Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(895)

Side by Side Diff: Source/core/rendering/RenderLayerCompositor.cpp

Issue 104433003: Attach a WebLayer to a frame element for out-of-process iframes. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Moved WebLayer back to Frame again. Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 1655 matching lines...) Expand 10 before | Expand all | Expand 10 after
1666 bool RenderLayerCompositor::requiresCompositingForFrame(RenderObject* renderer) const 1666 bool RenderLayerCompositor::requiresCompositingForFrame(RenderObject* renderer) const
1667 { 1667 {
1668 if (!renderer->isRenderPart()) 1668 if (!renderer->isRenderPart())
1669 return false; 1669 return false;
1670 1670
1671 RenderPart* frameRenderer = toRenderPart(renderer); 1671 RenderPart* frameRenderer = toRenderPart(renderer);
1672 1672
1673 if (!frameRenderer->requiresAcceleratedCompositing()) 1673 if (!frameRenderer->requiresAcceleratedCompositing())
1674 return false; 1674 return false;
1675 1675
1676 if ((frameRenderer->isRenderIFrame() || frameRenderer->isFrame()) && frameRe nderer->node() && toHTMLFrameOwnerElement(frameRenderer->node())->contentFrame() && toHTMLFrameOwnerElement(frameRenderer->node())->contentFrame()->platformLaye r())
eseidel 2013/12/11 18:50:01 Same problem as before. Maybe we should have a he
kenrb 2013/12/11 22:44:56 I don't see a convenient place to put that helper.
1677 return true;
1678
1676 // FIXME: this seems bogus. If we don't know the layout position/size of the frame yet, wouldn't that be handled elsehwere? 1679 // FIXME: this seems bogus. If we don't know the layout position/size of the frame yet, wouldn't that be handled elsehwere?
1677 m_needsToRecomputeCompositingRequirements = true; 1680 m_needsToRecomputeCompositingRequirements = true;
1678 1681
1679 RenderLayerCompositor* innerCompositor = frameContentsCompositor(frameRender er); 1682 RenderLayerCompositor* innerCompositor = frameContentsCompositor(frameRender er);
1680 if (!innerCompositor) 1683 if (!innerCompositor)
1681 return false; 1684 return false;
1682 1685
1683 // If we can't reliably know the size of the iframe yet, don't change compos iting state. 1686 // If we can't reliably know the size of the iframe yet, don't change compos iting state.
1684 if (renderer->needsLayout()) 1687 if (renderer->needsLayout())
1685 return frameRenderer->hasLayer() && frameRenderer->layer()->hasComposite dLayerMapping(); 1688 return frameRenderer->hasLayer() && frameRenderer->layer()->hasComposite dLayerMapping();
(...skipping 790 matching lines...) Expand 10 before | Expand all | Expand 10 after
2476 } else if (graphicsLayer == m_scrollLayer.get()) { 2479 } else if (graphicsLayer == m_scrollLayer.get()) {
2477 name = "Frame Scrolling Layer"; 2480 name = "Frame Scrolling Layer";
2478 } else { 2481 } else {
2479 ASSERT_NOT_REACHED(); 2482 ASSERT_NOT_REACHED();
2480 } 2483 }
2481 2484
2482 return name; 2485 return name;
2483 } 2486 }
2484 2487
2485 } // namespace WebCore 2488 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698