⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 244202 in webkit


Ignore:
Timestamp:
Apr 11, 2019, 4:33:41 PM (7 years ago)
Author:
Alan Bujtas
Message:

Add @page margin support
https://bugs.webkit.org/show_bug.cgi?id=196680
<rdar://problem/45217707>

Reviewed by Tim Horton.

Source/WebCore:

This patch adds support for @page margin. This feature is currently behind a runtime flag and is off by default.
We resolve the @page margin values in the WebProcess (currently no pseudo class is supported) and transfer them to the UIProcess through computedPagesCallback.
UIProcess is responsible for applying these new values on the printer. We also re-compute the available width/height for the current printing context
in the WebProcess if needed (see PrintInfo for current printer margins).

Tests: printing/page-with-10mm-left-margin.html

printing/page-with-zero-margin.html

  • page/PrintContext.cpp:

(WebCore::PrintContext::computedPageMargin):
(WebCore::PrintContext::computedPageSize):

  • page/PrintContext.h:
  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::pageAtRuleSupportEnabled const):
(WebCore::RuntimeEnabledFeatures::setPageAtRuleSupportEnabled):

Source/WebKit:

  • Shared/PrintInfo.cpp:

(WebKit::PrintInfo::encode const):
(WebKit::PrintInfo::decode):

  • Shared/PrintInfo.h:
  • Shared/WebPreferences.yaml:
  • Shared/gtk/PrintInfoGtk.cpp:

(WebKit::PrintInfo::PrintInfo):

  • Shared/mac/PrintInfoMac.mm:

(WebKit::PrintInfo::PrintInfo):

  • UIProcess/API/C/WKPage.cpp:

(WKPageComputePagesForPrinting):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetPageAtRuleSupportEnabled):
(WKPreferencesGetPageAtRuleSupportEnabled):

  • UIProcess/API/C/WKPreferencesRefPrivate.h:
  • UIProcess/GenericCallback.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::computedPagesCallback):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WKPrintingView.mm:

(pageDidComputePageRects):
(-[WKPrintingView _askPageToComputePageRects]):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::beginPrinting):
(WebKit::WebPage::computePagesForPrinting):
(WebKit::WebPage::computePagesForPrintingImpl):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::computePagesForPrintingAndDrawToPDF):

LayoutTests:

  • printing/page-with-10mm-left-margin-expected.pdf: Added.
  • printing/page-with-10mm-left-margin.html: Added.
  • printing/page-with-zero-margin-expected.pdf: Added.
  • printing/page-with-zero-margin.html: Added.
Location:
trunk
Files:
6 added
20 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r244200 r244202  
     12019-04-11  Zalan Bujtas  <zalan@apple.com>
     2
     3        Add @page margin support
     4        https://bugs.webkit.org/show_bug.cgi?id=196680
     5        <rdar://problem/45217707>
     6
     7        Reviewed by Tim Horton.
     8
     9        * printing/page-with-10mm-left-margin-expected.pdf: Added.
     10        * printing/page-with-10mm-left-margin.html: Added.
     11        * printing/page-with-zero-margin-expected.pdf: Added.
     12        * printing/page-with-zero-margin.html: Added.
     13
    1142019-04-09  Ryosuke Niwa  <rniwa@webkit.org>
    215
  • trunk/Source/WebCore/ChangeLog

    r244201 r244202  
     12019-04-11  Zalan Bujtas  <zalan@apple.com>
     2
     3        Add @page margin support
     4        https://bugs.webkit.org/show_bug.cgi?id=196680
     5        <rdar://problem/45217707>
     6
     7        Reviewed by Tim Horton.
     8
     9        This patch adds support for @page margin. This feature is currently behind a runtime flag and is off by default.
     10        We resolve the @page margin values in the WebProcess (currently no pseudo class is supported) and transfer them to the UIProcess through computedPagesCallback.
     11        UIProcess is responsible for applying these new values on the printer. We also re-compute the available width/height for the current printing context
     12        in the WebProcess if needed (see PrintInfo for current printer margins).
     13
     14        Tests: printing/page-with-10mm-left-margin.html
     15               printing/page-with-zero-margin.html
     16
     17        * page/PrintContext.cpp:
     18        (WebCore::PrintContext::computedPageMargin):
     19        (WebCore::PrintContext::computedPageSize):
     20        * page/PrintContext.h:
     21        * page/RuntimeEnabledFeatures.h:
     22        (WebCore::RuntimeEnabledFeatures::pageAtRuleSupportEnabled const):
     23        (WebCore::RuntimeEnabledFeatures::setPageAtRuleSupportEnabled):
     24
    1252019-04-11  Dean Jackson  <dino@apple.com>
    226
  • trunk/Source/WebCore/page/PrintContext.cpp

    r242713 r244202  
    2626#include "Frame.h"
    2727#include "FrameView.h"
     28#include "LengthBox.h"
    2829#include "RenderView.h"
     30#include "RuntimeEnabledFeatures.h"
    2931#include "StyleInheritedData.h"
    3032#include "StyleResolver.h"
     
    7779
    7880    computePageRectsWithPageSizeInternal(FloatSize(pageWidth / userScaleFactor, pageHeight / userScaleFactor), allowHorizontalTiling);
     81}
     82
     83FloatBoxExtent PrintContext::computedPageMargin(FloatBoxExtent printMargin)
     84{
     85    if (!frame() || !frame()->document())
     86        return printMargin;
     87    if (!RuntimeEnabledFeatures::sharedFeatures().pageAtRuleSupportEnabled())
     88        return printMargin;
     89    // FIXME Currently no pseudo class is supported.
     90    auto style = frame()->document()->styleScope().resolver().styleForPage(0);
     91
     92    auto pixelToPointScaleFactor = 1 / CSSPrimitiveValue::conversionToCanonicalUnitsScaleFactor(CSSPrimitiveValue::CSS_PT);
     93    return { style->marginTop().isAuto() ? printMargin.top() : style->marginTop().value() * pixelToPointScaleFactor,
     94        style->marginRight().isAuto() ? printMargin.right() : style->marginRight().value() * pixelToPointScaleFactor,
     95        style->marginBottom().isAuto() ? printMargin.bottom() : style->marginBottom().value() * pixelToPointScaleFactor,
     96        style->marginLeft().isAuto() ? printMargin.left() : style->marginLeft().value() * pixelToPointScaleFactor };
     97}
     98
     99FloatSize PrintContext::computedPageSize(FloatSize pageSize, FloatBoxExtent printMargin)
     100{
     101    auto computedMargin = computedPageMargin(printMargin);
     102    if (computedMargin == printMargin)
     103        return pageSize;
     104
     105    auto horizontalMarginDelta = (printMargin.left() - computedMargin.left()) + (printMargin.right() - computedMargin.right());
     106    auto verticalMarginDelta = (printMargin.top() - computedMargin.top()) + (printMargin.bottom() - computedMargin.bottom());
     107    return { pageSize.width() + horizontalMarginDelta, pageSize.height() + verticalMarginDelta };
    79108}
    80109
  • trunk/Source/WebCore/page/PrintContext.h

    r241183 r244202  
    2222
    2323#include "FrameDestructionObserver.h"
     24#include "LengthBox.h"
    2425#include <wtf/Forward.h>
    2526#include <wtf/HashMap.h>
     
    5758    const IntRect& pageRect(size_t pageNumber) const { return m_pageRects[pageNumber]; }
    5859    const Vector<IntRect>& pageRects() const { return m_pageRects; }
     60    WEBCORE_EXPORT FloatBoxExtent computedPageMargin(FloatBoxExtent printMargin);
     61    WEBCORE_EXPORT FloatSize computedPageSize(FloatSize pageSize, FloatBoxExtent printMargin);
    5962
    6063    WEBCORE_EXPORT float computeAutomaticScaleFactor(const FloatSize& availablePaperSize);
  • trunk/Source/WebCore/page/RuntimeEnabledFeatures.h

    r243666 r244202  
    350350    bool referrerPolicyAttributeEnabled() const { return m_referrerPolicyAttributeEnabled; }
    351351    void setReferrerPolicyAttributeEnabled(bool isEnabled) { m_referrerPolicyAttributeEnabled = isEnabled; }
     352
     353    bool pageAtRuleSupportEnabled() const { return m_pageAtRuleSupportEnabled; }
     354    void setPageAtRuleSupportEnabled(bool isEnabled) { m_pageAtRuleSupportEnabled = isEnabled; }
    352355
    353356    WEBCORE_EXPORT static RuntimeEnabledFeatures& sharedFeatures();
     
    400403    bool m_pointerEventsEnabled { true };
    401404    bool m_webSQLEnabled { true };
     405    bool m_pageAtRuleSupportEnabled { false };
    402406
    403407#if ENABLE(LAYOUT_FORMATTING_CONTEXT)
  • trunk/Source/WebKit/ChangeLog

    r244201 r244202  
     12019-04-11  Zalan Bujtas  <zalan@apple.com>
     2
     3        Add @page margin support
     4        https://bugs.webkit.org/show_bug.cgi?id=196680
     5        <rdar://problem/45217707>
     6
     7        Reviewed by Tim Horton.
     8
     9        * Shared/PrintInfo.cpp:
     10        (WebKit::PrintInfo::encode const):
     11        (WebKit::PrintInfo::decode):
     12        * Shared/PrintInfo.h:
     13        * Shared/WebPreferences.yaml:
     14        * Shared/gtk/PrintInfoGtk.cpp:
     15        (WebKit::PrintInfo::PrintInfo):
     16        * Shared/mac/PrintInfoMac.mm:
     17        (WebKit::PrintInfo::PrintInfo):
     18        * UIProcess/API/C/WKPage.cpp:
     19        (WKPageComputePagesForPrinting):
     20        * UIProcess/API/C/WKPreferences.cpp:
     21        (WKPreferencesSetPageAtRuleSupportEnabled):
     22        (WKPreferencesGetPageAtRuleSupportEnabled):
     23        * UIProcess/API/C/WKPreferencesRefPrivate.h:
     24        * UIProcess/GenericCallback.h:
     25        * UIProcess/WebPageProxy.cpp:
     26        (WebKit::WebPageProxy::computedPagesCallback):
     27        * UIProcess/WebPageProxy.h:
     28        * UIProcess/WebPageProxy.messages.in:
     29        * UIProcess/mac/WKPrintingView.mm:
     30        (pageDidComputePageRects):
     31        (-[WKPrintingView _askPageToComputePageRects]):
     32        * WebProcess/WebPage/WebPage.cpp:
     33        (WebKit::WebPage::beginPrinting):
     34        (WebKit::WebPage::computePagesForPrinting):
     35        (WebKit::WebPage::computePagesForPrintingImpl):
     36        * WebProcess/WebPage/WebPage.h:
     37        * WebProcess/WebPage/ios/WebPageIOS.mm:
     38        (WebKit::WebPage::computePagesForPrintingAndDrawToPDF):
     39
    1402019-04-11  Dean Jackson  <dino@apple.com>
    241
  • trunk/Source/WebKit/Shared/PrintInfo.cpp

    r237266 r244202  
    4141    encoder << availablePaperWidth;
    4242    encoder << availablePaperHeight;
     43    encoder << margin;
    4344
    4445#if PLATFORM(GTK)
     
    6162    if (!decoder.decode(info.availablePaperHeight))
    6263        return false;
     64    if (!decoder.decode(info.margin))
     65        return false;
    6366
    6467#if PLATFORM(GTK)
  • trunk/Source/WebKit/Shared/PrintInfo.h

    r237266 r244202  
    3636class NSPrintInfo;
    3737#endif
     38#include <WebCore/LengthBox.h>
    3839
    3940namespace IPC {
     
    5758#endif
    5859
     60    // These values are in 'point' unit (and not CSS pixel).
    5961    float pageSetupScaleFactor { 0 };
    6062    float availablePaperWidth { 0 };
    6163    float availablePaperHeight { 0 };
     64    WebCore::FloatBoxExtent margin;
    6265#if PLATFORM(IOS_FAMILY)
    6366    bool snapshotFirstPage { false };
  • trunk/Source/WebKit/Shared/WebPreferences.yaml

    r244197 r244202  
    16321632  webcoreBinding: RuntimeEnabledFeatures
    16331633
     1634PageAtRuleSupportEnabled:
     1635  type: bool
     1636  defaultValue: false
     1637  humanReadableName: "@page CSS at-rule support"
     1638  humanReadableDescription: "Enable @page support"
     1639  category: experimental
     1640  webcoreBinding: RuntimeEnabledFeatures
     1641
    16341642ApplePayRemoteUIEnabled:
    16351643  category: internal
  • trunk/Source/WebKit/Shared/gtk/PrintInfoGtk.cpp

    r159042 r244202  
    3535    , availablePaperWidth(gtk_page_setup_get_paper_width(pageSetup, GTK_UNIT_POINTS) - gtk_page_setup_get_left_margin(pageSetup, GTK_UNIT_POINTS) - gtk_page_setup_get_right_margin(pageSetup, GTK_UNIT_POINTS))
    3636    , availablePaperHeight(gtk_page_setup_get_paper_height(pageSetup, GTK_UNIT_POINTS) - gtk_page_setup_get_top_margin(pageSetup, GTK_UNIT_POINTS) - gtk_page_setup_get_bottom_margin(pageSetup, GTK_UNIT_POINTS))
     37    , margin(gtk_page_setup_get_top_margin(pageSetup, GTK_UNIT_POINTS), gtk_page_setup_get_right_margin(pageSetup, GTK_UNIT_POINTS), gtk_page_setup_get_bottom_margin(pageSetup, GTK_UNIT_POINTS), gtk_page_setup_get_left_margin(pageSetup, GTK_UNIT_POINTS))
    3738    , printSettings(settings)
    3839    , pageSetup(pageSetup)
  • trunk/Source/WebKit/Shared/mac/PrintInfoMac.mm

    r164776 r244202  
    3535    , availablePaperWidth([printInfo paperSize].width - [printInfo leftMargin] - [printInfo rightMargin])
    3636    , availablePaperHeight([printInfo paperSize].height - [printInfo topMargin] - [printInfo bottomMargin])
     37    , margin([printInfo topMargin], [printInfo rightMargin], [printInfo bottomMargin], [printInfo leftMargin])
    3738{
    3839    ASSERT(printInfo);
  • trunk/Source/WebKit/UIProcess/API/C/WKPage.cpp

    r243762 r244202  
    24182418void WKPageComputePagesForPrinting(WKPageRef page, WKFrameRef frame, WKPrintInfo printInfo, WKPageComputePagesForPrintingFunction callback, void* context)
    24192419{
    2420     toImpl(page)->computePagesForPrinting(toImpl(frame), printInfoFromWKPrintInfo(printInfo), ComputedPagesCallback::create([context, callback](const Vector<WebCore::IntRect>& rects, double scaleFactor, WebKit::CallbackBase::Error error) {
     2420    toImpl(page)->computePagesForPrinting(toImpl(frame), printInfoFromWKPrintInfo(printInfo), ComputedPagesCallback::create([context, callback](const Vector<WebCore::IntRect>& rects, double scaleFactor, const WebCore::FloatBoxExtent& computedPageMargin, WebKit::CallbackBase::Error error) {
    24212421        Vector<WKRect> wkRects(rects.size());
    24222422        for (size_t i = 0; i < rects.size(); ++i)
  • trunk/Source/WebKit/UIProcess/GenericCallback.h

    r239427 r244202  
    156156
    157157typedef GenericCallback<> VoidCallback;
    158 typedef GenericCallback<const Vector<WebCore::IntRect>&, double> ComputedPagesCallback;
     158typedef GenericCallback<const Vector<WebCore::IntRect>&, double, WebCore::FloatBoxExtent> ComputedPagesCallback;
    159159typedef GenericCallback<const ShareableBitmap::Handle&> ImageCallback;
    160160
  • trunk/Source/WebKit/UIProcess/WebPageProxy.cpp

    r244197 r244202  
    64186418}
    64196419
    6420 void WebPageProxy::computedPagesCallback(const Vector<IntRect>& pageRects, double totalScaleFactorForPrinting, CallbackID callbackID)
     6420void WebPageProxy::computedPagesCallback(const Vector<IntRect>& pageRects, double totalScaleFactorForPrinting, const FloatBoxExtent& computedPageMargin, CallbackID callbackID)
    64216421{
    64226422    auto callback = m_callbacks.take<ComputedPagesCallback>(callbackID);
     
    64266426    }
    64276427
    6428     callback->performCallbackWithReturnValue(pageRects, totalScaleFactorForPrinting);
     6428    callback->performCallbackWithReturnValue(pageRects, totalScaleFactorForPrinting, computedPageMargin);
    64296429}
    64306430
  • trunk/Source/WebKit/UIProcess/WebPageProxy.h

    r244197 r244202  
    18221822    void invalidateStringCallback(CallbackID);
    18231823    void scriptValueCallback(const IPC::DataReference&, bool hadException, const WebCore::ExceptionDetails&, CallbackID);
    1824     void computedPagesCallback(const Vector<WebCore::IntRect>&, double totalScaleFactorForPrinting, CallbackID);
     1824    void computedPagesCallback(const Vector<WebCore::IntRect>&, double totalScaleFactorForPrinting, const WebCore::FloatBoxExtent& computedPageMargin, CallbackID);
    18251825    void validateCommandCallback(const String&, bool, int, CallbackID);
    18261826    void unsignedCallback(uint64_t, CallbackID);
  • trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in

    r244161 r244202  
    169169    InvalidateStringCallback(WebKit::CallbackID callbackID)
    170170    ScriptValueCallback(IPC::DataReference resultData, bool hadException, struct WebCore::ExceptionDetails details, WebKit::CallbackID callbackID)
    171     ComputedPagesCallback(Vector<WebCore::IntRect> pageRects, double totalScaleFactorForPrinting, WebKit::CallbackID callbackID)
     171    ComputedPagesCallback(Vector<WebCore::IntRect> pageRects, double totalScaleFactorForPrinting, WebCore::RectEdges<float> computedPageMargin, WebKit::CallbackID callbackID)
    172172    ValidateCommandCallback(String command, bool isEnabled, int32_t state, WebKit::CallbackID callbackID)
    173173    EditingRangeCallback(struct WebKit::EditingRange range, WebKit::CallbackID callbackID)
  • trunk/Source/WebKit/UIProcess/mac/WKPrintingView.mm

    r240211 r244202  
    294294}
    295295
    296 static void pageDidComputePageRects(const Vector<WebCore::IntRect>& pageRects, double totalScaleFactorForPrinting, IPCCallbackContext* context)
     296static void pageDidComputePageRects(const Vector<WebCore::IntRect>& pageRects, double totalScaleFactorForPrinting, const WebCore::FloatBoxExtent& computedPageMargin, IPCCallbackContext* context)
    297297{
    298298    ASSERT(RunLoop::isMain());
     
    324324        LOG(Printing, "WKPrintingView setting frame size to x:%g y:%g width:%g height:%g", newFrameSize.origin.x, newFrameSize.origin.y, newFrameSize.size.width, newFrameSize.size.height);
    325325        [view setFrame:newFrameSize];
     326        // Set @page margin.
     327        auto *printInfo = [view->_printOperation printInfo];
     328        [printInfo setTopMargin:computedPageMargin.top()];
     329        [printInfo setBottomMargin:computedPageMargin.bottom()];
     330        [printInfo setLeftMargin:computedPageMargin.left()];
     331        [printInfo setRightMargin:computedPageMargin.right()];
    326332
    327333        if ([view _isPrintingPreview]) {
     
    345351
    346352    IPCCallbackContext* context = new IPCCallbackContext;
    347     auto callback = WebKit::ComputedPagesCallback::create([context](const Vector<WebCore::IntRect>& pageRects, double totalScaleFactorForPrinting, WebKit::CallbackBase::Error) {
     353    auto callback = WebKit::ComputedPagesCallback::create([context](const Vector<WebCore::IntRect>& pageRects, double totalScaleFactorForPrinting, const WebCore::FloatBoxExtent& computedPageMargin, WebKit::CallbackBase::Error) {
    348354        std::unique_ptr<IPCCallbackContext> contextDeleter(context);
    349         pageDidComputePageRects(pageRects, totalScaleFactorForPrinting, context);
     355        pageDidComputePageRects(pageRects, totalScaleFactorForPrinting, computedPageMargin, context);
    350356    });
    351357    _expectedComputedPagesCallback = callback->callbackID().toInteger();
  • trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp

    r244182 r244202  
    46244624    freezeLayerTree(LayerTreeFreezeReason::Printing);
    46254625
    4626     m_printContext->begin(printInfo.availablePaperWidth, printInfo.availablePaperHeight);
     4626    auto computedPageSize = m_printContext->computedPageSize(FloatSize(printInfo.availablePaperWidth, printInfo.availablePaperHeight), printInfo.margin);
     4627    m_printContext->begin(computedPageSize.width(), computedPageSize.height());
    46274628
    46284629    float fullPageHeight;
    4629     m_printContext->computePageRects(FloatRect(0, 0, printInfo.availablePaperWidth, printInfo.availablePaperHeight), 0, 0, printInfo.pageSetupScaleFactor, fullPageHeight, true);
     4630    m_printContext->computePageRects(FloatRect(0, 0, computedPageSize.width(), computedPageSize.height()), 0, 0, printInfo.pageSetupScaleFactor, fullPageHeight, true);
    46304631
    46314632#if PLATFORM(GTK)
     
    46494650    Vector<IntRect> resultPageRects;
    46504651    double resultTotalScaleFactorForPrinting = 1;
    4651     computePagesForPrintingImpl(frameID, printInfo, resultPageRects, resultTotalScaleFactorForPrinting);
    4652     send(Messages::WebPageProxy::ComputedPagesCallback(resultPageRects, resultTotalScaleFactorForPrinting, callbackID));
    4653 }
    4654 
    4655 void WebPage::computePagesForPrintingImpl(uint64_t frameID, const PrintInfo& printInfo, Vector<WebCore::IntRect>& resultPageRects, double& resultTotalScaleFactorForPrinting)
     4652    auto computedPageMargin = printInfo.margin;
     4653    computePagesForPrintingImpl(frameID, printInfo, resultPageRects, resultTotalScaleFactorForPrinting, computedPageMargin);
     4654    send(Messages::WebPageProxy::ComputedPagesCallback(resultPageRects, resultTotalScaleFactorForPrinting, computedPageMargin, callbackID));
     4655}
     4656
     4657void WebPage::computePagesForPrintingImpl(uint64_t frameID, const PrintInfo& printInfo, Vector<WebCore::IntRect>& resultPageRects, double& resultTotalScaleFactorForPrinting, FloatBoxExtent& computedPageMargin)
    46564658{
    46574659    ASSERT(resultPageRects.isEmpty());
     
    46614663    if (m_printContext) {
    46624664        resultPageRects = m_printContext->pageRects();
    4663         resultTotalScaleFactorForPrinting = m_printContext->computeAutomaticScaleFactor(FloatSize(printInfo.availablePaperWidth, printInfo.availablePaperHeight)) * printInfo.pageSetupScaleFactor;
     4665        computedPageMargin = m_printContext->computedPageMargin(printInfo.margin);
     4666        auto computedPageSize = m_printContext->computedPageSize(FloatSize(printInfo.availablePaperWidth, printInfo.availablePaperHeight), printInfo.margin);
     4667        resultTotalScaleFactorForPrinting = m_printContext->computeAutomaticScaleFactor(computedPageSize) * printInfo.pageSetupScaleFactor;
    46644668    }
    46654669#if PLATFORM(COCOA)
  • trunk/Source/WebKit/WebProcess/WebPage/WebPage.h

    r244182 r244202  
    855855    void endPrinting();
    856856    void computePagesForPrinting(uint64_t frameID, const PrintInfo&, CallbackID);
    857     void computePagesForPrintingImpl(uint64_t frameID, const PrintInfo&, Vector<WebCore::IntRect>& pageRects, double& totalScaleFactor);
     857    void computePagesForPrintingImpl(uint64_t frameID, const PrintInfo&, Vector<WebCore::IntRect>& pageRects, double& totalScaleFactor, WebCore::FloatBoxExtent& computedMargin);
    858858
    859859#if PLATFORM(COCOA)
  • trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm

    r244056 r244202  
    32823282    Vector<WebCore::IntRect> pageRects;
    32833283    double totalScaleFactor;
    3284     computePagesForPrintingImpl(frameID, printInfo, pageRects, totalScaleFactor);
     3284    auto margin = printInfo.margin;
     3285    computePagesForPrintingImpl(frameID, printInfo, pageRects, totalScaleFactor, margin);
    32853286
    32863287    ASSERT(pageRects.size() >= 1);
Note: See TracChangeset for help on using the changeset viewer.