Browse Source

Merge branch 'master' into fixes/fix-skia-formatted-text-impl

pull/774/head
Steven Kirk 10 years ago
committed by GitHub
parent
commit
b9dbc8c11f
  1. 7
      readme.md
  2. 8
      src/Skia/Avalonia.Skia/PlatformRenderInterface.cs
  3. 8
      src/Skia/Avalonia.Skia/SkiaPlatform.cs
  4. 1
      src/Windows/Avalonia.Win32/WindowImpl.cs

7
readme.md

@ -25,6 +25,13 @@ You can find the packages here: ([stable(ish)](https://www.nuget.org/packages/Av
You can install the package like this:
`Install-Package Avalonia -Pre`
## Bleeding Edge Builds
Try out the latest build of Avalonia available for download here:
https://ci.appveyor.com/project/AvaloniaUI/Avalonia/branch/master/artifacts
Try out the ControlCatalog to give it a quick demo.
## Background
Avalonia is a multi-platform windowing toolkit - somewhat like WPF - that is intended to be multi-

8
src/Skia/Avalonia.Skia/PlatformRenderInterface.cs

@ -2,11 +2,12 @@ using System;
using System.IO;
using Avalonia.Media;
using Avalonia.Platform;
using Avalonia.Rendering;
using SkiaSharp;
namespace Avalonia.Skia
{
public class PlatformRenderInterface : IPlatformRenderInterface
public class PlatformRenderInterface : IPlatformRenderInterface, IRendererFactory
{
public IBitmapImpl CreateBitmap(int width, int height)
{
@ -48,6 +49,11 @@ namespace Avalonia.Skia
}
}
public IRenderer CreateRenderer(IRenderRoot root, IRenderLoop renderLoop)
{
return new Renderer(root, renderLoop);
}
public IRenderTargetBitmapImpl CreateRenderTargetBitmap(int width, int height)
{
if (width < 1)

8
src/Skia/Avalonia.Skia/SkiaPlatform.cs

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Text;
using Avalonia.Controls;
using Avalonia.Platform;
using Avalonia.Rendering;
namespace Avalonia
{
@ -23,7 +24,12 @@ namespace Avalonia.Skia
private static bool s_forceSoftwareRendering;
public static void Initialize()
=> AvaloniaLocator.CurrentMutable.Bind<IPlatformRenderInterface>().ToConstant(new PlatformRenderInterface());
{
var renderInterface = new PlatformRenderInterface();
AvaloniaLocator.CurrentMutable
.Bind<IPlatformRenderInterface>().ToConstant(renderInterface)
.Bind<IRendererFactory>().ToConstant(renderInterface);
}
public static bool ForceSoftwareRendering
{

1
src/Windows/Avalonia.Win32/WindowImpl.cs

@ -682,6 +682,7 @@ namespace Avalonia.Win32
}
UnmanagedMethods.ShowWindow(_hwnd, command);
UnmanagedMethods.SetFocus(_hwnd);
}
public void SetIcon(IWindowIconImpl icon)

Loading…
Cancel
Save