Index: Source/web/WebPluginContainerImpl.cpp |
diff --git a/Source/web/WebPluginContainerImpl.cpp b/Source/web/WebPluginContainerImpl.cpp |
index 5e5786fc29f3c41f38f7972ec97bd4c5e2cf4a1d..082a224fa574c8cae50f0cea1304dfe5102dab0b 100644 |
--- a/Source/web/WebPluginContainerImpl.cpp |
+++ b/Source/web/WebPluginContainerImpl.cpp |
@@ -352,8 +352,11 @@ int WebPluginContainerImpl::printBegin(const WebPrintParams& printParams) const |
return m_webPlugin->printBegin(printParams); |
} |
-bool WebPluginContainerImpl::printPage(int pageNumber, GraphicsContext* gc) |
+bool WebPluginContainerImpl::printPage(int pageNumber, GraphicsContext* gc, const IntRect& printRect) |
{ |
+ LayoutObjectDrawingRecorder drawingRecorder(*gc, *m_element->layoutObject(), DisplayItem::Type::WebPlugin, printRect); |
+ if (drawingRecorder.canUseCachedDrawing()) |
+ return true; |
gc->save(); |
WebCanvas* canvas = gc->canvas(); |
bool ret = m_webPlugin->printPage(pageNumber, canvas); |