本文整理汇总了C++中Page::chromeClient方法的典型用法代码示例。如果您正苦于以下问题:C++ Page::chromeClient方法的具体用法?C++ Page::chromeClient怎么用?C++ Page::chromeClient使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Page
的用法示例。
在下文中一共展示了Page::chromeClient方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: detachRootLayer
void PaintLayerCompositor::detachRootLayer()
{
if (!m_rootContentLayer || m_rootLayerAttachment == RootLayerUnattached)
return;
switch (m_rootLayerAttachment) {
case RootLayerAttachedViaEnclosingFrame: {
// The layer will get unhooked up via CompositedLayerMapping::updateGraphicsLayerConfiguration()
// for the frame's layoutObject in the parent document.
if (m_overflowControlsHostLayer)
m_overflowControlsHostLayer->removeFromParent();
else
m_rootContentLayer->removeFromParent();
if (HTMLFrameOwnerElement* ownerElement = m_layoutView.document().ownerElement())
ownerElement->setNeedsCompositingUpdate();
break;
}
case RootLayerAttachedViaChromeClient: {
LocalFrame& frame = m_layoutView.frameView()->frame();
Page* page = frame.page();
if (!page)
return;
page->chromeClient().attachRootGraphicsLayer(0, &frame);
break;
}
case RootLayerUnattached:
break;
}
m_rootLayerAttachment = RootLayerUnattached;
}
示例2: attachRootLayer
void PaintLayerCompositor::attachRootLayer(RootLayerAttachment attachment)
{
if (!m_rootContentLayer)
return;
// In Slimming Paint v2, PaintArtifactCompositor is responsible for the root
// layer.
if (RuntimeEnabledFeatures::slimmingPaintV2Enabled())
return;
switch (attachment) {
case RootLayerUnattached:
ASSERT_NOT_REACHED();
break;
case RootLayerAttachedViaChromeClient: {
LocalFrame& frame = m_layoutView.frameView()->frame();
Page* page = frame.page();
if (!page)
return;
page->chromeClient().attachRootGraphicsLayer(rootGraphicsLayer(), &frame);
break;
}
case RootLayerAttachedViaEnclosingFrame: {
HTMLFrameOwnerElement* ownerElement = m_layoutView.document().ownerElement();
ASSERT(ownerElement);
// The layer will get hooked up via CompositedLayerMapping::updateGraphicsLayerConfiguration()
// for the frame's layoutObject in the parent document.
ownerElement->setNeedsCompositingUpdate();
break;
}
}
m_rootLayerAttachment = attachment;
}
示例3: isInSVGImage
bool SVGImage::isInSVGImage(const Node* node)
{
ASSERT(node);
Page* page = node->document().page();
if (!page)
return false;
return page->chromeClient().isSVGImageChromeClient();
}
示例4: detachCompositorTimeline
void PaintLayerCompositor::detachCompositorTimeline()
{
LocalFrame& frame = m_layoutView.frameView()->frame();
Page* page = frame.page();
if (!page)
return;
WebCompositorAnimationTimeline* compositorTimeline = frame.document() ? frame.document()->timeline().compositorTimeline() : nullptr;
if (compositorTimeline)
page->chromeClient().detachCompositorAnimationTimeline(compositorTimeline, &frame);
}