void Frame::setPrinting(bool printing, const FloatSize& pageSize, float maximumShrinkRatio, AdjustViewSizeOrNot shouldAdjustViewSize) { m_doc->setPrinting(printing); view()->adjustMediaTypeForPrinting(printing); m_doc->styleSelectorChanged(RecalcStyleImmediately); view()->forceLayoutForPagination(pageSize, maximumShrinkRatio, shouldAdjustViewSize); // Subframes of the one we're printing don't lay out to the page size. for (Frame* child = tree()->firstChild(); child; child = child->tree()->nextSibling()) child->setPrinting(printing, IntSize(), 0, shouldAdjustViewSize); }
void Frame::setPrinting(bool printing, const FloatSize& pageSize, const FloatSize& originalPageSize, float maximumShrinkRatio, AdjustViewSizeOrNot shouldAdjustViewSize) { // In setting printing, we should not validate resources already cached for the document. // See https://bugs.webkit.org/show_bug.cgi?id=43704 ResourceCacheValidationSuppressor validationSuppressor(m_doc->cachedResourceLoader()); m_doc->setPrinting(printing); view()->adjustMediaTypeForPrinting(printing); m_doc->styleSelectorChanged(RecalcStyleImmediately); if (printing) view()->forceLayoutForPagination(pageSize, originalPageSize, maximumShrinkRatio, shouldAdjustViewSize); else { view()->forceLayout(); if (shouldAdjustViewSize == AdjustViewSize) view()->adjustViewSize(); } // Subframes of the one we're printing don't lay out to the page size. for (Frame* child = tree()->firstChild(); child; child = child->tree()->nextSibling()) child->setPrinting(printing, FloatSize(), FloatSize(), 0, shouldAdjustViewSize); }