diff --git a/src/Skia/Avalonia.Skia/DrawingContextImpl.cs b/src/Skia/Avalonia.Skia/DrawingContextImpl.cs
index d818e683c3..b93d0f8868 100644
--- a/src/Skia/Avalonia.Skia/DrawingContextImpl.cs
+++ b/src/Skia/Avalonia.Skia/DrawingContextImpl.cs
@@ -44,7 +44,7 @@ namespace Avalonia.Skia
///
/// Canvas to draw to.
///
- public SKCanvas Canvas;
+ public SKSurface Surface;
///
/// Dpi of drawings.
@@ -81,8 +81,8 @@ namespace Avalonia.Skia
_grContext = createInfo.GrContext;
if (_grContext != null)
Monitor.Enter(_grContext);
-
- Canvas = createInfo.Canvas;
+ Surface = createInfo.Surface;
+ Canvas = createInfo.Surface.Canvas;
if (Canvas == null)
{
@@ -102,8 +102,10 @@ namespace Avalonia.Skia
/// Skia canvas.
///
public SKCanvas Canvas { get; }
+ public SKSurface Surface { get; }
SKCanvas ISkiaDrawingContextImpl.SkCanvas => Canvas;
+ SKSurface ISkiaDrawingContextImpl.SkSurface => Surface;
GRContext ISkiaDrawingContextImpl.GrContext => _grContext;
///
diff --git a/src/Skia/Avalonia.Skia/FramebufferRenderTarget.cs b/src/Skia/Avalonia.Skia/FramebufferRenderTarget.cs
index 8b04676b09..8d35d27a81 100644
--- a/src/Skia/Avalonia.Skia/FramebufferRenderTarget.cs
+++ b/src/Skia/Avalonia.Skia/FramebufferRenderTarget.cs
@@ -52,7 +52,7 @@ namespace Avalonia.Skia
var createInfo = new DrawingContextImpl.CreateInfo
{
- Canvas = canvas,
+ Surface = _framebufferSurface,
Dpi = framebuffer.Dpi,
VisualBrushRenderer = visualBrushRenderer,
DisableTextLcdRendering = true
diff --git a/src/Skia/Avalonia.Skia/Gpu/ISkiaGpuRenderSession.cs b/src/Skia/Avalonia.Skia/Gpu/ISkiaGpuRenderSession.cs
index c54d1bd859..a4e2bfed52 100644
--- a/src/Skia/Avalonia.Skia/Gpu/ISkiaGpuRenderSession.cs
+++ b/src/Skia/Avalonia.Skia/Gpu/ISkiaGpuRenderSession.cs
@@ -16,7 +16,7 @@ namespace Avalonia.Skia
///
/// Canvas that will be used to render.
///
- SKCanvas Canvas { get; }
+ SKSurface SkSurface { get; }
///
/// Scaling factor.
diff --git a/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs b/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs
index e0b7019672..2bb739f372 100644
--- a/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs
+++ b/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs
@@ -49,7 +49,7 @@ namespace Avalonia.Skia
}
public GRContext GrContext { get; }
- public SKCanvas Canvas => _surface.Canvas;
+ public SKSurface SkSurface => _surface;
public double ScaleFactor => _glSession.Scaling;
}
diff --git a/src/Skia/Avalonia.Skia/Gpu/SkiaGpuRenderTarget.cs b/src/Skia/Avalonia.Skia/Gpu/SkiaGpuRenderTarget.cs
index 94e513b2fd..ef5da5eb08 100644
--- a/src/Skia/Avalonia.Skia/Gpu/SkiaGpuRenderTarget.cs
+++ b/src/Skia/Avalonia.Skia/Gpu/SkiaGpuRenderTarget.cs
@@ -27,7 +27,7 @@ namespace Avalonia.Skia
var nfo = new DrawingContextImpl.CreateInfo
{
GrContext = session.GrContext,
- Canvas = session.Canvas,
+ Surface = session.SkSurface,
Dpi = SkiaPlatform.DefaultDpi * session.ScaleFactor,
VisualBrushRenderer = visualBrushRenderer,
DisableTextLcdRendering = true
diff --git a/src/Skia/Avalonia.Skia/ISkiaDrawingContextImpl.cs b/src/Skia/Avalonia.Skia/ISkiaDrawingContextImpl.cs
index a9b91384d7..38fa5a5253 100644
--- a/src/Skia/Avalonia.Skia/ISkiaDrawingContextImpl.cs
+++ b/src/Skia/Avalonia.Skia/ISkiaDrawingContextImpl.cs
@@ -7,5 +7,6 @@ namespace Avalonia.Skia
{
SKCanvas SkCanvas { get; }
GRContext GrContext { get; }
+ SKSurface SkSurface { get; }
}
}
diff --git a/src/Skia/Avalonia.Skia/SurfaceRenderTarget.cs b/src/Skia/Avalonia.Skia/SurfaceRenderTarget.cs
index 588f7bee6c..27b29c6e1e 100644
--- a/src/Skia/Avalonia.Skia/SurfaceRenderTarget.cs
+++ b/src/Skia/Avalonia.Skia/SurfaceRenderTarget.cs
@@ -70,7 +70,7 @@ namespace Avalonia.Skia
var createInfo = new DrawingContextImpl.CreateInfo
{
- Canvas = _canvas,
+ Surface = _surface,
Dpi = Dpi,
VisualBrushRenderer = visualBrushRenderer,
DisableTextLcdRendering = _disableLcdRendering,