diff --git a/samples/ControlCatalog.Web/App.razor.cs b/samples/ControlCatalog.Web/App.razor.cs index a6d7c0476a..6c9ce34acc 100644 --- a/samples/ControlCatalog.Web/App.razor.cs +++ b/samples/ControlCatalog.Web/App.razor.cs @@ -6,7 +6,8 @@ public partial class App { protected override void OnParametersSet() { - BlazorSingleViewLifetimeExtensions.SetupWithBlazorSingleViewLifetime(); + BlazorSingleViewLifetimeExtensions.UseBlazor() + .SetupWithSingleViewLifetime(); base.OnParametersSet(); } diff --git a/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs b/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs index 2cfab850b2..728aba3354 100644 --- a/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs +++ b/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs @@ -11,15 +11,19 @@ namespace Avalonia.Web.Blazor public static class BlazorSingleViewLifetimeExtensions { + public static T SetupWithSingleViewLifetime( + this T builder) + where T : AppBuilderBase, new() + { + return builder.SetupWithLifetime(new BlazorSingleViewLifetime()); + } - - public static AvaloniaBlazorAppBuilder SetupWithBlazorSingleViewLifetime() + public static AvaloniaBlazorAppBuilder UseBlazor() where TApp : Application, new() { var builder = AvaloniaBlazorAppBuilder.Configure() - .UseSkia() - .With(new SkiaOptions() { CustomGpuFactory = () => new BlazorSkiaGpu() }) - .SetupWithLifetime(new BlazorSingleViewLifetime()); + .UseSkia() + .With(new SkiaOptions { CustomGpuFactory = () => new BlazorSkiaGpu() }); AvaloniaLocator.CurrentMutable.Bind().ToConstant(new FontManager(new CustomFontManagerImpl()));