Example #1
0
    void autoZoomPageToFitWidth(Frame* frame)
    {
        if (!frame)
            return;

        frame->setTextZoomFactor(m_webView->emulatedTextZoomFactor());
        ensureOriginalZoomFactor(frame->view());
        Document* document = frame->document();
        float numerator = document->renderView() ? document->renderView()->viewWidth() : frame->view()->contentsWidth();
        float factor = m_originalZoomFactor * (numerator / m_emulatedFrameSize.width);
        frame->setPageAndTextZoomFactors(factor, m_webView->emulatedTextZoomFactor());
        document->styleResolverChanged(RecalcStyleImmediately);
        document->updateLayout();
    }
Example #2
0
    void autoZoomPageToFitWidth(Frame* frame)
    {
        if (!frame)
            return;

        frame->setTextZoomFactor(m_webView->emulatedTextZoomFactor());
        WebSize scaledFrameSize = scaledEmulatedFrameSize(frame->view());
        ensureOriginalZoomFactor(frame->view());
        double sizeRatio = static_cast<double>(scaledFrameSize.width) / m_emulatedFrameSize.width;
        frame->setPageAndTextZoomFactors(sizeRatio * m_originalZoomFactor, m_webView->emulatedTextZoomFactor());
        Document* doc = frame->document();
        doc->styleResolverChanged(RecalcStyleImmediately);
        doc->updateLayout();
    }