diff options
Diffstat (limited to 'src/core/render_widget_host_view_qt.cpp')
-rw-r--r-- | src/core/render_widget_host_view_qt.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp index 1c5382fe7..9706ac070 100644 --- a/src/core/render_widget_host_view_qt.cpp +++ b/src/core/render_widget_host_view_qt.cpp @@ -403,7 +403,18 @@ bool RenderWidgetHostViewQt::HasFocus() const bool RenderWidgetHostViewQt::IsSurfaceAvailableForCopy() const { - return false; + return true; +} + +void RenderWidgetHostViewQt::CopyFromSurface(const gfx::Rect &src_rect, + const gfx::Size &output_size, + base::OnceCallback<void(const SkBitmap &)> callback) +{ + QImage image; + if (m_delegate->copySurface(toQt(src_rect), toQt(output_size), image)) + std::move(callback).Run(toSkBitmap(image)); + else + std::move(callback).Run(SkBitmap()); } void RenderWidgetHostViewQt::Show() |