diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index a1d2625a47..6e727b7cde 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -26,7 +26,7 @@ ## Obsoletions / Deprecations - + ## Fixed issues - - - CP0001 - T:Avalonia.Android.Platform.Specific.IAndroidView - baseline/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - current/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - - - CP0002 - M:Avalonia.Android.AvaloniaMainActivity.CreateAppBuilder - baseline/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - current/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - - - CP0002 - M:Avalonia.Android.AvaloniaMainActivity.CustomizeAppBuilder(Avalonia.AppBuilder) - baseline/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - current/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - - - CP0008 - T:Avalonia.Android.AvaloniaActivity - baseline/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - current/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - - - CP0008 - T:Avalonia.Android.AvaloniaMainActivity - baseline/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - current/Avalonia.Android/lib/net10.0-android36.0/Avalonia.Android.dll - - diff --git a/api/Avalonia.Headless.XUnit.nupkg.xml b/api/Avalonia.Headless.XUnit.nupkg.xml deleted file mode 100644 index c87cf909fe..0000000000 --- a/api/Avalonia.Headless.XUnit.nupkg.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CP0001 - T:Avalonia.Headless.XUnit.AvaloniaTestFrameworkTypeDiscoverer - baseline/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - - - CP0001 - T:Avalonia.Headless.XUnit.AvaloniaUIFactDiscoverer - baseline/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - - - CP0001 - T:Avalonia.Headless.XUnit.AvaloniaTestFrameworkTypeDiscoverer - baseline/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - - - CP0001 - T:Avalonia.Headless.XUnit.AvaloniaUIFactDiscoverer - baseline/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - - - CP0002 - M:Avalonia.Headless.XUnit.AvaloniaFactAttribute.#ctor - baseline/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - - - CP0002 - M:Avalonia.Headless.XUnit.AvaloniaTheoryDiscoverer.#ctor(Xunit.Abstractions.IMessageSink) - baseline/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - - - CP0002 - M:Avalonia.Headless.XUnit.AvaloniaFactAttribute.#ctor - baseline/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - - - CP0002 - M:Avalonia.Headless.XUnit.AvaloniaTheoryDiscoverer.#ctor(Xunit.Abstractions.IMessageSink) - baseline/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - - - CP0007 - T:Avalonia.Headless.XUnit.AvaloniaTheoryDiscoverer - baseline/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - - - CP0007 - T:Avalonia.Headless.XUnit.AvaloniaTheoryDiscoverer - baseline/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - - - CP0008 - T:Avalonia.Headless.XUnit.AvaloniaTestFrameworkAttribute - baseline/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net10.0/Avalonia.Headless.XUnit.dll - - - CP0008 - T:Avalonia.Headless.XUnit.AvaloniaTestFrameworkAttribute - baseline/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - current/Avalonia.Headless.XUnit/lib/net8.0/Avalonia.Headless.XUnit.dll - - diff --git a/api/Avalonia.Headless.nupkg.xml b/api/Avalonia.Headless.nupkg.xml deleted file mode 100644 index 229047057a..0000000000 --- a/api/Avalonia.Headless.nupkg.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - CP0002 - M:Avalonia.Headless.HeadlessWindowExtensions.DragDrop(Avalonia.Controls.TopLevel,Avalonia.Point,Avalonia.Input.Raw.RawDragEventType,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects,Avalonia.Input.RawInputModifiers) - baseline/Avalonia.Headless/lib/net10.0/Avalonia.Headless.dll - current/Avalonia.Headless/lib/net10.0/Avalonia.Headless.dll - - - CP0002 - M:Avalonia.Headless.HeadlessWindowExtensions.KeyPress(Avalonia.Controls.TopLevel,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers) - baseline/Avalonia.Headless/lib/net10.0/Avalonia.Headless.dll - current/Avalonia.Headless/lib/net10.0/Avalonia.Headless.dll - - - CP0002 - M:Avalonia.Headless.HeadlessWindowExtensions.KeyRelease(Avalonia.Controls.TopLevel,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers) - baseline/Avalonia.Headless/lib/net10.0/Avalonia.Headless.dll - current/Avalonia.Headless/lib/net10.0/Avalonia.Headless.dll - - - CP0002 - M:Avalonia.Headless.HeadlessWindowExtensions.DragDrop(Avalonia.Controls.TopLevel,Avalonia.Point,Avalonia.Input.Raw.RawDragEventType,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects,Avalonia.Input.RawInputModifiers) - baseline/Avalonia.Headless/lib/net8.0/Avalonia.Headless.dll - current/Avalonia.Headless/lib/net8.0/Avalonia.Headless.dll - - - CP0002 - M:Avalonia.Headless.HeadlessWindowExtensions.KeyPress(Avalonia.Controls.TopLevel,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers) - baseline/Avalonia.Headless/lib/net8.0/Avalonia.Headless.dll - current/Avalonia.Headless/lib/net8.0/Avalonia.Headless.dll - - - CP0002 - M:Avalonia.Headless.HeadlessWindowExtensions.KeyRelease(Avalonia.Controls.TopLevel,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers) - baseline/Avalonia.Headless/lib/net8.0/Avalonia.Headless.dll - current/Avalonia.Headless/lib/net8.0/Avalonia.Headless.dll - - diff --git a/api/Avalonia.LinuxFramebuffer.nupkg.xml b/api/Avalonia.LinuxFramebuffer.nupkg.xml deleted file mode 100644 index 0fa6ef4e03..0000000000 --- a/api/Avalonia.LinuxFramebuffer.nupkg.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - CP0002 - M:Avalonia.LinuxFramebuffer.FbdevOutput.CreateFramebufferRenderTarget - baseline/Avalonia.LinuxFramebuffer/lib/net10.0/Avalonia.LinuxFramebuffer.dll - current/Avalonia.LinuxFramebuffer/lib/net10.0/Avalonia.LinuxFramebuffer.dll - - - CP0002 - M:Avalonia.LinuxFramebuffer.FbdevOutput.Lock - baseline/Avalonia.LinuxFramebuffer/lib/net10.0/Avalonia.LinuxFramebuffer.dll - current/Avalonia.LinuxFramebuffer/lib/net10.0/Avalonia.LinuxFramebuffer.dll - - - CP0002 - M:Avalonia.LinuxFramebuffer.FbdevOutput.CreateFramebufferRenderTarget - baseline/Avalonia.LinuxFramebuffer/lib/net8.0/Avalonia.LinuxFramebuffer.dll - current/Avalonia.LinuxFramebuffer/lib/net8.0/Avalonia.LinuxFramebuffer.dll - - - CP0002 - M:Avalonia.LinuxFramebuffer.FbdevOutput.Lock - baseline/Avalonia.LinuxFramebuffer/lib/net8.0/Avalonia.LinuxFramebuffer.dll - current/Avalonia.LinuxFramebuffer/lib/net8.0/Avalonia.LinuxFramebuffer.dll - - - CP0008 - T:Avalonia.LinuxFramebuffer.FbdevOutput - baseline/Avalonia.LinuxFramebuffer/lib/net10.0/Avalonia.LinuxFramebuffer.dll - current/Avalonia.LinuxFramebuffer/lib/net10.0/Avalonia.LinuxFramebuffer.dll - - - CP0008 - T:Avalonia.LinuxFramebuffer.FbdevOutput - baseline/Avalonia.LinuxFramebuffer/lib/net8.0/Avalonia.LinuxFramebuffer.dll - current/Avalonia.LinuxFramebuffer/lib/net8.0/Avalonia.LinuxFramebuffer.dll - - diff --git a/api/Avalonia.Skia.nupkg.xml b/api/Avalonia.Skia.nupkg.xml deleted file mode 100644 index b73745af8e..0000000000 --- a/api/Avalonia.Skia.nupkg.xml +++ /dev/null @@ -1,172 +0,0 @@ - - - - - CP0001 - T:Avalonia.Skia.ISkiaGpu - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0001 - T:Avalonia.Skia.ISkiaGpuRenderTarget2 - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0001 - T:Avalonia.Skia.ISkiaGpuWithPlatformGraphicsContext - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0001 - T:Avalonia.Skia.ISkiaGpu - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0001 - T:Avalonia.Skia.ISkiaGpuRenderTarget2 - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0001 - T:Avalonia.Skia.ISkiaGpuWithPlatformGraphicsContext - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.Helpers.DrawingContextHelper.WrapSkiaCanvas(SkiaSharp.SKCanvas,Avalonia.Vector) - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.ISkiaGpu.TryCreateRenderTarget(System.Collections.Generic.IEnumerable{System.Object}) - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.Helpers.DrawingContextHelper.WrapSkiaCanvas(SkiaSharp.SKCanvas,Avalonia.Vector) - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.ISkiaGpu.TryCreateRenderTarget(System.Collections.Generic.IEnumerable{System.Object}) - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0002 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpu.TryCreateRenderTarget(System.Collections.Generic.IEnumerable{Avalonia.Platform.Surfaces.IPlatformRenderSurface}) - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpu.TryGetGrContext - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo) - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0006 - P:Avalonia.Skia.ISkiaGpu.PlatformGraphicsContext - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpu.TryCreateRenderTarget(System.Collections.Generic.IEnumerable{Avalonia.Platform.Surfaces.IPlatformRenderSurface}) - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpu.TryGetGrContext - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo) - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0006 - M:Avalonia.Skia.ISkiaGpuRenderTarget.BeginRenderingSession(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0006 - P:Avalonia.Skia.ISkiaGpu.PlatformGraphicsContext - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0008 - T:Avalonia.Skia.ISkiaGpu - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0008 - T:Avalonia.Skia.ISkiaGpuWithPlatformGraphicsContext - baseline/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net10.0/Avalonia.Skia.dll - - - CP0008 - T:Avalonia.Skia.ISkiaGpu - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - - CP0008 - T:Avalonia.Skia.ISkiaGpuWithPlatformGraphicsContext - baseline/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - current/Avalonia.Skia/lib/net8.0/Avalonia.Skia.dll - - diff --git a/api/Avalonia.Win32.Interoperability.nupkg.xml b/api/Avalonia.Win32.Interoperability.nupkg.xml deleted file mode 100644 index 3672bb9b99..0000000000 --- a/api/Avalonia.Win32.Interoperability.nupkg.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - CP0002 - M:Avalonia.Win32.Interoperability.WinFormsAvaloniaControlHost.PreFilterMessage(System.Windows.Forms.Message@) - baseline/Avalonia.Win32.Interoperability/lib/net461/Avalonia.Win32.Interoperability.dll - current/Avalonia.Win32.Interoperability/lib/net461/Avalonia.Win32.Interoperability.dll - - - CP0002 - M:Avalonia.Win32.Interoperability.WinFormsAvaloniaControlHost.PreFilterMessage(System.Windows.Forms.Message@) - baseline/Avalonia.Win32.Interoperability/lib/net6.0-windows7.0/Avalonia.Win32.Interoperability.dll - current/Avalonia.Win32.Interoperability/lib/net6.0-windows7.0/Avalonia.Win32.Interoperability.dll - - - CP0002 - M:Avalonia.Win32.Interoperability.WinFormsAvaloniaControlHost.PreFilterMessage(System.Windows.Forms.Message@) - baseline/Avalonia.Win32.Interoperability/lib/net8.0-windows7.0/Avalonia.Win32.Interoperability.dll - current/Avalonia.Win32.Interoperability/lib/net8.0-windows7.0/Avalonia.Win32.Interoperability.dll - - - CP0008 - T:Avalonia.Win32.Interoperability.WinFormsAvaloniaControlHost - baseline/Avalonia.Win32.Interoperability/lib/net461/Avalonia.Win32.Interoperability.dll - current/Avalonia.Win32.Interoperability/lib/net461/Avalonia.Win32.Interoperability.dll - - - CP0008 - T:Avalonia.Win32.Interoperability.WinFormsAvaloniaControlHost - baseline/Avalonia.Win32.Interoperability/lib/net6.0-windows7.0/Avalonia.Win32.Interoperability.dll - current/Avalonia.Win32.Interoperability/lib/net6.0-windows7.0/Avalonia.Win32.Interoperability.dll - - - CP0008 - T:Avalonia.Win32.Interoperability.WinFormsAvaloniaControlHost - baseline/Avalonia.Win32.Interoperability/lib/net8.0-windows7.0/Avalonia.Win32.Interoperability.dll - current/Avalonia.Win32.Interoperability/lib/net8.0-windows7.0/Avalonia.Win32.Interoperability.dll - - diff --git a/api/Avalonia.nupkg.xml b/api/Avalonia.nupkg.xml deleted file mode 100644 index b2a81dd55d..0000000000 --- a/api/Avalonia.nupkg.xml +++ /dev/null @@ -1,5644 +0,0 @@ - - - - - CP0001 - T:Avalonia.Animation.CustomAnimatorBase - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Animation.CustomAnimatorBase`1 - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Animation.Easings.CubicBezierEasing - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Controls.Primitives.IScrollable - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.BindingPlugins - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.DataValidationBase - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.ExceptionValidationPlugin - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IDataValidationPlugin - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IndeiValidationPlugin - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IPropertyAccessorPlugin - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IStreamPlugin - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.PropertyAccessorBase - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.PropertyError - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Diagnostics.AppliedStyle - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Diagnostics.StyledElementExtensions - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Diagnostics.StyleDiagnostics - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.DataObjectExtensions - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.Gestures - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.GotFocusEventArgs - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.IDataObject - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.IKeyboardNavigationHandler - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.KeyboardNavigationHandler - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.TextInput.ITextInputMethodRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Layout.IEmbeddedLayoutRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Layout.ILayoutRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Layout.LayoutManager - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Media.Fonts.FontFamilyLoader - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Media.TextFormatting.TextRange - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IGeometryContext2 - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IOptionalFeatureProvider - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IReadableBitmapWithAlphaImpl - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IRenderTarget2 - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IRenderTargetWithProperties - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.OptionalFeatureProviderExtensions - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Rendering.IHitTester - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Rendering.IRenderer - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Rendering.IRenderRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Styling.IStyleable - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Utilities.MathUtilities - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Utilities.StringTokenizer - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.VisualTree.IHostedVisualTreeRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetimeOptions - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.ApplicationLifetimes.IActivatableApplicationLifetime - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.AutoCompleteBox.BindingEvaluator`1 - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Chrome.CaptionButtons - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Chrome.TitleBar - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.ContextRequestedEventArgs - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Diagnostics.IPopupHostProvider - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.FileDialog - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.FileDialogFilter - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.FileSystemDialog - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Generators.TreeContainerIndex - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Generators.TreeItemContainerGenerator - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.NativeMenuItemToggleType - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.OpenFileDialog - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.OpenFolderDialog - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.ISystemDialogImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.ManagedDispatcherImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.FramebufferLockProperties - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.FuncFramebufferRenderTarget - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.IFramebufferPlatformSurface - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.IFramebufferRenderTarget - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.IFramebufferRenderTargetWithProperties - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.ChromeOverlayLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.IPopupHost - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.IScrollable - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.LightDismissOverlayLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.OverlayLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.SelectionHandleType - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Remote.RemoteServer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Remote.RemoteWidget - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.SaveFileDialog - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.SystemDecorations - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.SystemDialog - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Platform.ExtendClientAreaChromeHints - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Platform.IApplicationPlatformEvents - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Markup.Xaml.ConstructorArgumentAttribute - baseline/Avalonia/lib/net10.0/Avalonia.Markup.Xaml.dll - current/Avalonia/lib/net10.0/Avalonia.Markup.Xaml.dll - - - CP0001 - T:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget2 - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0001 - T:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTargetWithCorruptionInfo - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0001 - T:Avalonia.Media.Fonts.FontFamilyLoader - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Animation.CustomAnimatorBase - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Animation.CustomAnimatorBase`1 - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Animation.Easings.CubicBezierEasing - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Controls.Primitives.IScrollable - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.BindingPlugins - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.DataValidationBase - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.ExceptionValidationPlugin - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IDataValidationPlugin - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IndeiValidationPlugin - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IPropertyAccessorPlugin - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.IStreamPlugin - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.PropertyAccessorBase - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Data.Core.Plugins.PropertyError - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Diagnostics.AppliedStyle - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Diagnostics.StyledElementExtensions - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Diagnostics.StyleDiagnostics - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.DataObjectExtensions - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.Gestures - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.GotFocusEventArgs - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.IDataObject - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.IKeyboardNavigationHandler - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.KeyboardNavigationHandler - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Input.TextInput.ITextInputMethodRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Layout.IEmbeddedLayoutRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Layout.ILayoutRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Layout.LayoutManager - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Media.Fonts.FontFamilyLoader - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Media.TextFormatting.TextRange - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IGeometryContext2 - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IOptionalFeatureProvider - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IReadableBitmapWithAlphaImpl - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IRenderTarget2 - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.IRenderTargetWithProperties - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Platform.OptionalFeatureProviderExtensions - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Rendering.IHitTester - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Rendering.IRenderer - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Rendering.IRenderRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Styling.IStyleable - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Utilities.MathUtilities - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Utilities.StringTokenizer - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.VisualTree.IHostedVisualTreeRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0001 - T:Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetimeOptions - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.ApplicationLifetimes.IActivatableApplicationLifetime - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.AutoCompleteBox.BindingEvaluator`1 - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Chrome.CaptionButtons - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Chrome.TitleBar - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.ContextRequestedEventArgs - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Diagnostics.IPopupHostProvider - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.FileDialog - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.FileDialogFilter - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.FileSystemDialog - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Generators.TreeContainerIndex - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Generators.TreeItemContainerGenerator - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.NativeMenuItemToggleType - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.OpenFileDialog - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.OpenFolderDialog - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.ISystemDialogImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.ManagedDispatcherImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.FramebufferLockProperties - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.FuncFramebufferRenderTarget - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.IFramebufferPlatformSurface - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.IFramebufferRenderTarget - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Platform.Surfaces.IFramebufferRenderTargetWithProperties - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.ChromeOverlayLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.IPopupHost - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.IScrollable - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.LightDismissOverlayLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.OverlayLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Primitives.SelectionHandleType - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Remote.RemoteServer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.Remote.RemoteWidget - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.SaveFileDialog - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.SystemDecorations - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Controls.SystemDialog - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Platform.ExtendClientAreaChromeHints - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Platform.IApplicationPlatformEvents - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0001 - T:Avalonia.Markup.Xaml.ConstructorArgumentAttribute - baseline/Avalonia/lib/net8.0/Avalonia.Markup.Xaml.dll - current/Avalonia/lib/net8.0/Avalonia.Markup.Xaml.dll - - - CP0001 - T:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget2 - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0001 - T:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTargetWithCorruptionInfo - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0001 - T:Avalonia.Media.Fonts.FontFamilyLoader - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Controls.ResourcesChangedEventArgs.Empty - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Data.BindingPriority.TemplatedParent - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.DataFormats.FileNames - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.DataFormats.Files - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.DataFormats.Text - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.CrossAxisCancelThresholdProperty - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.EdgeSizeProperty - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.HoldingState.Cancelled - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.InputElement.GotFocusEvent - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.InputElement.LostFocusEvent - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Media.DrawingImage.ViewboxProperty - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Media.Fonts.FontCollectionBase._glyphTypefaceCache - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Media.RadialGradientBrush.RadiusProperty - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Animation.Animation.SetAnimator(Avalonia.Animation.IAnimationSetter,Avalonia.Animation.CustomAnimatorBase) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.AvaloniaObjectExtensions.Bind(Avalonia.AvaloniaObject,Avalonia.AvaloniaProperty,Avalonia.Data.BindingBase,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Controls.ResourcesChangedEventArgs.#ctor - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.SetRawSource(System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.StreamObservable - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.StreamTask - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.TypeCast(System.Type) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.ReflectionBinding.#ctor(System.String,Avalonia.Data.BindingMode) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.Contains(System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.Get(System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.GetDataFormats - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.Set(System.String,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DragDrop.DoDragDrop(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DragEventArgs.#ctor(Avalonia.Interactivity.RoutedEvent{Avalonia.Input.DragEventArgs},Avalonia.Input.IDataObject,Avalonia.Interactivity.Interactive,Avalonia.Point,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DragEventArgs.get_Data - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.#ctor(Avalonia.Input.IInputElement) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.ClearFocus - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.ClearFocusOnElementRemoved(Avalonia.Input.IInputElement,Avalonia.Visual) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.FindNextElement(Avalonia.Input.NavigationDirection) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.TryMoveFocus(Avalonia.Input.NavigationDirection) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.get_CrossAxisCancelThreshold - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.get_EdgeSize - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.set_CrossAxisCancelThreshold(System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.set_EdgeSize(System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.HoldingRoutedEventArgs.#ctor(Avalonia.Input.HoldingState,Avalonia.Point,Avalonia.Input.PointerType) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IFocusManager.ClearFocus - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_KeyboardNavigationHandler - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_PlatformSettings - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_PointerOverElement - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_ShowAccessKeys - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.set_PointerOverElement(Avalonia.Input.IInputElement) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.set_ShowAccessKeys(System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IKeyboardNavigationHandler.Move(Avalonia.Input.IInputElement,Avalonia.Input.NavigationDirection,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPinchEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEndedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPinchHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPointerTouchPadGestureMagnifyHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPointerTouchPadGestureRotateHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPointerTouchPadGestureSwipeHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPullGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEndedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPullGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddScrollGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEndedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddScrollGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddScrollGestureInertiaStartingHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureInertiaStartingEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.OnGotFocus(Avalonia.Input.GotFocusEventArgs) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.OnLostFocus(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePinchEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEndedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePinchHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePointerTouchPadGestureMagnifyHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePointerTouchPadGestureRotateHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePointerTouchPadGestureSwipeHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePullGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEndedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePullGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemoveScrollGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEndedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemoveScrollGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemoveScrollGestureInertiaStartingHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureInertiaStartingEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.KeyboardNavigationHandler.Move(Avalonia.Input.IInputElement,Avalonia.Input.NavigationDirection,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.GetDataAsync(System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.GetFormatsAsync - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.GetTextAsync - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.SetDataObjectAsync(Avalonia.Input.IDataObject) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.SetTextAsync(System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.TryGetInProcessDataObjectAsync - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IPlatformDragSource.DoDragDrop(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawDragEvent.#ctor(Avalonia.Input.Raw.IDragDropDevice,Avalonia.Input.Raw.RawDragEventType,Avalonia.Input.IInputRoot,Avalonia.Point,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects,Avalonia.Input.RawInputModifiers) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawDragEvent.get_Data - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawKeyEventArgs.#ctor(Avalonia.Input.IInputDevice,System.UInt64,Avalonia.Input.IInputRoot,Avalonia.Input.Raw.RawKeyEventType,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers,Avalonia.Input.PhysicalKey,Avalonia.Input.KeyDeviceType,System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawKeyEventArgs.#ctor(Avalonia.Input.IInputDevice,System.UInt64,Avalonia.Input.IInputRoot,Avalonia.Input.Raw.RawKeyEventType,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers,Avalonia.Input.PhysicalKey,System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawKeyEventArgs.#ctor(Avalonia.Input.IKeyboardDevice,System.UInt64,Avalonia.Input.IInputRoot,Avalonia.Input.Raw.RawKeyEventType,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.SwipeGestureEventArgs.#ctor(System.Int32,Avalonia.Input.SwipeDirection,Avalonia.Vector,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.SwipeGestureEventArgs.get_StartPoint - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.TextInput.TextInputMethodClient.ShowInputPanel - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Layout.LayoutHelper.RoundLayoutSizeUp(Avalonia.Size,System.Double,System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Layout.LayoutHelper.RoundLayoutThickness(Avalonia.Thickness,System.Double,System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Color.ToUint32 - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingContext.PushPostTransform(Avalonia.Matrix) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingContext.PushPreTransform(Avalonia.Matrix) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingContext.PushTransformContainer - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingImage.get_Viewbox - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingImage.set_Viewbox(System.Nullable{Avalonia.Rect}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.FontCollectionBase.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.FontCollectionBase.TryGetGlyphTypeface(System.String,Avalonia.Media.Fonts.FontCollectionKey,Avalonia.Media.GlyphTypeface@) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.IFontCollection.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Imaging.Bitmap.CopyPixels(Avalonia.Platform.ILockedFramebuffer,Avalonia.Platform.AlphaFormat) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Immutable.ImmutableRadialGradientBrush.get_Radius - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.IRadialGradientBrush.get_Radius - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.RadialGradientBrush.get_Radius - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.RadialGradientBrush.set_Radius(System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.LineTo(Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.GenericTextRunProperties.#ctor(Avalonia.Media.Typeface,Avalonia.Media.FontFeatureCollection,System.Double,Avalonia.Media.TextDecorationCollection,Avalonia.Media.IBrush,Avalonia.Media.IBrush,Avalonia.Media.BaselineAlignment,System.Globalization.CultureInfo) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.GenericTextRunProperties.#ctor(Avalonia.Media.Typeface,System.Double,Avalonia.Media.TextDecorationCollection,Avalonia.Media.IBrush,Avalonia.Media.IBrush,Avalonia.Media.BaselineAlignment,System.Globalization.CultureInfo) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextCollapsingProperties.CreateCollapsedRuns(Avalonia.Media.TextFormatting.TextLine,System.Int32,Avalonia.Media.FlowDirection,Avalonia.Media.TextFormatting.TextRun) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextLayout.#ctor(System.String,Avalonia.Media.Typeface,Avalonia.Media.FontFeatureCollection,System.Double,Avalonia.Media.IBrush,Avalonia.Media.TextAlignment,Avalonia.Media.TextWrapping,Avalonia.Media.TextTrimming,Avalonia.Media.TextDecorationCollection,Avalonia.Media.FlowDirection,System.Double,System.Double,System.Double,System.Double,System.Int32,System.Collections.Generic.IReadOnlyList{Avalonia.Utilities.ValueSpan{Avalonia.Media.TextFormatting.TextRunProperties}}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextLayout.#ctor(System.String,Avalonia.Media.Typeface,System.Double,Avalonia.Media.IBrush,Avalonia.Media.TextAlignment,Avalonia.Media.TextWrapping,Avalonia.Media.TextTrimming,Avalonia.Media.TextDecorationCollection,Avalonia.Media.FlowDirection,System.Double,System.Double,System.Double,System.Double,System.Int32,System.Collections.Generic.IReadOnlyList{Avalonia.Utilities.ValueSpan{Avalonia.Media.TextFormatting.TextRunProperties}}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextShaperOptions.#ctor(Avalonia.Media.GlyphTypeface,System.Collections.Generic.IReadOnlyList{Avalonia.Media.FontFeature},System.Double,System.SByte,System.Globalization.CultureInfo,System.Double,System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextShaperOptions.#ctor(Avalonia.Media.GlyphTypeface,System.Double,System.SByte,System.Globalization.CultureInfo,System.Double,System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.ICursorFactory.CreateCursor(Avalonia.Platform.IBitmapImpl,Avalonia.PixelPoint) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IDrawingContextImplWithEffects.PushEffect(Avalonia.Media.IEffect) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.LineTo(Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateOffscreenRenderTarget(Avalonia.PixelSize,System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{System.Object}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(Avalonia.PixelSize,Avalonia.Platform.RenderTargetDrawingContextProperties@) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.LockedFramebuffer.#ctor(System.IntPtr,Avalonia.PixelSize,System.Int32,Avalonia.Vector,Avalonia.Platform.PixelFormat,System.Action) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.Composition.ICompositionGpuImportedObject.get_ImportCompeted - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.Start - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.Stop - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.IRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.IRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SceneInvalidatedEventArgs.#ctor(Avalonia.Rendering.IRenderRoot,Avalonia.Rect) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SceneInvalidatedEventArgs.get_RenderRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SleepLoopRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SleepLoopRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.ThreadProxyRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.ThreadProxyRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Utilities.AvaloniaResourcesIndexReaderWriter.WriteResources(System.IO.Stream,System.Collections.Generic.List{System.ValueTuple{System.String,System.Int32,System.Func{System.IO.Stream}}}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visual.get_VisualRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.LineTo(Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.VisualTree.VisualExtensions.GetVisualRoot(Avalonia.Visual) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.VisualTreeAttachmentEventArgs.#ctor(Avalonia.Visual,Avalonia.Rendering.IRenderRoot) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.VisualTreeAttachmentEventArgs.get_Root - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Controls.ContextMenu.PlacementModeProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Control.ContextRequestedEvent - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Documents.Inline.TextDecorationsProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.DrawerPage.DrawerBreakpointWidthProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.NativeMenuBar.EnableMenuItemClickForwardingProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.NativeMenuItem.ToggleTypeProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.FlyoutBase.IsOpenProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.Popup.PlacementModeProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.ToggleButton.CheckedEvent - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.ToggleButton.IndeterminateEvent - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.ToggleButton.UncheckedEvent - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.VisualLayerManager.ChromeOverlayLayerProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TabItem.IconProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TextBlock.LetterSpacingProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TextBox.LetterSpacingProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TopLevel.PointerOverElementProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Window.ExtendClientAreaChromeHintsProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Window.SystemDecorationsProperty - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.AppBuilder.get_LifetimeOverride - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Application.add_UrlsOpened(System.EventHandler{Avalonia.UrlOpenedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Application.remove_UrlsOpened(System.EventHandler{Avalonia.UrlOpenedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Automation.Peers.AutomationPeer.GetVisualRootCore - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.ContextMenu.get_PlacementMode - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.ContextMenu.set_PlacementMode(Avalonia.Controls.PlacementMode) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.CreatePreviewWithControl(System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.GetDataContext(Avalonia.Controls.Templates.IDataTemplate) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.GetPreviewWith(Avalonia.Controls.Templates.IDataTemplate) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.GetPreviewWith(Avalonia.Styling.IStyle) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetDataContext(Avalonia.Controls.Templates.IDataTemplate,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.AvaloniaObject,Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.AvaloniaObject,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Controls.ResourceDictionary,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Controls.Templates.IDataTemplate,Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Controls.Templates.IDataTemplate,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Styling.IStyle,Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Styling.IStyle,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.DrawerPage.get_DrawerBreakpointWidth - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.DrawerPage.set_DrawerBreakpointWidth(System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase.get_Surfaces - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Generators.ItemContainerGenerator.ContainerFromIndex(System.Int32) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Generators.ItemContainerGenerator.IndexFromContainer(Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.ItemsControl.ItemsControlFromItemContaner(Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.NativeMenuBar.SetEnableMenuItemClickForwarding(Avalonia.Controls.MenuItem,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.NativeMenuItem.get_ToggleType - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.PageSelectionChangedEventArgs.#ctor(Avalonia.Controls.Page,Avalonia.Controls.Page) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.DefaultMenuInteractionHandler.GotFocus(System.Object,Avalonia.Input.GotFocusEventArgs) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.IInsetsManager.get_DisplayEdgeToEdge - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.IInsetsManager.set_DisplayEdgeToEdge(System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.InsetsManagerBase.get_DisplayEdgeToEdge - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.InsetsManagerBase.set_DisplayEdgeToEdge(System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.AccessText.get_AccessKey - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.AdornerLayer.#ctor - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.#ctor(Avalonia.Controls.Primitives.OverlayLayer) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.ConfigurePosition(Avalonia.Visual,Avalonia.Controls.PlacementMode,Avalonia.Point,Avalonia.Controls.Primitives.PopupPositioning.PopupAnchor,Avalonia.Controls.Primitives.PopupPositioning.PopupGravity,Avalonia.Controls.Primitives.PopupPositioning.PopupPositionerConstraintAdjustment,System.Nullable{Avalonia.Rect}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.CreatePopupHost(Avalonia.Visual,Avalonia.IAvaloniaDependencyResolver,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.CreatePopupHost(Avalonia.Visual,Avalonia.IAvaloniaDependencyResolver) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.SetChild(Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.TakeFocus - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.Popup.get_Host - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.Popup.get_PlacementMode - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.Popup.set_PlacementMode(Avalonia.Controls.PlacementMode) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.PopupRoot.ConfigurePosition(Avalonia.Visual,Avalonia.Controls.PlacementMode,Avalonia.Point,Avalonia.Controls.Primitives.PopupPositioning.PopupAnchor,Avalonia.Controls.Primitives.PopupPositioning.PopupGravity,Avalonia.Controls.Primitives.PopupPositioning.PopupPositionerConstraintAdjustment,System.Nullable{Avalonia.Rect}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.GetText(Avalonia.Controls.Control) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.GetText(Avalonia.Interactivity.Interactive) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.GetTextBinding(Avalonia.Interactivity.Interactive) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.SetText(Avalonia.Controls.Control,System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.SetText(Avalonia.Interactivity.Interactive,System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.SetTextBinding(Avalonia.Interactivity.Interactive,Avalonia.Data.BindingBase) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.add_Checked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.add_Indeterminate(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.add_Unchecked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.OnChecked(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.OnIndeterminate(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.OnUnchecked(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.remove_Checked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.remove_Indeterminate(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.remove_Unchecked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_AdornerLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_ChromeOverlayLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_IsPopup - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_LightDismissOverlayLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_OverlayLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_TextSelectorLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.set_IsPopup(System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Screens.ScreenFromWindow(Avalonia.Platform.IWindowBaseImpl) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TabbedPage.FindNextEnabledTab(System.Int32,System.Int32) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TabItem.get_Icon - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TabItem.SubscribeToOwnerProperties(Avalonia.AvaloniaObject) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.#ctor(Avalonia.Platform.ITopLevelImpl,Avalonia.IAvaloniaDependencyResolver) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.get_PlatformSettings - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.StartRendering - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.StopRendering - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TreeView.get_ItemContainerGenerator - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.get_ExtendClientAreaChromeHints - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.get_SystemDecorations - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.set_ExtendClientAreaChromeHints(Avalonia.Platform.ExtendClientAreaChromeHints) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.SortWindowsByZOrder(Avalonia.Controls.Window[]) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.WindowBase.ArrangeSetBounds(Avalonia.Size) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.ITopLevelImpl.get_Surfaces - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.IWindowImpl.GetWindowsZOrder(System.Span{Avalonia.Controls.Window},System.Span{System.Int64}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.IWindowImpl.SetExtendClientAreaChromeHints(Avalonia.Platform.ExtendClientAreaChromeHints) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.IWindowImpl.SetSystemDecorations(Avalonia.Controls.SystemDecorations) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.#ctor(System.Double,Avalonia.PixelRect,Avalonia.PixelRect,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.get_PixelDensity - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.get_Primary - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_Bounds(Avalonia.PixelRect) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_CurrentOrientation(Avalonia.Platform.ScreenOrientation) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_DisplayName(System.String) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_IsPrimary(System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_Scaling(System.Double) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_WorkingArea(Avalonia.PixelRect) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Dialogs.ManagedFileDialogExtensions.ShowManagedAsync(Avalonia.Controls.OpenFileDialog,Avalonia.Controls.Window,Avalonia.Dialogs.ManagedFileDialogOptions) - baseline/Avalonia/lib/net10.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net10.0/Avalonia.Dialogs.dll - - - CP0002 - M:Avalonia.Dialogs.ManagedFileDialogExtensions.ShowManagedAsync``1(Avalonia.Controls.OpenFileDialog,Avalonia.Controls.Window,Avalonia.Dialogs.ManagedFileDialogOptions) - baseline/Avalonia/lib/net10.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net10.0/Avalonia.Dialogs.dll - - - CP0002 - M:Avalonia.Data.Binding.#ctor(System.String,Avalonia.Data.BindingMode) - baseline/Avalonia/lib/net10.0/Avalonia.Markup.dll - current/Avalonia/lib/net10.0/Avalonia.Markup.dll - - - CP0002 - M:Avalonia.Markup.Xaml.MarkupExtensions.ReflectionBindingExtension.#ctor(System.String,Avalonia.Data.BindingMode) - baseline/Avalonia/lib/net10.0/Avalonia.Markup.Xaml.dll - current/Avalonia/lib/net10.0/Avalonia.Markup.Xaml.dll - - - CP0002 - M:Avalonia.Markup.Xaml.XamlLoadException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext) - baseline/Avalonia/lib/net10.0/Avalonia.Markup.Xaml.dll - current/Avalonia/lib/net10.0/Avalonia.Markup.Xaml.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDraw - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDraw(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CanRenderToSurface(Avalonia.OpenGL.IGlContext,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CreateRenderTarget(Avalonia.OpenGL.IGlContext,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CanRenderToSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0002 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CreateSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,System.Object) - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0002 - M:Avalonia.Vulkan.IVulkanPlatformGraphicsContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{System.Object}) - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0002 - F:Avalonia.Media.Fonts.FontCollectionBase._glyphTypefaceCache - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.FontCollectionBase.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.IFontCollection.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Dialogs.Internal.ManagedFileChooserFilterViewModel.#ctor(Avalonia.Platform.Storage.FilePickerFileType) - baseline/Avalonia/lib/net6.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net6.0/Avalonia.Dialogs.dll - - - CP0002 - F:Avalonia.Controls.ResourcesChangedEventArgs.Empty - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Data.BindingPriority.TemplatedParent - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.DataFormats.FileNames - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.DataFormats.Files - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.DataFormats.Text - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.CrossAxisCancelThresholdProperty - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.EdgeSizeProperty - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.HoldingState.Cancelled - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.InputElement.GotFocusEvent - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Input.InputElement.LostFocusEvent - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Media.DrawingImage.ViewboxProperty - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Media.Fonts.FontCollectionBase._glyphTypefaceCache - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Media.RadialGradientBrush.RadiusProperty - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Animation.Animation.SetAnimator(Avalonia.Animation.IAnimationSetter,Avalonia.Animation.CustomAnimatorBase) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.AvaloniaObjectExtensions.Bind(Avalonia.AvaloniaObject,Avalonia.AvaloniaProperty,Avalonia.Data.BindingBase,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Controls.ResourcesChangedEventArgs.#ctor - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.SetRawSource(System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.StreamObservable - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.StreamTask - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.CompiledBindingPathBuilder.TypeCast(System.Type) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Data.ReflectionBinding.#ctor(System.String,Avalonia.Data.BindingMode) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.Contains(System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.Get(System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.GetDataFormats - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DataObject.Set(System.String,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DragDrop.DoDragDrop(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DragEventArgs.#ctor(Avalonia.Interactivity.RoutedEvent{Avalonia.Input.DragEventArgs},Avalonia.Input.IDataObject,Avalonia.Interactivity.Interactive,Avalonia.Point,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.DragEventArgs.get_Data - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.#ctor(Avalonia.Input.IInputElement) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.ClearFocus - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.ClearFocusOnElementRemoved(Avalonia.Input.IInputElement,Avalonia.Visual) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.FindNextElement(Avalonia.Input.NavigationDirection) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.FocusManager.TryMoveFocus(Avalonia.Input.NavigationDirection) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.get_CrossAxisCancelThreshold - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.get_EdgeSize - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.set_CrossAxisCancelThreshold(System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.GestureRecognizers.SwipeGestureRecognizer.set_EdgeSize(System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.HoldingRoutedEventArgs.#ctor(Avalonia.Input.HoldingState,Avalonia.Point,Avalonia.Input.PointerType) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IFocusManager.ClearFocus - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_KeyboardNavigationHandler - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_PlatformSettings - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_PointerOverElement - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.get_ShowAccessKeys - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.set_PointerOverElement(Avalonia.Input.IInputElement) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IInputRoot.set_ShowAccessKeys(System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.IKeyboardNavigationHandler.Move(Avalonia.Input.IInputElement,Avalonia.Input.NavigationDirection,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPinchEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEndedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPinchHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPointerTouchPadGestureMagnifyHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPointerTouchPadGestureRotateHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPointerTouchPadGestureSwipeHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPullGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEndedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddPullGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddScrollGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEndedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddScrollGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.AddScrollGestureInertiaStartingHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureInertiaStartingEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.OnGotFocus(Avalonia.Input.GotFocusEventArgs) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.OnLostFocus(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePinchEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEndedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePinchHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PinchEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePointerTouchPadGestureMagnifyHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePointerTouchPadGestureRotateHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePointerTouchPadGestureSwipeHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PointerDeltaEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePullGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEndedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemovePullGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.PullGestureEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemoveScrollGestureEndedHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEndedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemoveScrollGestureHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.InputElement.RemoveScrollGestureInertiaStartingHandler(Avalonia.Interactivity.Interactive,System.EventHandler{Avalonia.Input.ScrollGestureInertiaStartingEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.KeyboardNavigationHandler.Move(Avalonia.Input.IInputElement,Avalonia.Input.NavigationDirection,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.GetDataAsync(System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.GetFormatsAsync - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.GetTextAsync - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.SetDataObjectAsync(Avalonia.Input.IDataObject) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.SetTextAsync(System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IClipboard.TryGetInProcessDataObjectAsync - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Platform.IPlatformDragSource.DoDragDrop(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawDragEvent.#ctor(Avalonia.Input.Raw.IDragDropDevice,Avalonia.Input.Raw.RawDragEventType,Avalonia.Input.IInputRoot,Avalonia.Point,Avalonia.Input.IDataObject,Avalonia.Input.DragDropEffects,Avalonia.Input.RawInputModifiers) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawDragEvent.get_Data - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawKeyEventArgs.#ctor(Avalonia.Input.IInputDevice,System.UInt64,Avalonia.Input.IInputRoot,Avalonia.Input.Raw.RawKeyEventType,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers,Avalonia.Input.PhysicalKey,Avalonia.Input.KeyDeviceType,System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawKeyEventArgs.#ctor(Avalonia.Input.IInputDevice,System.UInt64,Avalonia.Input.IInputRoot,Avalonia.Input.Raw.RawKeyEventType,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers,Avalonia.Input.PhysicalKey,System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.Raw.RawKeyEventArgs.#ctor(Avalonia.Input.IKeyboardDevice,System.UInt64,Avalonia.Input.IInputRoot,Avalonia.Input.Raw.RawKeyEventType,Avalonia.Input.Key,Avalonia.Input.RawInputModifiers) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.SwipeGestureEventArgs.#ctor(System.Int32,Avalonia.Input.SwipeDirection,Avalonia.Vector,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.SwipeGestureEventArgs.get_StartPoint - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Input.TextInput.TextInputMethodClient.ShowInputPanel - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Layout.LayoutHelper.RoundLayoutSizeUp(Avalonia.Size,System.Double,System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Layout.LayoutHelper.RoundLayoutThickness(Avalonia.Thickness,System.Double,System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Color.ToUint32 - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingContext.PushPostTransform(Avalonia.Matrix) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingContext.PushPreTransform(Avalonia.Matrix) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingContext.PushTransformContainer - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingImage.get_Viewbox - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.DrawingImage.set_Viewbox(System.Nullable{Avalonia.Rect}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.FontCollectionBase.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.FontCollectionBase.TryGetGlyphTypeface(System.String,Avalonia.Media.Fonts.FontCollectionKey,Avalonia.Media.GlyphTypeface@) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.IFontCollection.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Imaging.Bitmap.CopyPixels(Avalonia.Platform.ILockedFramebuffer,Avalonia.Platform.AlphaFormat) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Immutable.ImmutableRadialGradientBrush.get_Radius - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.IRadialGradientBrush.get_Radius - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.RadialGradientBrush.get_Radius - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.RadialGradientBrush.set_Radius(System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.LineTo(Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.StreamGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.GenericTextRunProperties.#ctor(Avalonia.Media.Typeface,Avalonia.Media.FontFeatureCollection,System.Double,Avalonia.Media.TextDecorationCollection,Avalonia.Media.IBrush,Avalonia.Media.IBrush,Avalonia.Media.BaselineAlignment,System.Globalization.CultureInfo) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.GenericTextRunProperties.#ctor(Avalonia.Media.Typeface,System.Double,Avalonia.Media.TextDecorationCollection,Avalonia.Media.IBrush,Avalonia.Media.IBrush,Avalonia.Media.BaselineAlignment,System.Globalization.CultureInfo) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextCollapsingProperties.CreateCollapsedRuns(Avalonia.Media.TextFormatting.TextLine,System.Int32,Avalonia.Media.FlowDirection,Avalonia.Media.TextFormatting.TextRun) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextLayout.#ctor(System.String,Avalonia.Media.Typeface,Avalonia.Media.FontFeatureCollection,System.Double,Avalonia.Media.IBrush,Avalonia.Media.TextAlignment,Avalonia.Media.TextWrapping,Avalonia.Media.TextTrimming,Avalonia.Media.TextDecorationCollection,Avalonia.Media.FlowDirection,System.Double,System.Double,System.Double,System.Double,System.Int32,System.Collections.Generic.IReadOnlyList{Avalonia.Utilities.ValueSpan{Avalonia.Media.TextFormatting.TextRunProperties}}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextLayout.#ctor(System.String,Avalonia.Media.Typeface,System.Double,Avalonia.Media.IBrush,Avalonia.Media.TextAlignment,Avalonia.Media.TextWrapping,Avalonia.Media.TextTrimming,Avalonia.Media.TextDecorationCollection,Avalonia.Media.FlowDirection,System.Double,System.Double,System.Double,System.Double,System.Int32,System.Collections.Generic.IReadOnlyList{Avalonia.Utilities.ValueSpan{Avalonia.Media.TextFormatting.TextRunProperties}}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextShaperOptions.#ctor(Avalonia.Media.GlyphTypeface,System.Collections.Generic.IReadOnlyList{Avalonia.Media.FontFeature},System.Double,System.SByte,System.Globalization.CultureInfo,System.Double,System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.TextFormatting.TextShaperOptions.#ctor(Avalonia.Media.GlyphTypeface,System.Double,System.SByte,System.Globalization.CultureInfo,System.Double,System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.ICursorFactory.CreateCursor(Avalonia.Platform.IBitmapImpl,Avalonia.PixelPoint) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IDrawingContextImplWithEffects.PushEffect(Avalonia.Media.IEffect) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.LineTo(Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateOffscreenRenderTarget(Avalonia.PixelSize,System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{System.Object}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(Avalonia.PixelSize,Avalonia.Platform.RenderTargetDrawingContextProperties@) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.LockedFramebuffer.#ctor(System.IntPtr,Avalonia.PixelSize,System.Int32,Avalonia.Vector,Avalonia.Platform.PixelFormat,System.Action) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.Composition.ICompositionGpuImportedObject.get_ImportCompeted - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.Start - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.DefaultRenderTimer.Stop - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.IRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.IRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SceneInvalidatedEventArgs.#ctor(Avalonia.Rendering.IRenderRoot,Avalonia.Rect) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SceneInvalidatedEventArgs.get_RenderRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SleepLoopRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.SleepLoopRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.ThreadProxyRenderTimer.add_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Rendering.ThreadProxyRenderTimer.remove_Tick(System.Action{System.TimeSpan}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Utilities.AvaloniaResourcesIndexReaderWriter.WriteResources(System.IO.Stream,System.Collections.Generic.List{System.ValueTuple{System.String,System.Int32,System.Func{System.IO.Stream}}}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visual.get_VisualRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.LineTo(Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Visuals.Platform.PathGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.VisualTree.VisualExtensions.GetVisualRoot(Avalonia.Visual) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.VisualTreeAttachmentEventArgs.#ctor(Avalonia.Visual,Avalonia.Rendering.IRenderRoot) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.VisualTreeAttachmentEventArgs.get_Root - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0002 - F:Avalonia.Controls.ContextMenu.PlacementModeProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Control.ContextRequestedEvent - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Documents.Inline.TextDecorationsProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.DrawerPage.DrawerBreakpointWidthProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.NativeMenuBar.EnableMenuItemClickForwardingProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.NativeMenuItem.ToggleTypeProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.FlyoutBase.IsOpenProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.Popup.PlacementModeProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.ToggleButton.CheckedEvent - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.ToggleButton.IndeterminateEvent - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.ToggleButton.UncheckedEvent - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Primitives.VisualLayerManager.ChromeOverlayLayerProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TabItem.IconProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TextBlock.LetterSpacingProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TextBox.LetterSpacingProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.TopLevel.PointerOverElementProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Window.ExtendClientAreaChromeHintsProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - F:Avalonia.Controls.Window.SystemDecorationsProperty - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.AppBuilder.get_LifetimeOverride - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Application.add_UrlsOpened(System.EventHandler{Avalonia.UrlOpenedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Application.remove_UrlsOpened(System.EventHandler{Avalonia.UrlOpenedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Automation.Peers.AutomationPeer.GetVisualRootCore - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.ContextMenu.get_PlacementMode - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.ContextMenu.set_PlacementMode(Avalonia.Controls.PlacementMode) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.CreatePreviewWithControl(System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.GetDataContext(Avalonia.Controls.Templates.IDataTemplate) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.GetPreviewWith(Avalonia.Controls.Templates.IDataTemplate) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.GetPreviewWith(Avalonia.Styling.IStyle) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetDataContext(Avalonia.Controls.Templates.IDataTemplate,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.AvaloniaObject,Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.AvaloniaObject,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Controls.ResourceDictionary,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Controls.Templates.IDataTemplate,Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Controls.Templates.IDataTemplate,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Styling.IStyle,Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Design.SetPreviewWith(Avalonia.Styling.IStyle,Avalonia.Controls.ITemplate{Avalonia.Controls.Control}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.DrawerPage.get_DrawerBreakpointWidth - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.DrawerPage.set_DrawerBreakpointWidth(System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase.get_Surfaces - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Generators.ItemContainerGenerator.ContainerFromIndex(System.Int32) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Generators.ItemContainerGenerator.IndexFromContainer(Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.ItemsControl.ItemsControlFromItemContaner(Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.NativeMenuBar.SetEnableMenuItemClickForwarding(Avalonia.Controls.MenuItem,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.NativeMenuItem.get_ToggleType - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.PageSelectionChangedEventArgs.#ctor(Avalonia.Controls.Page,Avalonia.Controls.Page) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.DefaultMenuInteractionHandler.GotFocus(System.Object,Avalonia.Input.GotFocusEventArgs) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.IInsetsManager.get_DisplayEdgeToEdge - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.IInsetsManager.set_DisplayEdgeToEdge(System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.InsetsManagerBase.get_DisplayEdgeToEdge - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Platform.InsetsManagerBase.set_DisplayEdgeToEdge(System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.AccessText.get_AccessKey - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.AdornerLayer.#ctor - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.#ctor(Avalonia.Controls.Primitives.OverlayLayer) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.ConfigurePosition(Avalonia.Visual,Avalonia.Controls.PlacementMode,Avalonia.Point,Avalonia.Controls.Primitives.PopupPositioning.PopupAnchor,Avalonia.Controls.Primitives.PopupPositioning.PopupGravity,Avalonia.Controls.Primitives.PopupPositioning.PopupPositionerConstraintAdjustment,System.Nullable{Avalonia.Rect}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.CreatePopupHost(Avalonia.Visual,Avalonia.IAvaloniaDependencyResolver,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.CreatePopupHost(Avalonia.Visual,Avalonia.IAvaloniaDependencyResolver) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.SetChild(Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.OverlayPopupHost.TakeFocus - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.Popup.get_Host - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.Popup.get_PlacementMode - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.Popup.set_PlacementMode(Avalonia.Controls.PlacementMode) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.PopupRoot.ConfigurePosition(Avalonia.Visual,Avalonia.Controls.PlacementMode,Avalonia.Point,Avalonia.Controls.Primitives.PopupPositioning.PopupAnchor,Avalonia.Controls.Primitives.PopupPositioning.PopupGravity,Avalonia.Controls.Primitives.PopupPositioning.PopupPositionerConstraintAdjustment,System.Nullable{Avalonia.Rect}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.GetText(Avalonia.Controls.Control) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.GetText(Avalonia.Interactivity.Interactive) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.GetTextBinding(Avalonia.Interactivity.Interactive) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.SetText(Avalonia.Controls.Control,System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.SetText(Avalonia.Interactivity.Interactive,System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.TextSearch.SetTextBinding(Avalonia.Interactivity.Interactive,Avalonia.Data.BindingBase) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.add_Checked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.add_Indeterminate(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.add_Unchecked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.OnChecked(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.OnIndeterminate(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.OnUnchecked(Avalonia.Interactivity.RoutedEventArgs) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.remove_Checked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.remove_Indeterminate(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.ToggleButton.remove_Unchecked(System.EventHandler{Avalonia.Interactivity.RoutedEventArgs}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_AdornerLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_ChromeOverlayLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_IsPopup - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_LightDismissOverlayLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_OverlayLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.get_TextSelectorLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Primitives.VisualLayerManager.set_IsPopup(System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Screens.ScreenFromWindow(Avalonia.Platform.IWindowBaseImpl) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TabbedPage.FindNextEnabledTab(System.Int32,System.Int32) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TabItem.get_Icon - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TabItem.SubscribeToOwnerProperties(Avalonia.AvaloniaObject) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.#ctor(Avalonia.Platform.ITopLevelImpl,Avalonia.IAvaloniaDependencyResolver) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.get_PlatformSettings - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.StartRendering - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TopLevel.StopRendering - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.TreeView.get_ItemContainerGenerator - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.get_ExtendClientAreaChromeHints - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.get_SystemDecorations - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.set_ExtendClientAreaChromeHints(Avalonia.Platform.ExtendClientAreaChromeHints) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.Window.SortWindowsByZOrder(Avalonia.Controls.Window[]) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Controls.WindowBase.ArrangeSetBounds(Avalonia.Size) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.ITopLevelImpl.get_Surfaces - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.IWindowImpl.GetWindowsZOrder(System.Span{Avalonia.Controls.Window},System.Span{System.Int64}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.IWindowImpl.SetExtendClientAreaChromeHints(Avalonia.Platform.ExtendClientAreaChromeHints) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.IWindowImpl.SetSystemDecorations(Avalonia.Controls.SystemDecorations) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.#ctor(System.Double,Avalonia.PixelRect,Avalonia.PixelRect,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.get_PixelDensity - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.get_Primary - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_Bounds(Avalonia.PixelRect) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_CurrentOrientation(Avalonia.Platform.ScreenOrientation) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_DisplayName(System.String) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_IsPrimary(System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_Scaling(System.Double) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Platform.Screen.set_WorkingArea(Avalonia.PixelRect) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0002 - M:Avalonia.Dialogs.Internal.ManagedFileChooserFilterViewModel.#ctor(Avalonia.Platform.Storage.FilePickerFileType) - baseline/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - - - CP0002 - M:Avalonia.Dialogs.ManagedFileDialogExtensions.ShowManagedAsync(Avalonia.Controls.OpenFileDialog,Avalonia.Controls.Window,Avalonia.Dialogs.ManagedFileDialogOptions) - baseline/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - - - CP0002 - M:Avalonia.Dialogs.ManagedFileDialogExtensions.ShowManagedAsync``1(Avalonia.Controls.OpenFileDialog,Avalonia.Controls.Window,Avalonia.Dialogs.ManagedFileDialogOptions) - baseline/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - - - CP0002 - M:Avalonia.Data.Binding.#ctor(System.String,Avalonia.Data.BindingMode) - baseline/Avalonia/lib/net8.0/Avalonia.Markup.dll - current/Avalonia/lib/net8.0/Avalonia.Markup.dll - - - CP0002 - M:Avalonia.Markup.Xaml.MarkupExtensions.ReflectionBindingExtension.#ctor(System.String,Avalonia.Data.BindingMode) - baseline/Avalonia/lib/net8.0/Avalonia.Markup.Xaml.dll - current/Avalonia/lib/net8.0/Avalonia.Markup.Xaml.dll - - - CP0002 - M:Avalonia.Markup.Xaml.XamlLoadException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext) - baseline/Avalonia/lib/net8.0/Avalonia.Markup.Xaml.dll - current/Avalonia/lib/net8.0/Avalonia.Markup.Xaml.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDraw - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDraw(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CanRenderToSurface(Avalonia.OpenGL.IGlContext,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CreateRenderTarget(Avalonia.OpenGL.IGlContext,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0002 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CanRenderToSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0002 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CreateSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,System.Object) - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0002 - M:Avalonia.Vulkan.IVulkanPlatformGraphicsContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{System.Object}) - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0002 - F:Avalonia.Media.Fonts.FontCollectionBase._glyphTypefaceCache - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.FontCollectionBase.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Media.Fonts.IFontCollection.Initialize(Avalonia.Platform.IFontManagerImpl) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Dialogs.Internal.ManagedFileChooserFilterViewModel.#ctor(Avalonia.Platform.Storage.FilePickerFileType) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Dialogs.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Dialogs.dll - - - CP0002 - M:Avalonia.Platform.IDrawingContextImplWithEffects.PopEffect - baseline/netstandard2.0/Avalonia.Base.dll - target/netstandard2.0/Avalonia.Base.dll - - - CP0002 - M:Avalonia.Platform.IDrawingContextImplWithEffects.PushEffect(Avalonia.Media.IEffect) - baseline/netstandard2.0/Avalonia.Base.dll - target/netstandard2.0/Avalonia.Base.dll - - - CP0005 - M:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase.get_Surfaces - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0005 - P:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase.Surfaces - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0005 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0005 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0005 - M:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase.get_Surfaces - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0005 - P:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase.Surfaces - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0005 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0005 - M:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase.BeginDrawCore(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - E:Avalonia.Input.IInputElement.GotFocus - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - E:Avalonia.Input.IInputElement.LostFocus - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.FindFirstFocusableElement - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.FindLastFocusableElement - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.FindNextElement(Avalonia.Input.NavigationDirection,Avalonia.Input.FindNextElementOptions) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.Focus(Avalonia.Input.IInputElement,Avalonia.Input.NavigationMethod,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.TryMoveFocus(Avalonia.Input.NavigationDirection,Avalonia.Input.FindNextElementOptions) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IKeyboardNavigationHandler.Move(Avalonia.Input.IInputElement,Avalonia.Input.NavigationDirection,Avalonia.Input.KeyModifiers,System.Nullable{Avalonia.Input.KeyDeviceType}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.ICursorFactory.CreateCursor(Avalonia.Media.Imaging.Bitmap,Avalonia.PixelPoint) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextImpl.PopTextOptions - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextImpl.PushTextOptions(Avalonia.Media.TextOptions) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextImplWithEffects.PushEffect(System.Nullable{Avalonia.Rect},Avalonia.Media.IEffect) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextLayerImpl.CreateDrawingContext - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.String,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.LineTo(Avalonia.Point,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateOffscreenRenderTarget(Avalonia.PixelSize,Avalonia.Vector,System.Boolean) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{Avalonia.Platform.Surfaces.IPlatformRenderSurface}) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(Avalonia.PixelSize,Avalonia.Platform.RenderTargetDrawingContextProperties@) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo,Avalonia.Platform.RenderTargetDrawingContextProperties@) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IRenderTargetBitmapImpl.CreateDrawingContext - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Rendering.IRenderTimer.Start - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Rendering.IRenderTimer.Stop - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Input.IInputRoot.FocusRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IDrawingContextLayerImpl.IsCorrupted - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.ILockedFramebuffer.AlphaFormat - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IPlatformRenderInterfaceContext.MaxOffscreenRenderTargetPixelSize - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IReadableBitmapImpl.AlphaFormat - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IRenderTarget.Properties - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IWindowImpl.SetWindowDecorations(Avalonia.Controls.WindowDecorations) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0006 - M:Avalonia.Platform.IWindowingPlatform.GetWindowsZOrder(System.ReadOnlySpan{Avalonia.Platform.IWindowImpl},System.Span{System.Int64}) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0006 - P:Avalonia.Platform.ITopLevelImpl.Surfaces - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0006 - P:Avalonia.Platform.IWindowImpl.RequestedDrawnDecorations - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0006 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CanRenderToSurface(Avalonia.OpenGL.IGlContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CreateRenderTarget(Avalonia.OpenGL.IGlContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0006 - P:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.IsCorrupted - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CanRenderToSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0006 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CreateSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0006 - M:Avalonia.Vulkan.IVulkanPlatformGraphicsContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{Avalonia.Platform.Surfaces.IPlatformRenderSurface}) - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.SetDataAsync(Avalonia.Input.IAsyncDataTransfer) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.TryGetDataAsync - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.TryGetInProcessDataAsync - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IPlatformDragSource.DoDragDropAsync(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataTransfer,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.String,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceImportedImage.SnapshotWithTimelineSemaphores(Avalonia.Platform.IPlatformRenderInterfaceImportedSemaphore,System.UInt64,Avalonia.Platform.IPlatformRenderInterfaceImportedSemaphore,System.UInt64) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.Storage.IStorageProvider.SaveFilePickerWithResultAsync(Avalonia.Platform.Storage.FilePickerSaveOptions) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.OpenGL.IGlExternalSemaphore.SignalTimelineSemaphore(Avalonia.OpenGL.IGlExternalImageTexture,System.UInt64) - baseline/Avalonia/lib/net6.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net6.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.IGlExternalSemaphore.WaitTimelineSemaphore(Avalonia.OpenGL.IGlExternalImageTexture,System.UInt64) - baseline/Avalonia/lib/net6.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net6.0/Avalonia.OpenGL.dll - - - CP0006 - P:Avalonia.OpenGL.IGlExternalImageTexture.TextureType - baseline/Avalonia/lib/net6.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net6.0/Avalonia.OpenGL.dll - - - CP0006 - E:Avalonia.Input.IInputElement.GotFocus - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - E:Avalonia.Input.IInputElement.LostFocus - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.FindFirstFocusableElement - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.FindLastFocusableElement - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.FindNextElement(Avalonia.Input.NavigationDirection,Avalonia.Input.FindNextElementOptions) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.Focus(Avalonia.Input.IInputElement,Avalonia.Input.NavigationMethod,Avalonia.Input.KeyModifiers) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IFocusManager.TryMoveFocus(Avalonia.Input.NavigationDirection,Avalonia.Input.FindNextElementOptions) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.IKeyboardNavigationHandler.Move(Avalonia.Input.IInputElement,Avalonia.Input.NavigationDirection,Avalonia.Input.KeyModifiers,System.Nullable{Avalonia.Input.KeyDeviceType}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.SetDataAsync(Avalonia.Input.IAsyncDataTransfer) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.TryGetDataAsync - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.TryGetInProcessDataAsync - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IPlatformDragSource.DoDragDropAsync(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataTransfer,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.ICursorFactory.CreateCursor(Avalonia.Media.Imaging.Bitmap,Avalonia.PixelPoint) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextImpl.PopTextOptions - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextImpl.PushTextOptions(Avalonia.Media.TextOptions) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextImplWithEffects.PushEffect(System.Nullable{Avalonia.Rect},Avalonia.Media.IEffect) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IDrawingContextLayerImpl.CreateDrawingContext - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.String,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.ArcTo(Avalonia.Point,Avalonia.Size,System.Double,System.Boolean,Avalonia.Media.SweepDirection,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.CubicBezierTo(Avalonia.Point,Avalonia.Point,Avalonia.Point,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.LineTo(Avalonia.Point,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IGeometryContext.QuadraticBezierTo(Avalonia.Point,Avalonia.Point,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateOffscreenRenderTarget(Avalonia.PixelSize,Avalonia.Vector,System.Boolean) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{Avalonia.Platform.Surfaces.IPlatformRenderSurface}) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceImportedImage.SnapshotWithTimelineSemaphores(Avalonia.Platform.IPlatformRenderInterfaceImportedSemaphore,System.UInt64,Avalonia.Platform.IPlatformRenderInterfaceImportedSemaphore,System.UInt64) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(Avalonia.PixelSize,Avalonia.Platform.RenderTargetDrawingContextProperties@) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IRenderTarget.CreateDrawingContext(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo,Avalonia.Platform.RenderTargetDrawingContextProperties@) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IRenderTargetBitmapImpl.CreateDrawingContext - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.Storage.IStorageProvider.SaveFilePickerWithResultAsync(Avalonia.Platform.Storage.FilePickerSaveOptions) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Rendering.IRenderTimer.Start - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Rendering.IRenderTimer.Stop - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Input.IInputRoot.FocusRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IDrawingContextLayerImpl.IsCorrupted - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.ILockedFramebuffer.AlphaFormat - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IPlatformRenderInterfaceContext.MaxOffscreenRenderTargetPixelSize - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IReadableBitmapImpl.AlphaFormat - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - P:Avalonia.Platform.IRenderTarget.Properties - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IWindowImpl.SetWindowDecorations(Avalonia.Controls.WindowDecorations) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0006 - M:Avalonia.Platform.IWindowingPlatform.GetWindowsZOrder(System.ReadOnlySpan{Avalonia.Platform.IWindowImpl},System.Span{System.Int64}) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0006 - P:Avalonia.Platform.ITopLevelImpl.Surfaces - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0006 - P:Avalonia.Platform.IWindowImpl.RequestedDrawnDecorations - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0006 - M:Avalonia.OpenGL.IGlExternalSemaphore.SignalTimelineSemaphore(Avalonia.OpenGL.IGlExternalImageTexture,System.UInt64) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.IGlExternalSemaphore.WaitTimelineSemaphore(Avalonia.OpenGL.IGlExternalImageTexture,System.UInt64) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CanRenderToSurface(Avalonia.OpenGL.IGlContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.IGlPlatformSurfaceRenderTargetFactory.CreateRenderTarget(Avalonia.OpenGL.IGlContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw(Avalonia.Platform.IRenderTarget.RenderTargetSceneInfo) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.BeginDraw(System.Nullable{Avalonia.PixelSize}) - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - P:Avalonia.OpenGL.IGlExternalImageTexture.TextureType - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - P:Avalonia.OpenGL.Surfaces.IGlPlatformSurfaceRenderTarget.IsCorrupted - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CanRenderToSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0006 - M:Avalonia.Vulkan.IVulkanKhrSurfacePlatformSurfaceFactory.CreateSurface(Avalonia.Vulkan.IVulkanPlatformGraphicsContext,Avalonia.Platform.Surfaces.IPlatformRenderSurface) - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0006 - M:Avalonia.Vulkan.IVulkanPlatformGraphicsContext.CreateRenderTarget(System.Collections.Generic.IEnumerable{Avalonia.Platform.Surfaces.IPlatformRenderSurface}) - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.SetDataAsync(Avalonia.Input.IAsyncDataTransfer) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.TryGetDataAsync - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IClipboard.TryGetInProcessDataAsync - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Input.Platform.IPlatformDragSource.DoDragDropAsync(Avalonia.Input.PointerEventArgs,Avalonia.Input.IDataTransfer,Avalonia.Input.DragDropEffects) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IFontManagerImpl.TryMatchCharacter(System.Int32,Avalonia.Media.FontStyle,Avalonia.Media.FontWeight,Avalonia.Media.FontStretch,System.String,System.Globalization.CultureInfo,Avalonia.Media.Typeface@) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.IPlatformRenderInterfaceImportedImage.SnapshotWithTimelineSemaphores(Avalonia.Platform.IPlatformRenderInterfaceImportedSemaphore,System.UInt64,Avalonia.Platform.IPlatformRenderInterfaceImportedSemaphore,System.UInt64) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.Platform.Storage.IStorageProvider.SaveFilePickerWithResultAsync(Avalonia.Platform.Storage.FilePickerSaveOptions) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0006 - M:Avalonia.OpenGL.IGlExternalSemaphore.SignalTimelineSemaphore(Avalonia.OpenGL.IGlExternalImageTexture,System.UInt64) - baseline/Avalonia/lib/netstandard2.0/Avalonia.OpenGL.dll - current/Avalonia/lib/netstandard2.0/Avalonia.OpenGL.dll - - - CP0006 - M:Avalonia.OpenGL.IGlExternalSemaphore.WaitTimelineSemaphore(Avalonia.OpenGL.IGlExternalImageTexture,System.UInt64) - baseline/Avalonia/lib/netstandard2.0/Avalonia.OpenGL.dll - current/Avalonia/lib/netstandard2.0/Avalonia.OpenGL.dll - - - CP0006 - P:Avalonia.OpenGL.IGlExternalImageTexture.TextureType - baseline/Avalonia/lib/netstandard2.0/Avalonia.OpenGL.dll - current/Avalonia/lib/netstandard2.0/Avalonia.OpenGL.dll - - - CP0007 - T:Avalonia.Controls.ResourcesChangedEventArgs - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0007 - T:Avalonia.Controls.ResourcesChangedEventArgs - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Input.DataObject - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Input.IInputRoot - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Media.ImmediateDrawingContext - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Media.StreamGeometryContext - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IDrawingContextLayerImpl - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IDrawingContextLayerWithRenderContextAffinityImpl - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IPlatformGraphicsContext - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IPlatformGraphicsWithFeatures - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IPlatformRenderInterfaceContext - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IRenderTargetBitmapImpl - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IWriteableBitmapImpl - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Application - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Embedding.EmbeddableControlRoot - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Platform.IWin32OptionsTopLevelImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Primitives.OverlayPopupHost - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Primitives.PopupRoot - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.TopLevel - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Window - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.WindowBase - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.IPopupImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.ITopLevelImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.IWindowBaseImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.IWindowImpl - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Dialogs.AboutAvaloniaDialog - baseline/Avalonia/lib/net10.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net10.0/Avalonia.Dialogs.dll - - - CP0008 - T:Avalonia.Metal.IMetalDevice - baseline/Avalonia/lib/net10.0/Avalonia.Metal.dll - current/Avalonia/lib/net10.0/Avalonia.Metal.dll - - - CP0008 - T:Avalonia.OpenGL.Egl.EglContext - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0008 - T:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0008 - T:Avalonia.OpenGL.IGlContext - baseline/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net10.0/Avalonia.OpenGL.dll - - - CP0008 - T:Avalonia.Vulkan.IVulkanDevice - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0008 - T:Avalonia.Vulkan.IVulkanPlatformGraphicsContext - baseline/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net10.0/Avalonia.Vulkan.dll - - - CP0008 - T:Avalonia.Input.DataObject - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Input.IInputRoot - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Media.ImmediateDrawingContext - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Media.StreamGeometryContext - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IDrawingContextLayerImpl - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IDrawingContextLayerWithRenderContextAffinityImpl - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IPlatformGraphicsContext - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IPlatformGraphicsWithFeatures - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IPlatformRenderInterfaceContext - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IRenderTargetBitmapImpl - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Platform.IWriteableBitmapImpl - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0008 - T:Avalonia.Application - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Embedding.EmbeddableControlRoot - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Embedding.Offscreen.OffscreenTopLevelImplBase - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Platform.IWin32OptionsTopLevelImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Primitives.OverlayPopupHost - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Primitives.PopupRoot - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.TopLevel - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.Window - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Controls.WindowBase - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.IPopupImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.ITopLevelImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.IWindowBaseImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Platform.IWindowImpl - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0008 - T:Avalonia.Dialogs.AboutAvaloniaDialog - baseline/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - current/Avalonia/lib/net8.0/Avalonia.Dialogs.dll - - - CP0008 - T:Avalonia.Metal.IMetalDevice - baseline/Avalonia/lib/net8.0/Avalonia.Metal.dll - current/Avalonia/lib/net8.0/Avalonia.Metal.dll - - - CP0008 - T:Avalonia.OpenGL.Egl.EglContext - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0008 - T:Avalonia.OpenGL.Egl.EglPlatformSurfaceRenderTargetBase - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0008 - T:Avalonia.OpenGL.IGlContext - baseline/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - current/Avalonia/lib/net8.0/Avalonia.OpenGL.dll - - - CP0008 - T:Avalonia.Vulkan.IVulkanDevice - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0008 - T:Avalonia.Vulkan.IVulkanPlatformGraphicsContext - baseline/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - current/Avalonia/lib/net8.0/Avalonia.Vulkan.dll - - - CP0009 - T:Avalonia.Controls.ResourcesChangedEventArgs - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0009 - T:Avalonia.Input.DataObject - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0009 - T:Avalonia.Input.HoldingRoutedEventArgs - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0009 - T:Avalonia.Controls.Primitives.AdornerLayer - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Controls.Primitives.OverlayPopupHost - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Controls.Primitives.VisualLayerManager - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Platform.Screen - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Controls.ResourcesChangedEventArgs - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0009 - T:Avalonia.Input.DataObject - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0009 - T:Avalonia.Input.HoldingRoutedEventArgs - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0009 - T:Avalonia.Controls.Primitives.AdornerLayer - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Controls.Primitives.OverlayPopupHost - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Controls.Primitives.VisualLayerManager - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0009 - T:Avalonia.Platform.Screen - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Count - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Item(System.Int32) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.GetEnumerator - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Count - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Item(System.Int32) - baseline/Avalonia/lib/net10.0/Avalonia.Base.dll - current/Avalonia/lib/net10.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Platform.Screen.Equals(Avalonia.Platform.Screen) - baseline/Avalonia/lib/net10.0/Avalonia.Controls.dll - current/Avalonia/lib/net10.0/Avalonia.Controls.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Count - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Item(System.Int32) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.GetEnumerator - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Count - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Item(System.Int32) - baseline/Avalonia/lib/net6.0/Avalonia.Base.dll - current/Avalonia/lib/net6.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Count - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Item(System.Int32) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.GetEnumerator - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Count - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Item(System.Int32) - baseline/Avalonia/lib/net8.0/Avalonia.Base.dll - current/Avalonia/lib/net8.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Platform.Screen.Equals(Avalonia.Platform.Screen) - baseline/Avalonia/lib/net8.0/Avalonia.Controls.dll - current/Avalonia/lib/net8.0/Avalonia.Controls.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Count - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.get_Item(System.Int32) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0012 - M:Avalonia.Media.Fonts.FontCollectionBase.GetEnumerator - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Count - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - - CP0012 - P:Avalonia.Media.Fonts.FontCollectionBase.Item(System.Int32) - baseline/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - current/Avalonia/lib/netstandard2.0/Avalonia.Base.dll - - diff --git a/build/MicroCOM.props b/build/MicroCOM.props new file mode 100644 index 0000000000..1efa4b2ef3 --- /dev/null +++ b/build/MicroCOM.props @@ -0,0 +1,26 @@ + + + + + + $(MSBuildThisFileDirectory)/../../MicroCom + + + + + + + + + + + + + diff --git a/build/SharedVersion.props b/build/SharedVersion.props index b8c0dd4d43..cff9a24f54 100644 --- a/build/SharedVersion.props +++ b/build/SharedVersion.props @@ -2,7 +2,7 @@ xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> Avalonia - 12.0.999 + 12.1.999 Avalonia Team Copyright 2013-$([System.DateTime]::Now.ToString(`yyyy`)) © The AvaloniaUI Project https://avaloniaui.net/?utm_source=nuget&utm_medium=referral&utm_content=project_homepage_link diff --git a/docs/build.md b/docs/build.md index 2285e56d01..bd8ae3fc02 100644 --- a/docs/build.md +++ b/docs/build.md @@ -42,7 +42,7 @@ dotnet run If you want to open Avalonia in Visual Studio you have two options: -- Avalonia.sln: This contains the whole of Avalonia in including desktop, mobile and web. You must have a number of dotnet workloads installed in order to build everything in this solution +- Avalonia.slnx: This contains the whole of Avalonia in including desktop, mobile and web. You must have a number of dotnet workloads installed in order to build everything in this solution - Avalonia.Desktop.slnf: This solution filter opens only the parts of Avalonia required to run on desktop. This requires no extra workloads to be installed. Avalonia requires Visual Studio 2022 or newer. The free Visual Studio Community edition works fine. diff --git a/external/Avalonia.DBus b/external/Avalonia.DBus index f91a822c25..864a052828 160000 --- a/external/Avalonia.DBus +++ b/external/Avalonia.DBus @@ -1 +1 @@ -Subproject commit f91a822c258476f185e51112388775591e6ef9d6 +Subproject commit 864a05282841bf04006890f04d11d60d1a046aa9 diff --git a/native/Avalonia.Native/README.md b/native/Avalonia.Native/README.md new file mode 100644 index 0000000000..47e06b996e --- /dev/null +++ b/native/Avalonia.Native/README.md @@ -0,0 +1,87 @@ +# Avalonia.Native + +This project implements the macOS native platform backend for Avalonia using Objective-C++ and COM (Component Object Model) interfaces. + + +## COM Reference Management + +This codebase uses COM for cross-boundary object lifetime management. COM types are typically prefixed with `IAvn` (interfaces) or `Avn` (implementations). All COM objects ultimately derive from `IUnknown` and use reference counting (`AddRef`/`Release`). + +**No raw COM pointer should ever be stored in class fields, instance variables, closures, or containers.** Raw COM pointers are only acceptable as function parameters and local variables with the lifetime of the current function call. + +### COM Return Value Convention + +By convention, any COM interface reference returned from a COM call has its reference counter incremented — it is the caller's responsibility to release it. With the `IFoo* GetFoo()` pattern it is hard to track this correctly, so all methods in `avn.idl` should use the out-parameter pattern instead: + +```cpp +// WRONG — easy to leak or forget Release: +IFoo* GetFoo(); + +// CORRECT — use HRESULT + out-parameter: +HRESULT GetFoo(IFoo** ppv); +``` +# Smart pointer types + +### Objective-C Objects + +For Objective-C objects, reference counting is provided by the compiler. Objective-C pointers _look_ like raw pointers, however every `NSObject*` reference is properly ref-counted by ARC (Automatic Reference Counting). No manual wrapping is needed for `NSObject*` fields. + +### COM Smart Pointer Types + +All retained COM references must use one of the following wrappers defined in `inc/comimpl.h`: + +#### `ComPtr` — Owning Reference + +Use for any COM pointer that the holder needs to keep alive. + +```cpp +ComPtr _window; // correct +IAvnWindow* _window; // WRONG — raw COM pointer in a field +``` + +#### `ComObjectWeakPtr` — Non-Owning Weak Reference + +Use for intentional non-owning references to `ComObject`-derived objects (internal implementations). Allows safely referencing COM objects without extending their lifetime. + +```cpp +ComObjectWeakPtr _parent; // correct +WindowBaseImpl* _parent; // WRONG +``` + +Access weak references with `tryGet()`, which returns a `ComPtr` (null if the object was destroyed): + +```cpp +auto parent = _parent.tryGet(); +if (parent) { + parent->DoSomething(); +} +``` + +#### `ComStaticPtr` — Process-Lifetime Static Reference + +Use for static/global COM singletons that must live for the entire process lifetime. Intentionally does **not** Release in its destructor to avoid crashes during app teardown. + +```cpp +static ComStaticPtr GlDisplay; // correct +static IAvnGlDisplay* GlDisplay; // WRONG +``` + +Assign via `set()`: + +```cpp +GlDisplay.set(comnew()); +``` + +### `comnew(args...)` — COM Object Factory + +A convenience template similar to `std::make_shared`. Creates a new COM object and returns it wrapped in a `ComPtr` with correct ownership (no double-AddRef): + +```cpp +// Instead of: +ComPtr cursor(new Cursor(nsCursor), true); + +// Write: +ComPtr cursor = comnew(nsCursor); +``` + +This works because `new T()` on a `ComObject`-derived type starts with refcount=1, and `comnew` wraps it in a `ComPtr` that takes ownership without an additional `AddRef`. diff --git a/native/Avalonia.Native/inc/comimpl.h b/native/Avalonia.Native/inc/comimpl.h index e16adb1ec2..0b09ee66fb 100644 --- a/native/Avalonia.Native/inc/comimpl.h +++ b/native/Avalonia.Native/inc/comimpl.h @@ -8,6 +8,7 @@ #include #include +#include /** START_COM_CALL causes AddRef to be called at the beginning of a function. @@ -110,6 +111,11 @@ public: TInterface** getPPV() { + if(_obj) + { + _obj->Release(); + _obj = nullptr; + } return &_obj; } @@ -138,6 +144,78 @@ public: } }; +template +ComPtr comnew(Args&&... args) +{ + return ComPtr(new T(std::forward(args)...), true); +} + +/** + * ComStaticPtr is a COM smart pointer for process-lifetime static singletons. + * It AddRef/Release on set/reset, but intentionally does NOT Release in its destructor + * to avoid crashes during app teardown when destruction order is undefined. + */ +template +class ComStaticPtr +{ +private: + TInterface* _obj = nullptr; +public: + ComStaticPtr() = default; + ~ComStaticPtr() = default; + + ComStaticPtr(const ComPtr& ptr) + { + _obj = ptr; + if (_obj) + _obj->AddRef(); + } + + ComStaticPtr(const ComStaticPtr&) = delete; + ComStaticPtr(ComStaticPtr&&) = delete; + ComStaticPtr& operator=(const ComStaticPtr&) = delete; + ComStaticPtr& operator=(ComStaticPtr&&) = delete; + + void set(TInterface* obj) + { + if (_obj == obj) + return; + if (_obj) + _obj->Release(); + _obj = obj; + if (_obj) + _obj->AddRef(); + } + + void setNoAddRef(TInterface* obj) + { + if (_obj) + _obj->Release(); + _obj = obj; + } + + void reset() + { + if (_obj) + { + _obj->Release(); + _obj = nullptr; + } + } + + TInterface* getRaw() const { return _obj; } + + template ComPtr getComPtr() + { + if (_obj == nullptr) + return nullptr; + return dynamic_cast(_obj); + } + + operator TInterface*() const { return _obj; } + TInterface* operator->() const { return _obj; } +}; + class ComObjectWeakRefToken { public: @@ -249,6 +327,9 @@ public: _rawPtr = nullptr; _token = nullptr; } + + bool operator==(const ComObjectWeakPtr& other) const { return _rawPtr == other._rawPtr; } + bool operator!=(const ComObjectWeakPtr& other) const { return _rawPtr != other._rawPtr; } }; #define FORWARD_IUNKNOWN() \ diff --git a/native/Avalonia.Native/src/OSX/AvnString.mm b/native/Avalonia.Native/src/OSX/AvnString.mm index 78a40b215e..b6964195e1 100644 --- a/native/Avalonia.Native/src/OSX/AvnString.mm +++ b/native/Avalonia.Native/src/OSX/AvnString.mm @@ -79,16 +79,14 @@ public: class AvnStringArrayImpl : public virtual ComSingleObject { private: - std::vector> _list; + std::vector> _list; public: FORWARD_IUNKNOWN() AvnStringArrayImpl(NSArray* array) { for(int c = 0; c < [array count]; c++) { - ComPtr s; - *s.getPPV() = new AvnStringImpl([array objectAtIndex:c]); - _list.push_back(s); + _list.push_back(comnew([array objectAtIndex:c])); } } @@ -96,17 +94,14 @@ public: { for(int c = 0; c < [array count]; c++) { - ComPtr s; - *s.getPPV() = new AvnStringImpl([array objectAtIndex:c].absoluteString); + auto s = comnew([array objectAtIndex:c].absoluteString); _list.push_back(s); } } AvnStringArrayImpl(NSString* string) { - ComPtr s; - *s.getPPV() = new AvnStringImpl(string); - _list.push_back(s); + _list.push_back(comnew(string)); } virtual unsigned int GetCount() override diff --git a/native/Avalonia.Native/src/OSX/AvnWindow.mm b/native/Avalonia.Native/src/OSX/AvnWindow.mm index 1e7c98cb3a..b2f20d556b 100644 --- a/native/Avalonia.Native/src/OSX/AvnWindow.mm +++ b/native/Avalonia.Native/src/OSX/AvnWindow.mm @@ -37,7 +37,7 @@ bool _isTransitioningToFullScreen; bool _isTitlebarSession; AvnMenu* _menu; - IAvnAutomationPeer* _automationPeer; + ComPtr _automationPeer; AvnAutomationNode* _automationNode; } @@ -144,8 +144,6 @@ { auto appMenu = ::GetAppMenu(); - auto nativeAppMenu = dynamic_cast(appMenu); - [[appMenuItem menu] removeItem:appMenuItem]; if(_menu != nullptr) @@ -153,9 +151,9 @@ [_menu setHasGlobalMenuItem:false]; } - [nativeAppMenu->GetNative() addItem:appMenuItem]; + [appMenu->GetNative() addItem:appMenuItem]; - [NSApp setMenu:nativeAppMenu->GetNative()]; + [NSApp setMenu:appMenu->GetNative()]; } } @@ -658,6 +656,18 @@ - (void)raisePropertyChanged:(AvnAutomationProperty)property { + switch (property) + { + case AutomationPeer_Name: + NSAccessibilityPostNotification(self, NSAccessibilityTitleChangedNotification); + break; + case AutomationPeer_BoundingRectangle: + NSAccessibilityPostNotification(self, NSAccessibilityMovedNotification); + NSAccessibilityPostNotification(self, NSAccessibilityResizedNotification); + break; + default: + break; + } } @end diff --git a/native/Avalonia.Native/src/OSX/StorageProvider.mm b/native/Avalonia.Native/src/OSX/StorageProvider.mm index e0a471a4f3..6abf4604bc 100644 --- a/native/Avalonia.Native/src/OSX/StorageProvider.mm +++ b/native/Avalonia.Native/src/OSX/StorageProvider.mm @@ -172,6 +172,7 @@ public: { @autoreleasepool { + ComPtr ownedEvents(events); // for use in the callback auto panel = [NSOpenPanel openPanel]; panel.allowsMultipleSelection = allowMultiple; @@ -201,7 +202,7 @@ public: if(urls.count > 0) { auto uriStrings = CreateAvnStringArray(urls); - events->OnCompleted(uriStrings); + ownedEvents->OnCompleted(uriStrings); [panel orderOut:panel]; @@ -214,7 +215,7 @@ public: } } - events->OnCompleted(nullptr); + ownedEvents->OnCompleted(nullptr); }; @@ -239,6 +240,7 @@ public: { @autoreleasepool { + ComPtr ownedEvents(events); // for use in the callback auto panel = [NSOpenPanel openPanel]; panel.allowsMultipleSelection = allowMultiple; @@ -273,7 +275,7 @@ public: if(urls.count > 0) { auto uriStrings = CreateAvnStringArray(urls); - events->OnCompleted(uriStrings); + ownedEvents->OnCompleted(uriStrings); [panel orderOut:panel]; @@ -286,7 +288,7 @@ public: } } - events->OnCompleted(nullptr); + ownedEvents->OnCompleted(nullptr); }; @@ -310,6 +312,7 @@ public: { @autoreleasepool { + ComPtr ownedEvents(events); // for use in the callback auto panel = [NSSavePanel savePanel]; if(title != nullptr) @@ -350,7 +353,7 @@ public: auto url = [panel URL]; auto urls = [NSArray arrayWithObject:url]; auto uriStrings = CreateAvnStringArray(urls); - events->OnCompletedWithFilter(uriStrings, selectedIndex); + ownedEvents->OnCompletedWithFilter(uriStrings, selectedIndex); [panel orderOut:panel]; @@ -362,7 +365,7 @@ public: return; } - events->OnCompletedWithFilter(nullptr, selectedIndex); + ownedEvents->OnCompletedWithFilter(nullptr, selectedIndex); }; diff --git a/native/Avalonia.Native/src/OSX/TopLevelImpl.mm b/native/Avalonia.Native/src/OSX/TopLevelImpl.mm index bdfc1be62f..d0b62d9d55 100644 --- a/native/Avalonia.Native/src/OSX/TopLevelImpl.mm +++ b/native/Avalonia.Native/src/OSX/TopLevelImpl.mm @@ -311,7 +311,9 @@ HRESULT TopLevelImpl::BeginDragAndDropOperation( for (auto i = 0; i < itemCount; ++i) { - auto item = source->GetItem(i); + ComPtr item; + if(S_OK != source->GetItem(i, item.getPPV())) + continue; auto writeableItem = [[WriteableClipboardItem alloc] initWithItem:item source:source]; auto draggingItem = [[NSDraggingItem alloc] initWithPasteboardWriter:writeableItem]; [draggingItem setDraggingFrame:dragItemRect contents:dragItemImage]; diff --git a/native/Avalonia.Native/src/OSX/WindowBaseImpl.h b/native/Avalonia.Native/src/OSX/WindowBaseImpl.h index 873a520d6d..2fbbf60bba 100644 --- a/native/Avalonia.Native/src/OSX/WindowBaseImpl.h +++ b/native/Avalonia.Native/src/OSX/WindowBaseImpl.h @@ -101,7 +101,7 @@ protected: AutoFitContentView *StandardContainer; AvnPoint lastPositionSet; bool _shown; - std::list _children; + std::list> _children; public: ComObjectWeakPtr Parent = nullptr; diff --git a/native/Avalonia.Native/src/OSX/WindowBaseImpl.mm b/native/Avalonia.Native/src/OSX/WindowBaseImpl.mm index 551ea4c2e0..2a1de62b05 100644 --- a/native/Avalonia.Native/src/OSX/WindowBaseImpl.mm +++ b/native/Avalonia.Native/src/OSX/WindowBaseImpl.mm @@ -27,7 +27,7 @@ WindowBaseImpl::~WindowBaseImpl() { } WindowBaseImpl::WindowBaseImpl(IAvnWindowBaseEvents *events, bool usePanel) : TopLevelImpl(events) { - _children = std::list(); + _children = std::list>(); _shown = false; _inResize = false; BaseEvents = events; diff --git a/native/Avalonia.Native/src/OSX/WindowImpl.mm b/native/Avalonia.Native/src/OSX/WindowImpl.mm index f42b7c27cb..548d7aaf09 100644 --- a/native/Avalonia.Native/src/OSX/WindowImpl.mm +++ b/native/Avalonia.Native/src/OSX/WindowImpl.mm @@ -100,11 +100,14 @@ void WindowImpl::ZOrderChildWindows() { for(auto iterator = _children.begin(); iterator != _children.end(); iterator++) { - auto window = (*iterator)->Window; + auto child = (*iterator).tryGet(); + if (!child) continue; + + auto window = child->Window; // #9565: Only bring window to front if it's on the currently active space if ([window isOnActiveSpace]) { - (*iterator)->BringToFront(); + child->BringToFront(); } } } @@ -113,7 +116,8 @@ bool WindowImpl::CanBecomeKeyWindow() { for(auto iterator = _children.begin(); iterator != _children.end(); iterator++) { - if((*iterator)->IsModal()) + auto child = (*iterator).tryGet(); + if(child && child->IsModal()) { return false; } diff --git a/native/Avalonia.Native/src/OSX/automation.mm b/native/Avalonia.Native/src/OSX/automation.mm index b42dc22f7a..412e7ddc5f 100644 --- a/native/Avalonia.Native/src/OSX/automation.mm +++ b/native/Avalonia.Native/src/OSX/automation.mm @@ -8,7 +8,7 @@ @implementation AvnAccessibilityElement { - IAvnAutomationPeer* _peer; + ComPtr _peer; AvnAutomationNode* _node; NSMutableArray* _children; NSArray* _attributeNames; @@ -70,7 +70,7 @@ return [NSString stringWithFormat:@"%@ '%@' (%p)", GetNSStringAndRelease(_peer->GetClassName()), GetNSStringAndRelease(_peer->GetName()), - _peer]; + _peer.getRaw()]; } - (IAvnAutomationPeer *)peer @@ -317,7 +317,30 @@ - (id)accessibilityParent { auto parentPeer = _peer->GetParent(); - return parentPeer ? [AvnAccessibilityElement acquire:parentPeer] : [NSApplication sharedApplication]; + + if (parentPeer == nullptr) + return [NSApplication sharedApplication]; + + // When the parent is a root provider, return the AvnView (content view) + // rather than the AvnWindow. macOS accessibility requires that the parent + // chain is consistent with the children chain: AvnView exposes these + // elements as its accessibilityChildren, so the elements must report + // AvnView as their accessibilityParent. A mismatch causes macOS to be + // unable to resolve AXUIElementRefs back to the correct object, which + // makes setter calls like AXUIElementSetAttributeValue silently land on + // AvnView instead of the target AvnAccessibilityElement. + if (parentPeer->IsRootProvider()) + { + auto window = parentPeer->RootProvider_GetWindow(); + if (window != nullptr) + { + auto holder = dynamic_cast(window); + if (holder != nullptr) + return holder->GetNSView(); + } + } + + return [AvnAccessibilityElement acquire:parentPeer]; } - (id)accessibilityTopLevelUIElement @@ -403,7 +426,11 @@ - (BOOL)isAccessibilitySelectorAllowed:(SEL)selector { - if (selector == @selector(accessibilityPerformShowMenu)) + if (selector == @selector(setAccessibilityValue:)) + { + return _peer->IsValueProvider() || _peer->IsRangeValueProvider(); + } + else if (selector == @selector(accessibilityPerformShowMenu)) { return _peer->IsExpandCollapseProvider() && _peer->ExpandCollapseProvider_GetShowsMenu(); } @@ -422,7 +449,7 @@ { return _peer->IsRangeValueProvider(); } - + return [super isAccessibilitySelectorAllowed:selector]; } @@ -461,8 +488,32 @@ - (void)raisePropertyChanged:(AvnAutomationProperty)property { - if (property == AutomationPeer_Name && _peer->GetLiveSetting() != LiveSettingOff) - [self raiseLiveRegionChanged]; + switch (property) + { + case AutomationPeer_Name: + NSAccessibilityPostNotification(self, NSAccessibilityTitleChangedNotification); + if (_peer->GetLiveSetting() != LiveSettingOff) + [self raiseLiveRegionChanged]; + break; + case ValueProvider_Value: + case RangeValueProvider_Value: + NSAccessibilityPostNotification(self, NSAccessibilityValueChangedNotification); + break; + case AutomationPeer_BoundingRectangle: + NSAccessibilityPostNotification(self, NSAccessibilityMovedNotification); + NSAccessibilityPostNotification(self, NSAccessibilityResizedNotification); + break; + case SelectionItemProvider_IsSelected: + case SelectionProvider_Selection: + NSAccessibilityPostNotification(self, NSAccessibilitySelectedChildrenChangedNotification); + break; + case ToggleProvider_ToggleState: + case ExpandCollapseProvider_ExpandCollapseState: + NSAccessibilityPostNotification(self, NSAccessibilityValueChangedNotification); + break; + default: + break; + } } - (void)raiseLiveRegionChanged diff --git a/native/Avalonia.Native/src/OSX/cgl.mm b/native/Avalonia.Native/src/OSX/cgl.mm index 4fc4064df1..e963322033 100644 --- a/native/Avalonia.Native/src/OSX/cgl.mm +++ b/native/Avalonia.Native/src/OSX/cgl.mm @@ -219,7 +219,7 @@ public: } }; -static IAvnGlDisplay* GlDisplay = new AvnGlDisplay(); +static ComStaticPtr GlDisplay(comnew()); extern IAvnGlDisplay* GetGlDisplay() diff --git a/native/Avalonia.Native/src/OSX/clipboard.mm b/native/Avalonia.Native/src/OSX/clipboard.mm index 9786a64b27..f050a894c8 100644 --- a/native/Avalonia.Native/src/OSX/clipboard.mm +++ b/native/Avalonia.Native/src/OSX/clipboard.mm @@ -183,7 +183,9 @@ public: for (auto i = 0; i < count; ++i) { - auto item = source->GetItem(i); + ComPtr item; + if(S_OK != source->GetItem(i, item.getPPV())) + continue; auto writeableItem = [[WriteableClipboardItem alloc] initWithItem:item source:source]; [writeableItems addObject:writeableItem]; } @@ -219,8 +221,8 @@ extern IAvnClipboard* CreateClipboard(NSPasteboard* pb) @implementation WriteableClipboardItem { - IAvnClipboardDataItem* _item; - IAvnClipboardDataSource* _source; + ComPtr _item; + ComPtr _source; } - (nonnull WriteableClipboardItem*) initWithItem:(nonnull IAvnClipboardDataItem*)item source:(nonnull IAvnClipboardDataSource*)source @@ -229,9 +231,6 @@ extern IAvnClipboard* CreateClipboard(NSPasteboard* pb) _item = item; _source = source; - // Each item references its source so it doesn't get disposed too early. - source->AddRef(); - return self; } @@ -283,8 +282,9 @@ NSString* TryConvertFormatToUti(NSString* format) - (nonnull NSArray*) writableTypesForPasteboard:(nonnull NSPasteboard*)pasteboard { - auto formats = _item->ProvideFormats(); - if (formats == nullptr) + ComPtr formats; + auto hr = _item->ProvideFormats(formats.getPPV()); + if (hr != S_OK || formats == nullptr) return [NSArray array]; auto count = formats->GetCount(); @@ -304,7 +304,6 @@ NSString* TryConvertFormatToUti(NSString* format) if (uti != nil) [utis addObject:uti]; } - formats->Release(); [utis addObject:GetAvnCustomDataType()]; @@ -323,8 +322,9 @@ NSString* TryConvertFormatToUti(NSString* format) if ([type isEqualToString:GetAvnCustomDataType()]) return @""; - ComPtr value(_item->GetValue([type UTF8String]), true); - if (value.getRaw() == nullptr) + ComPtr value; + HRESULT hr = _item->GetValue([type UTF8String], value.getPPV()); + if (hr != S_OK || value.getRaw() == nullptr) return nil; if (value->IsString()) @@ -336,19 +336,4 @@ NSString* TryConvertFormatToUti(NSString* format) return [NSData dataWithBytesNoCopy:buffer length:length]; } -- (void) dealloc -{ - if (_item != nullptr) - { - _item->Release(); - _item = nullptr; - } - - if (_source != nullptr) - { - _source->Release(); - _source = nullptr; - } -} - @end diff --git a/native/Avalonia.Native/src/OSX/common.h b/native/Avalonia.Native/src/OSX/common.h index a993784fc4..6564a457af 100644 --- a/native/Avalonia.Native/src/OSX/common.h +++ b/native/Avalonia.Native/src/OSX/common.h @@ -36,7 +36,8 @@ extern IAvnPlatformRenderTimer* CreatePlatformRenderTimer(); extern IAvnNativeObjectsMemoryManagement* CreateMemoryManagementHelper(); extern void SetAppMenu(IAvnMenu *menu); extern void SetServicesMenu (IAvnMenu* menu); -extern IAvnMenu* GetAppMenu (); +class AvnAppMenu; +extern AvnAppMenu* GetAppMenu (); extern NSMenuItem* GetAppMenuItem (); extern void SetDockMenu(NSMenu* menu); diff --git a/native/Avalonia.Native/src/OSX/cursor.h b/native/Avalonia.Native/src/OSX/cursor.h index 75a9c3d2ad..cc7f765785 100644 --- a/native/Avalonia.Native/src/OSX/cursor.h +++ b/native/Avalonia.Native/src/OSX/cursor.h @@ -28,5 +28,4 @@ public: } }; -extern std::map s_cursorMap; #endif /* cursor_h */ diff --git a/native/Avalonia.Native/src/OSX/cursor.mm b/native/Avalonia.Native/src/OSX/cursor.mm index 855a9a9abc..9947aa7c53 100644 --- a/native/Avalonia.Native/src/OSX/cursor.mm +++ b/native/Avalonia.Native/src/OSX/cursor.mm @@ -3,24 +3,24 @@ class CursorFactory : public ComSingleObject { - Cursor* arrowCursor = new Cursor([NSCursor arrowCursor]); - Cursor* crossCursor = new Cursor([NSCursor crosshairCursor]); - Cursor* resizeUpCursor = new Cursor([NSCursor resizeUpCursor]); - Cursor* resizeDownCursor = new Cursor([NSCursor resizeDownCursor]); - Cursor* resizeUpDownCursor = new Cursor([NSCursor resizeUpDownCursor]); - Cursor* dragCopyCursor = new Cursor([NSCursor dragCopyCursor]); - Cursor* openHandCursor = new Cursor([NSCursor openHandCursor]); - Cursor* dragLinkCursor = new Cursor([NSCursor dragLinkCursor]); - Cursor* pointingHandCursor = new Cursor([NSCursor pointingHandCursor]); - Cursor* contextualMenuCursor = new Cursor([NSCursor contextualMenuCursor]); - Cursor* IBeamCursor = new Cursor([NSCursor IBeamCursor]); - Cursor* resizeLeftCursor = new Cursor([NSCursor resizeLeftCursor]); - Cursor* resizeRightCursor = new Cursor([NSCursor resizeRightCursor]); - Cursor* resizeWestEastCursor = new Cursor([NSCursor resizeLeftRightCursor]); - Cursor* operationNotAllowedCursor = new Cursor([NSCursor operationNotAllowedCursor]); - Cursor* noCursor = new Cursor([NSCursor arrowCursor], true); + ComPtr arrowCursor = comnew([NSCursor arrowCursor]); + ComPtr crossCursor = comnew([NSCursor crosshairCursor]); + ComPtr resizeUpCursor = comnew([NSCursor resizeUpCursor]); + ComPtr resizeDownCursor = comnew([NSCursor resizeDownCursor]); + ComPtr resizeUpDownCursor = comnew([NSCursor resizeUpDownCursor]); + ComPtr dragCopyCursor = comnew([NSCursor dragCopyCursor]); + ComPtr openHandCursor = comnew([NSCursor openHandCursor]); + ComPtr dragLinkCursor = comnew([NSCursor dragLinkCursor]); + ComPtr pointingHandCursor = comnew([NSCursor pointingHandCursor]); + ComPtr contextualMenuCursor = comnew([NSCursor contextualMenuCursor]); + ComPtr IBeamCursor = comnew([NSCursor IBeamCursor]); + ComPtr resizeLeftCursor = comnew([NSCursor resizeLeftCursor]); + ComPtr resizeRightCursor = comnew([NSCursor resizeRightCursor]); + ComPtr resizeWestEastCursor = comnew([NSCursor resizeLeftRightCursor]); + ComPtr operationNotAllowedCursor = comnew([NSCursor operationNotAllowedCursor]); + ComPtr noCursor = comnew([NSCursor arrowCursor], true); - std::map s_cursorMap = + std::map> s_cursorMap = { { CursorArrow, arrowCursor }, { CursorAppStarting, arrowCursor }, diff --git a/native/Avalonia.Native/src/OSX/menu.h b/native/Avalonia.Native/src/OSX/menu.h index eb706d3e07..72c19eb120 100644 --- a/native/Avalonia.Native/src/OSX/menu.h +++ b/native/Avalonia.Native/src/OSX/menu.h @@ -29,8 +29,8 @@ class AvnAppMenuItem : public ComSingleObject { private: NSMenuItem* _native; // here we hold a pointer to an AvnMenuItem - IAvnActionCallback* _callback; - IAvnPredicateCallback* _predicate; + ComPtr _callback; + ComPtr _predicate; bool _isCheckable; public: diff --git a/native/Avalonia.Native/src/OSX/menu.mm b/native/Avalonia.Native/src/OSX/menu.mm index 1adbe093bb..a67c96a796 100644 --- a/native/Avalonia.Native/src/OSX/menu.mm +++ b/native/Avalonia.Native/src/OSX/menu.mm @@ -35,7 +35,7 @@ @implementation AvnMenuItem { - AvnAppMenuItem* _item; + ComObjectWeakPtr _item; } - (id) initWithAvnAppMenuItem: (AvnAppMenuItem*)menuItem @@ -61,13 +61,19 @@ { return YES; } + auto item = _item.tryGet(); + if(item == nullptr) + return NO; - return _item->EvaluateItemEnabled(); + return item->EvaluateItemEnabled(); } - (void)didSelectItem:(nullable id)sender { - _item->RaiseOnClicked(); + auto item = _item.tryGet(); + if(item == nullptr) + return; + item->RaiseOnClicked(); } @end @@ -478,17 +484,15 @@ extern IAvnMenuItem* CreateAppMenuItemSeparator() } } -static IAvnMenu* s_appMenu = nullptr; +static ComStaticPtr s_appMenu; static NSMenuItem* s_appMenuItem = nullptr; extern void SetAppMenu(IAvnMenu *menu) { - s_appMenu = menu; + s_appMenu.set(dynamic_cast(menu)); if(s_appMenu != nullptr) { - auto nativeMenu = dynamic_cast(s_appMenu); - auto currentMenu = [s_appMenuItem menu]; if (currentMenu != nullptr) @@ -496,7 +500,7 @@ extern void SetAppMenu(IAvnMenu *menu) [currentMenu removeItem:s_appMenuItem]; } - s_appMenuItem = [nativeMenu->GetNative() itemAtIndex:0]; + s_appMenuItem = [s_appMenu->GetNative() itemAtIndex:0]; if (currentMenu == nullptr) { @@ -524,9 +528,9 @@ extern void SetServicesMenu (IAvnMenu* menu) [NSApplication sharedApplication].servicesMenu = nativeMenu->GetNative(); } -extern IAvnMenu* GetAppMenu () +extern AvnAppMenu* GetAppMenu () { - return s_appMenu; + return s_appMenu.getRaw(); } extern NSMenuItem* GetAppMenuItem () diff --git a/native/Avalonia.Native/src/OSX/metal.mm b/native/Avalonia.Native/src/OSX/metal.mm index 517872b147..3da1282306 100644 --- a/native/Avalonia.Native/src/OSX/metal.mm +++ b/native/Avalonia.Native/src/OSX/metal.mm @@ -304,7 +304,7 @@ public: } }; -static AvnMetalDisplay* _display = new AvnMetalDisplay(); +static ComStaticPtr _display(comnew()); extern IAvnMetalDisplay* GetMetalDisplay() { diff --git a/nukebuild/Build.cs b/nukebuild/Build.cs index 41c5cbe0cf..b9e27bdfcc 100644 --- a/nukebuild/Build.cs +++ b/nukebuild/Build.cs @@ -481,7 +481,7 @@ partial class Build : NukeBuild .SetProperty("AvaloniaVersion", Parameters.Version) .SetProperty("NuGetPackageRoot", nugetCacheDirectory) .SetPackageDirectory(nugetCacheDirectory) - .SetProjectFile(buildTestsDirectory / "BuildTests.sln") + .SetProjectFile(buildTestsDirectory / "BuildTests.slnx") .SetProcessAdditionalArguments("--nodeReuse:false")); // Standard compilation - should have compiled XAML diff --git a/nukebuild/_build.csproj b/nukebuild/_build.csproj index c4d20ad4b7..c58a2b894b 100644 --- a/nukebuild/_build.csproj +++ b/nukebuild/_build.csproj @@ -7,11 +7,11 @@ $(NoWarn);CS0649;CA1847 1 $(AvsCurrentTargetFramework) + true - @@ -22,6 +22,8 @@ + + diff --git a/readme.md b/readme.md index 08fd014798..9ed6c59f90 100644 --- a/readme.md +++ b/readme.md @@ -1,10 +1,8 @@ [![Star_Banner@3x](https://github.com/user-attachments/assets/d55eb468-fa5c-499f-858e-54618beb6f92)](https://github.com/sponsors/AvaloniaUI) -[![Hero](https://github.com/user-attachments/assets/7436f0e7-8aea-4cff-886a-e2faef29ca37)](https://avaloniaui.net?utm_source=github&utm_medium=referral&utm_content=readme_link) +[![Hero](https://github.com/user-attachments/assets/404db53f-f515-4a3a-bb18-f145dc34cedb)](https://avaloniaui.net?utm_source=github&utm_medium=referral&utm_content=readme_link) -[![Telegram](https://raw.githubusercontent.com/Patrolavia/telegram-badge/master/chat.svg)](https://t.me/Avalonia) - [![Build Status](https://dev.azure.com/AvaloniaUI/AvaloniaUI/_apis/build/status/AvaloniaUI.Avalonia)](https://dev.azure.com/AvaloniaUI/AvaloniaUI/_build/latest?definitionId=4) [![Backers on Open Collective](https://img.shields.io/opencollective/backers/Avalonia?logo=opencollective)](#backers) [![Sponsors on Open Collective](https://img.shields.io/opencollective/sponsors/Avalonia?logo=opencollective)](#sponsors) [![GitHub Sponsors](https://img.shields.io/github/sponsors/AvaloniaUI?logo=github)](https://github.com/sponsors/AvaloniaUI) ![License](https://img.shields.io/github/license/avaloniaui/avalonia.svg) -
-[![NuGet](https://img.shields.io/nuget/v/Avalonia.svg)](https://www.nuget.org/packages/Avalonia) [![downloads](https://img.shields.io/nuget/dt/avalonia)](https://www.nuget.org/packages/Avalonia) ![Size](https://img.shields.io/github/repo-size/avaloniaui/avalonia.svg) + [![Build Status](https://dev.azure.com/AvaloniaUI/AvaloniaUI/_apis/build/status/AvaloniaUI.Avalonia)](https://dev.azure.com/AvaloniaUI/AvaloniaUI/_build/latest?definitionId=4) ![License](https://img.shields.io/github/license/avaloniaui/avalonia.svg) +[![NuGet](https://img.shields.io/nuget/v/Avalonia.svg)](https://www.nuget.org/packages/Avalonia) [![downloads](https://img.shields.io/nuget/dt/avalonia)](https://www.nuget.org/packages/Avalonia) ## 📖 About @@ -14,26 +12,33 @@ Considered by many to be the spiritual successor to WPF, Avalonia UI provides a For those seeking a cross-platform WPF, we have created [Avalonia XPF]([https://avaloniaui.net/xpf](https://avaloniaui.net/xpf?utm_source=github&utm_medium=referral&utm_content=readme_link)), enabling WPF applications to run on macOS and Linux with little to no code changes. Avalonia XPF is a commercial product and is licensed per-app, per-platform. -#### Blog +### Blog To see the latest announcements and read about the state of Avalonia, check out the [Avalonia UI Blog](https://www.avaloniaui.net/blog?utm_source=github&utm_medium=referral&utm_content=readme_link). -#### Breaking Changes -You can also see what [breaking changes](https://github.com/AvaloniaUI/Avalonia/issues/3538) we have planned and what our [past breaking changes](https://github.com/AvaloniaUI/Avalonia/wiki/Breaking-Changes) have been. +### Sponsorship +Avalonia development is supported by the generous sponsorship of [Devolutions](https://devolutions.net/?utm_source=pr&utm_medium=partnership&utm_campaign=avalonia&utm_id=C086&member_status=responded). -#### Awesome Avalonia -[Awesome Avalonia](https://github.com/AvaloniaCommunity/awesome-avalonia) is community-curated list of awesome Avalonia UI tools, libraries, projects and resources. Go and see what people are building with Avalonia! + + + +Devolutions Logo + +--- ## 🚀 Getting Started -See our [Get Started](https://avaloniaui.net/gettingstarted?utm_source=github&utm_medium=referral&utm_content=readme_link) guide to begin developing apps with Avalonia UI. +See our [Get Started](https://docs.avaloniaui.net/docs/get-started?utm_source=github&utm_medium=referral&utm_content=readme_link) guide to begin developing apps with Avalonia UI. + +### Visual Studio Code +The [Avalonia for Code](https://marketplace.visualstudio.com/items?itemName=AvaloniaTeam.vscode-avalonia) extension gives you everything you need to build cross-platform .NET apps. XAML previewing, code completion, diagnostics, and code navigation, all inside the world's most popular editor. It's the fastest way to get started with Avalonia. -### Visual Studio -The Avalonia [Visual Studio Extension](https://marketplace.visualstudio.com/items?itemName=AvaloniaTeam.AvaloniaVS) contains project and control templates that will help you get started, or you can use the .NET Core CLI. For a starter guide see our [documentation](https://docs.avaloniaui.net/docs/getting-started). +### Visual Studio 2022 & 2026 +The Avalonia [Visual Studio Extension](https://marketplace.visualstudio.com/items?itemName=AvaloniaTeam.AvaloniaVS) contains project and control templates, a live XAML previewer, code completion, and full diagnostics directly into Visual Studio. ### JetBrains Rider -[JetBrains Rider](https://www.jetbrains.com/rider/whatsnew/?mkt_tok=eyJpIjoiTURBNU1HSmhNV0kwTUdFMiIsInQiOiJtNnU2VEc1TlNLa1ZRVkROYmdZYVpYREJsaU1qdUhmS3dxSzRHczdYWHl0RVlTNDMwSFwvNUs3VENTNVM0bVcyNFdaRmVYZzVWTTF1N3VrQWNGTkJreEhlam1hMlB4UVVWcHBGM1dNOUxoXC95YnRQdGgyUXl1YmZCM3h3d3BVWWdBIn0%3D#avalonia-support) now has official support for Avalonia. +[JetBrains Rider](https://www.jetbrains.com/rider/whatsnew/?mkt_tok=eyJpIjoiTURBNU1HSmhNV0kwTUdFMiIsInQiOiJtNnU2VEc1TlNLa1ZRVkROYmdZYVpYREJsaU1qdUhmS3dxSzRHczdYWHl0RVlTNDMwSFwvNUs3VENTNVM0bVcyNFdaRmVYZzVWTTF1N3VrQWNGTkJreEhlam1hMlB4UVVWcHBGM1dNOUxoXC95YnRQdGgyUXl1YmZCM3h3d3BVWWdBIn0%3D#avalonia-support) supports for Avalonia. -Code completion, inspections and refactorings are supported out of the box, for XAML previewer add `https://plugins.jetbrains.com/plugins/dev/14839` to plugin repositories and install [AvaloniaRider](https://github.com/ForNeVeR/AvaloniaRider) plugin. +Code completion, inspections and refactorings are supported out of the box. To enable previewing XAML, you will require a 3rd party, community-maintained extension: `https://plugins.jetbrains.com/plugins/dev/14839` to plugin repositories and install [AvaloniaRider](https://github.com/ForNeVeR/AvaloniaRider) plugin. ### Avalonia Packages Avalonia is delivered via NuGet package manager. You can find the packages here: https://www.nuget.org/packages/Avalonia/ @@ -43,79 +48,58 @@ Use these commands in the Package Manager console to install Avalonia manually: Install-Package Avalonia Install-Package Avalonia.Desktop ``` - -## Showcase -[![Showcase_Banner@3x](https://github.com/user-attachments/assets/42d21506-3d5a-4213-a4b4-7889a48acdc8)](https://avaloniaui.net/showcase?utm_source=github&utm_medium=referral&utm_content=readme_link) - -See what others have built with Avalonia UI on our [Showcase](https://avaloniaui.net/showcase?utm_source=github&utm_medium=referral&utm_content=readme_link). We welcome submissions! - -## Sponsors -Avalonia development is supported by the generous sponsorship of [Devolutions](https://devolutions.net/?utm_source=pr&utm_medium=partnership&utm_campaign=avalonia&utm_id=C086&member_status=responded). - -devolutions-color-hr - - -## Community -Join our community hub to get early access to upcoming features, share your thoughts, and connect directly with the Avalonia team. -[![communityannouncement-banner 1](https://github.com/user-attachments/assets/21950b56-cd28-4574-9a0a-73bb17b89d31)](https://avaloniaui.community) +--- ## Bleeding Edge Builds We also have a [nightly build](https://github.com/AvaloniaUI/Avalonia/wiki/Using-nightly-build-feed) which tracks the current state of master. Although these packages are less stable than the release on NuGet.org, you'll get all the latest features and bugfixes right away and many of our users actually prefer this feed! +--- ## Learning ### Documentation Documentation can be found at https://docs.avaloniaui.net. ### Tutorials -We also have a [tutorial](https://docs.avaloniaui.net/docs/getting-started/programming-with-avalonia) over there for newcomers. +We also have a [tutorial](https://docs.avaloniaui.net/docs/get-started/starter-tutorial) over there for newcomers. ### Samples We have a [range of samples](https://github.com/AvaloniaUI/Avalonia.Samples) to help you get started. +### Breaking Changes +You can also see what [breaking changes](https://docs.avaloniaui.net/docs/avalonia12-breaking-changes) between Avalonia 11 and Avalonia 12. + +--- ## Building and Using See the [build instructions here](docs/build.md). +--- ## Contributing -This project exists thanks to all the people who contribute. - - -Please read the [contribution guidelines](CONTRIBUTING.md) before submitting a pull request. +This project exists thanks to all the people who contribute. Please read the [contribution guidelines](CONTRIBUTING.md) before submitting a pull request. -## Code of Conduct +### Code of Conduct This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. -For more information see the [Code of Conduct](CODE_OF_CONDUCT.md). +For more information, see the [Code of Conduct](CODE_OF_CONDUCT.md). -## Licence - -Avalonia is licenced under the [MIT licence](licence.md). - -## Donate - -Donating to the project is a fantastic way to thank our valued contributors for their hard work. Your donations are shared among our community and awarded for significant contributions. +--- +## Security -If you need support see Commercial Support section below. +If you discover a security vulnerability in any of our SDKs, tools, services, or repositories, please help us keep the community safe by reporting it responsibly. -Donate with BTC or use [Open Collective](https://opencollective.com/avalonia). +You can report security vulnerabilities by emailing **[security@avaloniaui.net](mailto:security@avaloniaui.net)**. -**BTC**: bc1q05wx78qemgy9x6ytl5ljk2xrt00yqargyjm8gx +Please avoid disclosing the issue publicly until we have had a reasonable amount of time to investigate and release a patch or mitigation. We review all legitimate reports and will work with you to quickly resolve the issue. -### Backers +Please note that Avalonia does not operate a bug bounty programme. -Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/Avalonia#backer)] - - - -## Commercial Support - -We have a range of [support plans available](https://avaloniaui.net/support?utm_source=github&utm_medium=referral&utm_content=readme_link) for those looking to partner with the creators of Avalonia, enabling access to the best support at every step of the development process. +--- +## Licence -*Please note that donations are not considered payment for commercial support agreements. Please contact us to discuss your needs first. [team@avaloniaui.net](mailto://team@avaloniaui.net)* +Avalonia is licenced under the [MIT licence](licence.md). -## Avalonia XPF - Our cross-platform WPF +## XPF - cross-platform WPF Unleash the full potential of your existing WPF apps with our cross-platform UI framework, enabling WPF apps to run on macOS and Linux without requiring expensive and risky rewrites. -[![GH_Banner](https://github.com/user-attachments/assets/a6176267-1187-45ff-b82b-fcc7048e54b7)](https://avaloniaui.net/xpf?utm_source=github&utm_medium=referral&utm_content=readme_ad) +[![GH_Banner](https://github.com/user-attachments/assets/d0a3cb13-f35d-41dd-aec9-632fe848acb0)](https://avaloniaui.net/xpf?utm_source=github&utm_medium=referral&utm_content=readme_ad) diff --git a/samples/ControlCatalog.Desktop/ControlCatalog.Desktop.csproj b/samples/ControlCatalog.Desktop/ControlCatalog.Desktop.csproj index 73b983f788..22a091449f 100644 --- a/samples/ControlCatalog.Desktop/ControlCatalog.Desktop.csproj +++ b/samples/ControlCatalog.Desktop/ControlCatalog.Desktop.csproj @@ -5,6 +5,7 @@ $(AvsCurrentTargetFramework) true true + true @@ -37,4 +38,5 @@ + diff --git a/samples/ControlCatalog/App.xaml b/samples/ControlCatalog/App.xaml index 179f64233e..6ab30cc180 100644 --- a/samples/ControlCatalog/App.xaml +++ b/samples/ControlCatalog/App.xaml @@ -8,7 +8,8 @@ - + + diff --git a/samples/ControlCatalog/App.xaml.cs b/samples/ControlCatalog/App.xaml.cs index f14fbb1fa3..71e4113a3a 100644 --- a/samples/ControlCatalog/App.xaml.cs +++ b/samples/ControlCatalog/App.xaml.cs @@ -18,7 +18,7 @@ namespace ControlCatalog private FluentTheme? _fluentTheme; private SimpleTheme? _simpleTheme; private IStyle? _colorPickerFluent, _colorPickerSimple; - + public App() { DataContext = new ApplicationViewModel(); @@ -34,7 +34,7 @@ namespace ControlCatalog _simpleTheme = (SimpleTheme)Resources["SimpleTheme"]!; _colorPickerFluent = (IStyle)Resources["ColorPickerFluent"]!; _colorPickerSimple = (IStyle)Resources["ColorPickerSimple"]!; - + SetCatalogThemes(CatalogTheme.Fluent); } @@ -44,16 +44,22 @@ namespace ControlCatalog { desktopLifetime.MainWindow = new MainWindow { DataContext = new MainWindowViewModel() }; } - else if(ApplicationLifetime is IActivityApplicationLifetime singleViewFactoryApplicationLifetime) + else if (ApplicationLifetime is IActivityApplicationLifetime singleViewFactoryApplicationLifetime) { - singleViewFactoryApplicationLifetime.MainViewFactory = () => new MainView { DataContext = new MainWindowViewModel() }; + singleViewFactoryApplicationLifetime.MainViewFactory = () => new PageNavigationHost() + { + Page = new MainView { DataContext = new MainWindowViewModel() } + }; } else if (ApplicationLifetime is ISingleViewApplicationLifetime singleViewLifetime) { - singleViewLifetime.MainView = new MainView { DataContext = new MainWindowViewModel() }; + singleViewLifetime.MainView = new PageNavigationHost() + { + Page = new MainView { DataContext = new MainWindowViewModel() } + }; } - if (this.TryGetFeature() is {} activatableApplicationLifetime) + if (this.TryGetFeature() is { } activatableApplicationLifetime) { activatableApplicationLifetime.Activated += (sender, args) => Console.WriteLine($"App activated: {args.Kind}"); @@ -99,14 +105,14 @@ namespace ControlCatalog } private CatalogTheme _prevTheme; - public static CatalogTheme CurrentTheme => ((App)Current!)._prevTheme; + public static CatalogTheme CurrentTheme => ((App)Current!)._prevTheme; public static void SetCatalogThemes(CatalogTheme theme) { var app = (App)Current!; var prevTheme = app._prevTheme; app._prevTheme = theme; var shouldReopenWindow = prevTheme != theme; - + if (app._themeStylesContainer.Count == 0) { app._themeStylesContainer.Add(new Style()); @@ -130,18 +136,27 @@ namespace ControlCatalog if (app.ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktopLifetime) { var oldWindow = desktopLifetime.MainWindow; - var newWindow = new MainWindow(); + var newWindow = new MainWindow() + { + DataContext = new MainWindowViewModel() + }; desktopLifetime.MainWindow = newWindow; newWindow.Show(); oldWindow?.Close(); } else if (app.ApplicationLifetime is IActivityApplicationLifetime singleViewFactoryApplicationLifetime) { - singleViewFactoryApplicationLifetime.MainViewFactory = () => new MainView { DataContext = new MainWindowViewModel() }; + singleViewFactoryApplicationLifetime.MainViewFactory = () => new PageNavigationHost() + { + Page = new MainView { DataContext = new MainWindowViewModel() } + }; } else if (app.ApplicationLifetime is ISingleViewApplicationLifetime singleViewLifetime) { - singleViewLifetime.MainView = new MainView(); + singleViewLifetime.MainView = new PageNavigationHost() + { + Page = new MainView { DataContext = new MainWindowViewModel() } + }; } } } diff --git a/samples/ControlCatalog/Assets/Icon.png b/samples/ControlCatalog/Assets/Icon.png new file mode 100644 index 0000000000..41a2a618fb Binary files /dev/null and b/samples/ControlCatalog/Assets/Icon.png differ diff --git a/samples/ControlCatalog/ControlCatalog.csproj b/samples/ControlCatalog/ControlCatalog.csproj index 2ce24a4d20..800793ca0b 100644 --- a/samples/ControlCatalog/ControlCatalog.csproj +++ b/samples/ControlCatalog/ControlCatalog.csproj @@ -14,6 +14,7 @@ + @@ -38,7 +39,12 @@ - + + + + + MSBuild:Compile + diff --git a/samples/ControlCatalog/Icons.cs b/samples/ControlCatalog/Icons.cs new file mode 100644 index 0000000000..58d0e0b7d4 --- /dev/null +++ b/samples/ControlCatalog/Icons.cs @@ -0,0 +1,194 @@ +namespace ControlCatalog +{ + internal static class Icons + { + // Layers/Composition + public const string Layers = "M12,16L19.36,10.27L21,9L12,2L3,9L4.63,10.27M12,18.54L4.62,12.81L3,14.07L12,21.07L21,14.07L19.37,12.8"; + + // Keyboard + public const string Keyboard = "M19,10H17V8H19M19,13H17V11H19M16,10H14V8H16M16,13H14V11H16M16,17H8V15H16M7,10H5V8H7M7,13H5V11H7M8,11H10V13H8M8,8H10V10H8M11,11H13V13H11M11,8H13V10H11M20,5H4C2.89,5 2,5.89 2,7V17A2,2 0 0,0 4,19H20A2,2 0 0,0 22,17V7C22,5.89 21.1,5 20,5Z"; + + // Blur/Acrylic + public const string Blur = "M14.5,10C16.43,10 18,8.43 18,6.5C18,4.57 16.43,3 14.5,3C12.57,3 11,4.57 11,6.5C11,8.43 12.57,10 14.5,10M14.5,4A2.5,2.5 0 0,1 17,6.5A2.5,2.5 0 0,1 14.5,9A2.5,2.5 0 0,1 12,6.5A2.5,2.5 0 0,1 14.5,4M8.5,14C10.43,14 12,12.43 12,10.5C12,8.57 10.43,7 8.5,7C6.57,7 5,8.57 5,10.5C5,12.43 6.57,14 8.5,14M8.5,8A2.5,2.5 0 0,1 11,10.5A2.5,2.5 0 0,1 8.5,13A2.5,2.5 0 0,1 6,10.5A2.5,2.5 0 0,1 8.5,8M14.5,16A4.5,4.5 0 0,0 10,20.5A4.5,4.5 0 0,0 14.5,25A4.5,4.5 0 0,0 19,20.5A4.5,4.5 0 0,0 14.5,16M14.5,24A3.5,3.5 0 0,1 11,20.5A3.5,3.5 0 0,1 14.5,17A3.5,3.5 0 0,1 18,20.5A3.5,3.5 0 0,1 14.5,24Z"; + + // Adorner/Sparkle + public const string Sparkle = "M12,1L9,9L1,12L9,15L12,23L15,15L23,12L15,9"; + + // Text/AutoComplete + public const string TextInput = "M20,21H4V3H20V21M6,9H14V7H6V9M6,13H18V11H6V13M6,17H14V15H6V17Z"; + + // Border/Square + public const string Border = "M4,4H20V20H4V4M6,8V6H8V8H6M6,12V10H8V12H6M6,16V14H8V16H6M6,20V18H8V20H6M10,20V18H12V20H10M14,20V18H16V20H14M18,20V18H20V20H18M18,16V14H20V16H18M18,12V10H20V12H18M18,8V6H20V8H18M14,8V6H16V8H14M10,8V6H12V8H10Z"; + + // Lightning/Cache + public const string Lightning = "M11,21H7L13,3H17L14,10H20L11,21Z"; + + // Cursor Click/Button + public const string CursorClick = "M10.76,8.69A0.76,0.76 0 0,0 10,9.45V20.9C10,21.32 10.34,21.66 10.76,21.66C10.95,21.66 11.11,21.6 11.24,21.5L13.15,19.95L14.81,23.57C14.94,23.84 15.21,24 15.5,24C15.62,24 15.74,23.97 15.85,23.92L17.28,23.26C17.69,23.07 17.86,22.59 17.66,22.17L16,18.54L18.44,18.19C18.87,18.13 19.1,17.73 18.91,17.37L12.1,8.89C11.95,8.76 11.79,8.69 10.76,8.69M15,10V8H20V10H15M13.83,4.76L16.66,1.93L18.07,3.34L15.24,6.17L13.83,4.76M10,0V5H8V0H10M3.93,14.66L6.76,11.83L8.17,13.24L5.34,16.07L3.93,14.66M3.93,3.34L5.34,1.93L8.17,4.76L6.76,6.17L3.93,3.34M7,10H2V8H7V10Z"; + + // Spinner/ButtonSpinner + public const string Spinner = "M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z"; + + // Calendar + public const string Calendar = "M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1M9,15H7V13H9V15M13,15H11V13H13V15M17,15H15V13H17V15M9,11H7V9H9V11M13,11H11V9H13V11M17,11H15V9H17V11Z"; + + // Canvas/Artboard + public const string Canvas = "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z"; + + // Command/Terminal + public const string Terminal = "M20,19V7H4V19H20M20,3A2,2 0 0,1 22,5V19A2,2 0 0,1 20,21H4A2,2 0 0,1 2,19V5C2,3.89 2.9,3 4,3H20M13,17V15H18V17H13M9.58,13L5.57,9H8.4L11.7,12.3C12.09,12.69 12.09,13.33 11.7,13.72L8.42,17H5.59L9.58,13Z"; + + // Slides/Carousel + public const string Slides = "M2,6H6V18H2V6M7,6H17V18H7V6M18,6H22V18H18V6Z"; + + // Checkbox + public const string Checkbox = "M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8"; + + // Clipboard + public const string Clipboard = "M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3"; + + // Palette/Color + public const string Palette = "M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12Z"; + + // Dropdown/ComboBox + public const string Dropdown = "M7,10L12,15L17,10H7Z"; + + // Container/Box + public const string Container = "M2,2H8V4H16V2H22V8H20V16H22V22H16V20H8V22H2V16H4V8H2V2M16,8V6H8V8H6V16H8V18H16V16H18V8H16M4,4V6H6V4H4M18,4V6H20V4H18M4,18V20H6V18H4M18,18V20H20V18H18Z"; + + // Document/Page + public const string Document = "M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z"; + + // Menu/Context + public const string Menu = "M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z"; + + // Cursor/Pointer + public const string Cursor = "M13.64,21.97C13.14,22.21 12.54,22 12.31,21.5L10.13,16.76L7.62,18.78C7.45,18.92 7.24,19 7,19A1,1 0 0,1 6,18V3A1,1 0 0,1 7,2C7.24,2 7.47,2.09 7.64,2.23L7.65,2.22L19.14,11.86C19.57,12.22 19.39,12.92 18.83,13.03L14.83,13.78L17,18.5C17.24,19 17,19.59 16.5,19.83L13.64,21.97Z"; + + // Brush/Drawing + public const string Brush = "M20.71,4.63L19.37,3.29C19,2.9 18.35,2.9 17.96,3.29L9,12.25L11.75,15L20.71,6.04C21.1,5.65 21.1,5 20.71,4.63M7,14A3,3 0 0,0 4,17C4,18.31 2.84,19 2,19C2.92,20.22 4.5,21 6,21A4,4 0 0,0 10,17A3,3 0 0,0 7,14Z"; + + // Grid/Table + public const string Grid = "M10,4V8H14V4H10M16,4V8H20V4H16M16,10V14H20V10H16M16,16V20H20V16H16M14,20V16H10V20H14M8,20V16H4V20H8M8,14V10H4V14H8M8,8V4H4V8H8M10,14H14V10H10V14Z"; + + // Shield/Validation + public const string Shield = "M10,17L6,13L7.41,11.59L10,14.17L16.59,7.58L18,9M12,1L3,5V11C3,16.55 6.84,21.74 12,23C17.16,21.74 21,16.55 21,11V5L12,1Z"; + + // Clock + public const string Clock = "M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M16.2,16.2L11,13V7H12.5V12.2L17,14.9L16.2,16.2Z"; + + // Dialog/Message + public const string Dialog = "M20,2H4A2,2 0 0,0 2,4V22L6,18H20A2,2 0 0,0 22,16V4A2,2 0 0,0 20,2Z"; + + // DragDrop/Move + public const string DragDrop = "M13,6V11H18V7.75L22.25,12L18,16.25V13H13V18H16.25L12,22.25L7.75,18H11V13H6V16.25L1.75,12L6,7.75V11H11V6H7.75L12,1.75L16.25,6H13Z"; + + // Sidebar/Drawer + public const string Drawer = "M3,2H21A1,1 0 0,1 22,3V21A1,1 0 0,1 21,22H3A1,1 0 0,1 2,21V3A1,1 0 0,1 3,2M10,4V20H20V4H10M4,4V20H8V4H4Z"; + + // Expand + public const string Expand = "M10,21V19H6.41L10.91,14.5L9.5,13.09L5,17.59V14H3V21H10M14.5,10.91L19,6.41V10H21V3H14V5H17.59L13.09,9.5L14.5,10.91Z"; + + // Flyout/Popup + public const string Flyout = "M19,19H5V5H19M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M7,9H10V7H7V9M7,13H17V11H7V13M7,17H14V15H7V17Z"; + + // Target/Focus + public const string Target = "M12,8A4,4 0 0,0 8,12A4,4 0 0,0 12,16A4,4 0 0,0 16,12A4,4 0 0,0 12,8M3.05,13H1V11H3.05C3.5,6.83 6.83,3.5 11,3.05V1H13V3.05C17.17,3.5 20.5,6.83 20.95,11H23V13H20.95C20.5,17.17 17.17,20.5 13,20.95V23H11V20.95C6.83,20.5 3.5,17.17 3.05,13M12,5A7,7 0 0,0 5,12A7,7 0 0,0 12,19A7,7 0 0,0 19,12A7,7 0 0,0 12,5Z"; + + // Gesture/Touch + public const string Gesture = "M5,15A2,2 0 0,0 3,17V19H7V17A2,2 0 0,0 5,15M5,11A6,6 0 0,0 -1,17H1A4,4 0 0,1 5,13V11M5,7C0.03,7 -4,11.03 -4,16V17H-2V16C-2,12.13 1.13,9 5,9V7M20.5,9.5L12,18L8.5,14.5L7.08,15.91L12,20.84L21.92,10.91L20.5,9.5Z"; + + // Image/Photo + public const string Image = "M8.5,13.5L11,16.5L14.5,12L19,18H5M21,19V5C21,3.89 20.1,3 19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19Z"; + + // Tag/Label + public const string Tag = "M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.45 21.77,11.95 21.41,11.58Z"; + + // Transform/Rotate + public const string Transform = "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V5.07C7.06,5.56 4,8.92 4,12.95C4,17.18 7.32,20.56 11.46,20.93C11.64,20.95 11.82,20.97 12,20.97C12.18,20.97 12.36,20.95 12.54,20.93C12.69,20.92 12.83,20.89 13,20.87V18.9C12.82,18.92 12.65,18.95 12.47,18.95C12.32,18.96 12.16,18.97 12,18.97C8.42,18.97 5.53,16.12 5.53,12.58C5.53,9.36 7.88,6.67 11,6.15V10L15.55,5.55Z"; + + // List + public const string List = "M7,5H21V7H7V5M7,13V11H21V13H7M4,4.5A1.5,1.5 0 0,1 5.5,6A1.5,1.5 0 0,1 4,7.5A1.5,1.5 0 0,1 2.5,6A1.5,1.5 0 0,1 4,4.5M4,10.5A1.5,1.5 0 0,1 5.5,12A1.5,1.5 0 0,1 4,13.5A1.5,1.5 0 0,1 2.5,12A1.5,1.5 0 0,1 4,10.5M7,19V17H21V19H7M4,16.5A1.5,1.5 0 0,1 5.5,18A1.5,1.5 0 0,1 4,19.5A1.5,1.5 0 0,1 2.5,18A1.5,1.5 0 0,1 4,16.5Z"; + + // Bell/Notification + public const string Bell = "M21,19V20H3V19L5,17V11C5,7.9 7.03,5.17 10,4.29C10,4.19 10,4.1 10,4A2,2 0 0,1 12,2A2,2 0 0,1 14,4C14,4.1 14,4.19 14,4.29C16.97,5.17 19,7.9 19,11V17L21,19M14,21A2,2 0 0,1 12,23A2,2 0 0,1 10,21"; + + // Number/Hash + public const string Number = "M5.41,21L6.12,17H2.12L2.47,15H6.47L7.53,9H3.53L3.88,7H7.88L8.59,3H10.59L9.88,7H15.88L16.59,3H18.59L17.88,7H21.88L21.53,9H17.53L16.47,15H20.47L20.12,17H16.12L15.41,21H13.41L14.12,17H8.12L7.41,21H5.41M9.47,9L8.41,15H14.41L15.47,9H9.47Z"; + + // Cube/3D + public const string Cube = "M21,16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V7.5C3,7.12 3.21,6.79 3.53,6.62L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.79,6.79 21,7.12 21,7.5V16.5M12,4.15L5,8.09V15.91L12,19.85L19,15.91V8.09L12,4.15Z"; + + // Dots/Pagination + public const string Dots = "M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z"; + + // Info/Information + public const string Info = "M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"; + + // Progress/Loading + public const string Progress = "M13,2.03V2.05L13,4.05C17.39,4.59 20.5,8.58 19.96,12.97C19.5,16.61 16.64,19.5 13,19.93V21.93C18.5,21.38 22.5,16.5 21.95,11C21.5,6.25 17.73,2.5 13,2.03M11,2.06C9.05,2.25 7.19,3 5.67,4.26L7.1,5.74C8.22,4.84 9.57,4.26 11,4.06V2.06M4.26,5.67C3,7.19 2.25,9.04 2.05,11H4.05C4.24,9.58 4.8,8.23 5.69,7.1L4.26,5.67M2.06,13C2.26,14.96 3.03,16.81 4.27,18.33L5.69,16.9C4.81,15.77 4.24,14.42 4.06,13H2.06M7.1,18.37L5.67,19.74C7.18,21 9.04,21.79 11,22V20C9.58,19.82 8.23,19.25 7.1,18.37Z"; + + // Radio + public const string Radio = "M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,7A5,5 0 0,0 7,12A5,5 0 0,0 12,17A5,5 0 0,0 17,12A5,5 0 0,0 12,7Z"; + + // Refresh + public const string Refresh = "M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z"; + + // Layout/Grid + public const string Layout = "M19,11H13V5H19M19,19H13V13H19M11,11H5V5H11M11,19H5V13H11M3,3V21H21V3"; + + // Scroll + public const string Scroll = "M15,20H9V12H4.16L12,4.16L19.84,12H15V20Z"; + + // Slider/Tune + public const string Slider = "M7,5H21V7H7V5M7,13V11H21V13H7M4,4.5A1.5,1.5 0 0,1 5.5,6A1.5,1.5 0 0,1 4,7.5A1.5,1.5 0 0,1 2.5,6A1.5,1.5 0 0,1 4,4.5M4,10.5A1.5,1.5 0 0,1 5.5,12A1.5,1.5 0 0,1 4,13.5A1.5,1.5 0 0,1 2.5,12A1.5,1.5 0 0,1 4,10.5M7,19V17H21V19H7M4,16.5A1.5,1.5 0 0,1 5.5,18A1.5,1.5 0 0,1 4,19.5A1.5,1.5 0 0,1 2.5,18A1.5,1.5 0 0,1 4,16.5Z"; + + // Split/SplitView + public const string Split = "M18,4H6C4.89,4 4,4.89 4,6V18A2,2 0 0,0 6,20H18A2,2 0 0,0 20,18V6C20,4.89 19.1,4 18,4M18,6V18H13V6H18Z"; + + // Tab + public const string Tab = "M21,3H3C1.89,3 1,3.89 1,5V19A2,2 0 0,0 3,21H21C22.1,21 23,20.1 23,19V5C23,3.89 22.1,3 21,3M21,19H3V5H13V9H21V19Z"; + + // Theme/Palette + public const string Theme = "M12,18V6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; + + // Toggle/Switch + public const string Toggle = "M17,7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7M17,15A3,3 0 0,1 14,12A3,3 0 0,1 17,9A3,3 0 0,1 20,12A3,3 0 0,1 17,15Z"; + + // Tooltip/Info bubble + public const string Tooltip = "M4,2H20A2,2 0 0,1 22,4V16A2,2 0 0,1 20,18H13.9L10.2,21.71C10,21.9 9.75,22 9.5,22V22H9A1,1 0 0,1 8,21V18H4A2,2 0 0,1 2,16V4A2,2 0 0,1 4,2M11,15H13V13H11V15M11,11H13V5H11V11Z"; + + // Animation/Transition + public const string Transition = "M2,5.27L3.28,4L20,20.72L18.73,22L12.73,16H7V19L3,15L7,11V14H9.73L5,9.27V14H3V5.27M21,9L17,5V8H14V10H17V13L21,9M17,17V14H15V17H17Z"; + + // Tree/Hierarchy + public const string Tree = "M15,20A1,1 0 0,0 16,19V4H8V19A1,1 0 0,0 9,20H2V22H22V20H15Z"; + + // Viewbox/Resize + public const string Viewbox = "M5,15H3V19A2,2 0 0,0 5,21H9V19H5M5,5H9V3H5A2,2 0 0,0 3,5V9H5M19,3H15V5H19V9H21V5A2,2 0 0,0 19,3M19,19H15V21H19A2,2 0 0,0 21,19V15H19"; + + // Puzzle/Embed + public const string Puzzle = "M20.5,11H19V7C19,5.89 18.1,5 17,5H13V3.5A2.5,2.5 0 0,0 10.5,1A2.5,2.5 0 0,0 8,3.5V5H4A2,2 0 0,0 2,7V10.8H3.5C5.04,10.8 6.2,11.96 6.2,13.5C6.2,15.04 5.04,16.2 3.5,16.2H2V20A2,2 0 0,0 4,22H7.8V20.5C7.8,18.96 8.96,17.8 10.5,17.8C12.04,17.8 13.2,18.96 13.2,20.5V22H17A2,2 0 0,0 19,20V16H20.5A2.5,2.5 0 0,0 23,13.5A2.5,2.5 0 0,0 20.5,11Z"; + + // Window/Application + public const string Window = "M4,4H20V20H4V4M6,8V18H18V8H6Z"; + + // Header/Title + public const string Header = "M3,4H5V10H9V4H11V18H9V12H5V18H3V4M13,8H15.31L15.63,5H17.63L17.31,8H19.31L19.63,5H21.63L21.31,8H23V10H21.1L20.9,12H23V14H20.69L20.37,17H18.37L18.69,14H16.69L16.37,17H14.37L14.69,14H13V12H14.9L15.1,10H13V8M17.1,10L16.9,12H18.9L19.1,10H17.1Z"; + + // Monitor/Screen + public const string Monitor = "M21,16H3V4H21M21,2H3C1.89,2 1,2.89 1,4V16A2,2 0 0,0 3,18H10V20H8V22H16V20H14V18H21A2,2 0 0,0 23,16V4C23,2.89 22.1,2 21,2Z"; + + // Navigation/Compass + public const string Navigation = "M12,2L4.5,20.29L5.21,21L12,18L18.79,21L19.5,20.29L12,2Z"; + + // OpenGL/3D Box (same as Cube but outline variant) + public const string Cube3D = "M21,16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V7.5C3,7.12 3.21,6.79 3.53,6.62L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.79,6.79 21,7.12 21,7.5V16.5M12,4.15L6.04,7.5L12,10.85L17.96,7.5L12,4.15M5,15.91L11,19.29V12.58L5,9.21V15.91M19,15.91V9.21L13,12.58V19.29L19,15.91Z"; + + // Horizontal dots/Pager + public const string HorizontalDots = "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"; + + // Slider tune/adjust + public const string Tune = "M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z"; + } +} diff --git a/samples/ControlCatalog/MainView.xaml b/samples/ControlCatalog/MainView.xaml index adea1b90fc..ea71773d13 100644 --- a/samples/ControlCatalog/MainView.xaml +++ b/samples/ControlCatalog/MainView.xaml @@ -1,312 +1,157 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + 20 + 10 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + None + BorderOnly + Full + + + + + Default + Light + Dark + + + + + Fluent + Simple + + + + + None + Transparent + Blur + AcrylicBlur + Mica + + + + + LeftToRight + RightToLeft + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - None - BorderOnly - Full - - - - - Default - Light - Dark - - - - - Fluent - Simple - - - - - None - Transparent - Blur - AcrylicBlur - Mica - - - - - LeftToRight - RightToLeft - - - - - - - - - + + diff --git a/samples/ControlCatalog/MainView.xaml.cs b/samples/ControlCatalog/MainView.xaml.cs index 82172a8ec4..5ad85da149 100644 --- a/samples/ControlCatalog/MainView.xaml.cs +++ b/samples/ControlCatalog/MainView.xaml.cs @@ -10,13 +10,80 @@ using ControlCatalog.ViewModels; namespace ControlCatalog { - public partial class MainView : UserControl + public partial class MainView : DrawerPage { private Action? _disposeTransparencySetters; public MainView() { InitializeComponent(); + + Loaded += MainView_Loaded; + Unloaded += MainView_Unloaded; + } + + private const double WideBreakpoint = 1008; + private const double NarrowBreakpoint = 640; + + private void MainView_Loaded(object? sender, Avalonia.Interactivity.RoutedEventArgs e) + { + if (DataContext == null) + return; + + SizeChanged += OnDrawerSizeChanged; + UpdateAdaptiveLayout(); + } + + private void MainView_Unloaded(object? sender, Avalonia.Interactivity.RoutedEventArgs e) + { + SizeChanged -= OnDrawerSizeChanged; + _lastAppliedMode = null; + } + + private SplitViewDisplayMode? _lastAppliedMode; + private bool _updatingLayout; + + private void OnDrawerSizeChanged(object? sender, SizeChangedEventArgs e) + { + if (e.WidthChanged) + UpdateAdaptiveLayout(); + } + + private void UpdateAdaptiveLayout() + { + if (_updatingLayout || DataContext == null) + return; + + var width = Bounds.Width; + if (width <= 0) + return; + + SplitViewDisplayMode targetMode; + if (width >= WideBreakpoint) + targetMode = SplitViewDisplayMode.Inline; + else if (width >= NarrowBreakpoint) + targetMode = SplitViewDisplayMode.CompactInline; + else + targetMode = SplitViewDisplayMode.Overlay; + + if (_lastAppliedMode == targetMode) + return; + + _updatingLayout = true; + try + { + _lastAppliedMode = targetMode; + ViewModel.DisplayMode = targetMode; + + if (targetMode == SplitViewDisplayMode.Inline) + ViewModel.IsDrawerOpened = true; + else if (targetMode == SplitViewDisplayMode.Overlay) + ViewModel.IsDrawerOpened = false; + } + finally + { + _updatingLayout = false; + } } private void Themes_SelectionChanged(object? sender, SelectionChangedEventArgs e) @@ -66,22 +133,38 @@ namespace ControlCatalog var semiTransparentBrush = new ImmutableSolidColorBrush(Colors.Gray, 0.2); _disposeTransparencySetters = (Action)topLevel.SetValue(BackgroundProperty, transparentBrush, Avalonia.Data.BindingPriority.Style)!.Dispose + - Sidebar.SetValue(BackgroundProperty, semiTransparentBrush, Avalonia.Data.BindingPriority.Style)!.Dispose + - Sidebar.SetValue(SplitView.PaneBackgroundProperty, semiTransparentBrush, Avalonia.Data.BindingPriority.Style)!.Dispose; + SetValue(BackgroundProperty, semiTransparentBrush, Avalonia.Data.BindingPriority.Style)!.Dispose + + SetValue(DrawerPage.DrawerBackgroundProperty, semiTransparentBrush, Avalonia.Data.BindingPriority.Style)!.Dispose; } } } + protected override void OnDataContextChanged(EventArgs e) + { + base.OnDataContextChanged(e); + + if (ViewModel != null) + { + ViewModel.Navigator = NavPage; + } + } + internal MainWindowViewModel ViewModel => (MainWindowViewModel)DataContext!; protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e) { base.OnAttachedToVisualTree(e); - if (TopLevel.GetTopLevel(this) is Window window) - Decorations.SelectedIndex = (int)window.WindowDecorations; + if (DataContext == null) + return; - var insets = TopLevel.GetTopLevel(this)!.InsetsManager; + UpdateAdaptiveLayout(); + + var topLevel = TopLevel.GetTopLevel(this)!; + if (topLevel is Window window) + ViewModel.SelectedDecorationIndex = (int)window.WindowDecorations; + + var insets = topLevel.InsetsManager; if (insets != null) { // In real life application these events should be unsubscribed to avoid memory leaks. @@ -111,6 +194,8 @@ namespace ControlCatalog ViewModel.IsSystemBarVisible = insets.IsSystemBarVisible ?? true; }; } + + ViewModel.SelectedPageIndex = 0; } } } diff --git a/samples/ControlCatalog/NavHeaderItem.xaml b/samples/ControlCatalog/NavHeaderItem.xaml new file mode 100644 index 0000000000..6867661ebb --- /dev/null +++ b/samples/ControlCatalog/NavHeaderItem.xaml @@ -0,0 +1,101 @@ + + + + + + #99FFFFFF + #FF1F1F1F + #FF000000 + #FF171717 + + + #99000000 + #FFE6E6E6 + #FFFFFFFF + #FFF2F2F2 + + + 36 + 1 1 1 1 #2000, 0 0 1 1 #2fff + + + + Disabled + + Test + + Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/ControlCatalog/Pages/AcceleratorPage.xaml b/samples/ControlCatalog/Pages/AcceleratorPage.xaml index 18072ef1c3..62fcf0d746 100644 --- a/samples/ControlCatalog/Pages/AcceleratorPage.xaml +++ b/samples/ControlCatalog/Pages/AcceleratorPage.xaml @@ -1,115 +1,116 @@ - - + - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - + + - + - - Accelerator Support + + Accelerator Support - - - - This is tab 1 content - - This is tab 1 content - - This is tab 1 content - + + + + This is tab 1 content + + This is tab 1 content + + This is tab 1 content + - - - This is tab 2 content - - + + + This is tab 2 content + + - - - This is tab 4 content - - - This is fab 5 content - - - + + + This is tab 4 content + + + This is fab 5 content + + + - - - + + + - - + + - - + + - - + + - - + + - - + + - + - - - - + + + + + - - + diff --git a/samples/ControlCatalog/Pages/AcceleratorPage.xaml.cs b/samples/ControlCatalog/Pages/AcceleratorPage.xaml.cs index e013d9aaac..40afacc053 100644 --- a/samples/ControlCatalog/Pages/AcceleratorPage.xaml.cs +++ b/samples/ControlCatalog/Pages/AcceleratorPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class AcceleratorPage : UserControl + public partial class AcceleratorPage : ContentPage { public AcceleratorPage() { diff --git a/samples/ControlCatalog/Pages/AcrylicPage.xaml b/samples/ControlCatalog/Pages/AcrylicPage.xaml index 4fd0933879..4a68fbfafd 100644 --- a/samples/ControlCatalog/Pages/AcrylicPage.xaml +++ b/samples/ControlCatalog/Pages/AcrylicPage.xaml @@ -1,12 +1,13 @@ - - + - - + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + - - - - - + + + + + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + + + + + + - - - - - - - - - - + + + + + - + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + diff --git a/samples/ControlCatalog/Pages/AcrylicPage.xaml.cs b/samples/ControlCatalog/Pages/AcrylicPage.xaml.cs index 9516655bb9..adb5b05706 100644 --- a/samples/ControlCatalog/Pages/AcrylicPage.xaml.cs +++ b/samples/ControlCatalog/Pages/AcrylicPage.xaml.cs @@ -2,7 +2,7 @@ namespace ControlCatalog.Pages { - public partial class AcrylicPage : UserControl + public partial class AcrylicPage : ContentPage { public AcrylicPage() { diff --git a/samples/ControlCatalog/Pages/AdornerLayerPage.xaml b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml index e9a245a8e1..35907c7ef8 100644 --- a/samples/ControlCatalog/Pages/AdornerLayerPage.xaml +++ b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml @@ -1,52 +1,52 @@ - + + + Rotation + + - - - Rotation - - + + - + + + + + + + + + + + + + + - - - - + + + + diff --git a/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs index 526b8a492b..5ee8d44479 100644 --- a/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class AdornerLayerPage : UserControl + public partial class AdornerLayerPage : ContentPage { private Control? _adorner; diff --git a/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml b/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml index 35e917f996..4edb00b7c3 100644 --- a/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml +++ b/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml @@ -1,79 +1,83 @@ - - - A control into which the user can input text + + + A control into which the user can input text - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml.cs b/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml.cs index 47b6eb7f4a..295aa9d139 100644 --- a/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml.cs +++ b/samples/ControlCatalog/Pages/AutoCompleteBoxPage.xaml.cs @@ -11,7 +11,7 @@ using ControlCatalog.Models; namespace ControlCatalog.Pages { - public partial class AutoCompleteBoxPage : UserControl + public partial class AutoCompleteBoxPage : ContentPage { private static StateData[] BuildAllStates() { diff --git a/samples/ControlCatalog/Pages/BitmapCachePage.axaml b/samples/ControlCatalog/Pages/BitmapCachePage.axaml index 5902be8e51..4298f29e8f 100644 --- a/samples/ControlCatalog/Pages/BitmapCachePage.axaml +++ b/samples/ControlCatalog/Pages/BitmapCachePage.axaml @@ -1,45 +1,49 @@ - + - - - - - - - Render at scale - - Scale - - Enable clear type + + + + + + + Render at scale + + Scale + + Enable clear type - Snap to device pixels - Subpixel offset X - - - - - - - - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. - - - + Snap to device pixels + Subpixel offset X + + + + + + + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. + - + + + - + + diff --git a/samples/ControlCatalog/Pages/BitmapCachePage.axaml.cs b/samples/ControlCatalog/Pages/BitmapCachePage.axaml.cs index 92b3cbec68..be7cf7a7ea 100644 --- a/samples/ControlCatalog/Pages/BitmapCachePage.axaml.cs +++ b/samples/ControlCatalog/Pages/BitmapCachePage.axaml.cs @@ -4,10 +4,10 @@ using Avalonia.Markup.Xaml; namespace ControlCatalog.Pages; -public partial class BitmapCachePage : UserControl +public partial class BitmapCachePage : ContentPage { public BitmapCachePage() { InitializeComponent(); } -} \ No newline at end of file +} diff --git a/samples/ControlCatalog/Pages/BorderPage.xaml b/samples/ControlCatalog/Pages/BorderPage.xaml index c811ddaa22..297e3fcfb8 100644 --- a/samples/ControlCatalog/Pages/BorderPage.xaml +++ b/samples/ControlCatalog/Pages/BorderPage.xaml @@ -1,61 +1,65 @@ - - - - - - A control which decorates a child with a border and background + + + + + + A control which decorates a child with a border and background - - - Border - - - Background And CenterBorder - - - Background And InnerBorderEdge - - - Background And OuterBorderEdge - - - Rounded Corners - - - Rounded Corners - - - - - + + + Border + + + Background And CenterBorder + + + Background And InnerBorderEdge + + + Background And OuterBorderEdge + + + Rounded Corners + + + Rounded Corners + + + + + + - - + + diff --git a/samples/ControlCatalog/Pages/BorderPage.xaml.cs b/samples/ControlCatalog/Pages/BorderPage.xaml.cs index 944df86f8c..71aebf24ff 100644 --- a/samples/ControlCatalog/Pages/BorderPage.xaml.cs +++ b/samples/ControlCatalog/Pages/BorderPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class BorderPage : UserControl + public partial class BorderPage : ContentPage { public BorderPage() { diff --git a/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml b/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml index 900e304559..c21a772c2a 100644 --- a/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml +++ b/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml @@ -1,6 +1,7 @@ - @@ -30,4 +31,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml.cs b/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml.cs index fad4b466fe..28f4b20084 100644 --- a/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ButtonSpinnerPage.xaml.cs @@ -3,7 +3,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class ButtonSpinnerPage : UserControl + public partial class ButtonSpinnerPage : ContentPage { public ButtonSpinnerPage() { diff --git a/samples/ControlCatalog/Pages/ButtonsPage.xaml b/samples/ControlCatalog/Pages/ButtonsPage.xaml index f13581aa18..695ae28515 100644 --- a/samples/ControlCatalog/Pages/ButtonsPage.xaml +++ b/samples/ControlCatalog/Pages/ButtonsPage.xaml @@ -1,8 +1,9 @@ - - + @@ -16,9 +17,9 @@ - + - + - + @@ -288,4 +289,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ButtonsPage.xaml.cs b/samples/ControlCatalog/Pages/ButtonsPage.xaml.cs index 6dcee1ab7d..611fc76241 100644 --- a/samples/ControlCatalog/Pages/ButtonsPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ButtonsPage.xaml.cs @@ -3,7 +3,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class ButtonsPage : UserControl + public partial class ButtonsPage : ContentPage { private int repeatButtonClickCount = 0; diff --git a/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml b/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml index 8734758d26..769dbc0dac 100644 --- a/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml +++ b/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml @@ -1,7 +1,8 @@ - A control for selecting dates with a calendar drop-down @@ -52,4 +53,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml.cs b/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml.cs index 73e1fe4bba..0e4fcbd986 100644 --- a/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CalendarDatePickerPage.xaml.cs @@ -3,7 +3,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class CalendarDatePickerPage : UserControl + public partial class CalendarDatePickerPage : ContentPage { public CalendarDatePickerPage() { diff --git a/samples/ControlCatalog/Pages/CalendarPage.xaml b/samples/ControlCatalog/Pages/CalendarPage.xaml index e142c4da72..99727e9124 100644 --- a/samples/ControlCatalog/Pages/CalendarPage.xaml +++ b/samples/ControlCatalog/Pages/CalendarPage.xaml @@ -1,5 +1,6 @@ - A calendar control for selecting dates @@ -49,4 +50,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CalendarPage.xaml.cs b/samples/ControlCatalog/Pages/CalendarPage.xaml.cs index 56f511be55..d9118326f9 100644 --- a/samples/ControlCatalog/Pages/CalendarPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CalendarPage.xaml.cs @@ -3,7 +3,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class CalendarPage : UserControl + public partial class CalendarPage : ContentPage { public CalendarPage() { diff --git a/samples/ControlCatalog/Pages/CanvasPage.xaml b/samples/ControlCatalog/Pages/CanvasPage.xaml index 416164f391..a9e342181d 100644 --- a/samples/ControlCatalog/Pages/CanvasPage.xaml +++ b/samples/ControlCatalog/Pages/CanvasPage.xaml @@ -1,5 +1,6 @@ - A panel which lays out its children by explicit coordinates @@ -34,4 +35,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CanvasPage.xaml.cs b/samples/ControlCatalog/Pages/CanvasPage.xaml.cs index e52df597a9..b94aabca94 100644 --- a/samples/ControlCatalog/Pages/CanvasPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CanvasPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class CanvasPage : UserControl + public partial class CanvasPage : ContentPage { public CanvasPage() { diff --git a/samples/ControlCatalog/Pages/CarouselDemoPage.xaml b/samples/ControlCatalog/Pages/CarouselDemoPage.xaml index df4317fcad..792441ddb4 100644 --- a/samples/ControlCatalog/Pages/CarouselDemoPage.xaml +++ b/samples/ControlCatalog/Pages/CarouselDemoPage.xaml @@ -1,11 +1,14 @@ - - - - - - - + + + + + + + + diff --git a/samples/ControlCatalog/Pages/CarouselDemoPage.xaml.cs b/samples/ControlCatalog/Pages/CarouselDemoPage.xaml.cs index 36c9961658..0d59d296f6 100644 --- a/samples/ControlCatalog/Pages/CarouselDemoPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CarouselDemoPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class CarouselDemoPage : UserControl + public partial class CarouselDemoPage : ContentPage { private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = { diff --git a/samples/ControlCatalog/Pages/CarouselPage.xaml b/samples/ControlCatalog/Pages/CarouselPage.xaml index c6e20fec5b..bdb40b9038 100644 --- a/samples/ControlCatalog/Pages/CarouselPage.xaml +++ b/samples/ControlCatalog/Pages/CarouselPage.xaml @@ -1,5 +1,6 @@ - A swipeable items control that can reveal adjacent pages with ViewportFraction. @@ -115,4 +116,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CarouselPage.xaml.cs b/samples/ControlCatalog/Pages/CarouselPage.xaml.cs index 0a0c973b90..c4a6ffa12f 100644 --- a/samples/ControlCatalog/Pages/CarouselPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CarouselPage.xaml.cs @@ -7,7 +7,7 @@ using ControlCatalog.Pages.Transitions; namespace ControlCatalog.Pages { - public partial class CarouselPage : UserControl + public partial class CarouselPage : ContentPage { public CarouselPage() { diff --git a/samples/ControlCatalog/Pages/CarouselPage/CareCompanionAppPage.xaml.cs b/samples/ControlCatalog/Pages/CarouselPage/CareCompanionAppPage.xaml.cs index f7c87f56a3..bc8be3ea87 100644 --- a/samples/ControlCatalog/Pages/CarouselPage/CareCompanionAppPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CarouselPage/CareCompanionAppPage.xaml.cs @@ -703,7 +703,7 @@ public partial class CareCompanionAppPage : UserControl var home = BuildHomeTab(); home.Header = "Home"; - home.Icon = Geometry.Parse("M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"); + home.Icon = new PathIcon { Data = Geometry.Parse("M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z") }; tp.Pages = new ObservableCollection { @@ -729,7 +729,7 @@ public partial class CareCompanionAppPage : UserControl => new ContentPage { Header = header, - Icon = Geometry.Parse(iconData), + Icon = new PathIcon { Data = Geometry.Parse(iconData) }, Background = new SolidColorBrush(BgLight), Content = new StackPanel { diff --git a/samples/ControlCatalog/Pages/CarouselPage/SanctuaryMainPage.xaml b/samples/ControlCatalog/Pages/CarouselPage/SanctuaryMainPage.xaml index b701ab89ba..d8d5f322c3 100644 --- a/samples/ControlCatalog/Pages/CarouselPage/SanctuaryMainPage.xaml +++ b/samples/ControlCatalog/Pages/CarouselPage/SanctuaryMainPage.xaml @@ -93,7 +93,7 @@ - M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z + @@ -243,7 +243,7 @@ - M12 10.9c-.61 0-1.1.49-1.1 1.1s.49 1.1 1.1 1.1c.61 0 1.1-.49 1.1-1.1s-.49-1.1-1.1-1.1zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm2.19 12.19L6 18l3.81-8.19L18 6l-3.81 8.19z + @@ -260,7 +260,7 @@ - M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z + @@ -277,7 +277,7 @@ - M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z + diff --git a/samples/ControlCatalog/Pages/CheckBoxPage.xaml b/samples/ControlCatalog/Pages/CheckBoxPage.xaml index 2f60fc5dae..4f9c59448b 100644 --- a/samples/ControlCatalog/Pages/CheckBoxPage.xaml +++ b/samples/ControlCatalog/Pages/CheckBoxPage.xaml @@ -1,5 +1,6 @@ - A check box control @@ -25,4 +26,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CheckBoxPage.xaml.cs b/samples/ControlCatalog/Pages/CheckBoxPage.xaml.cs index 95ff21ef6d..b63d7084d6 100644 --- a/samples/ControlCatalog/Pages/CheckBoxPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CheckBoxPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class CheckBoxPage : UserControl + public partial class CheckBoxPage : ContentPage { public CheckBoxPage() { diff --git a/samples/ControlCatalog/Pages/ClipboardPage.xaml b/samples/ControlCatalog/Pages/ClipboardPage.xaml index 864a520aca..86e99b9305 100644 --- a/samples/ControlCatalog/Pages/ClipboardPage.xaml +++ b/samples/ControlCatalog/Pages/ClipboardPage.xaml @@ -1,5 +1,6 @@ - Example of ClipboardPage capabilities @@ -27,4 +28,4 @@ /> - + diff --git a/samples/ControlCatalog/Pages/ClipboardPage.xaml.cs b/samples/ControlCatalog/Pages/ClipboardPage.xaml.cs index 4cdde6b824..0bc5447313 100644 --- a/samples/ControlCatalog/Pages/ClipboardPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ClipboardPage.xaml.cs @@ -15,14 +15,12 @@ using Avalonia.Threading; namespace ControlCatalog.Pages { - public partial class ClipboardPage : UserControl + public partial class ClipboardPage : ContentPage { private readonly DataFormat _customBinaryDataFormat = DataFormat.CreateBytesApplicationFormat("controlcatalog-binary-data"); private INotificationManager? _notificationManager; - private INotificationManager NotificationManager => _notificationManager - ??= new WindowNotificationManager(TopLevel.GetTopLevel(this)!); private readonly DispatcherTimer _clipboardLastDataObjectChecker; private DataTransfer? _storedDataTransfer; @@ -107,7 +105,7 @@ namespace ControlCatalog.Pages if (invalidFile.Count > 0) { - NotificationManager.Show(new Notification("Warning", "There is one o more invalid path.", NotificationType.Warning)); + _notificationManager?.Show(new Notification("Warning", "There is one o more invalid path.", NotificationType.Warning)); } if (files.Count > 0) @@ -116,11 +114,11 @@ namespace ControlCatalog.Pages foreach (var file in files) dataTransfer.Add(DataTransferItem.Create(DataFormat.File, file)); await clipboard.SetDataAsync(dataTransfer); - NotificationManager.Show(new Notification("Success", "Copy completed.", NotificationType.Success)); + _notificationManager?.Show(new Notification("Success", "Copy completed.", NotificationType.Success)); } else { - NotificationManager.Show(new Notification("Warning", "Any files to copy in Clipboard.", NotificationType.Warning)); + _notificationManager?.Show(new Notification("Warning", "Any files to copy in Clipboard.", NotificationType.Warning)); } } } @@ -179,6 +177,7 @@ namespace ControlCatalog.Pages { _clipboardLastDataObjectChecker.Start(); base.OnAttachedToVisualTree(e); + _notificationManager = new WindowNotificationManager(TopLevel.GetTopLevel(this)!); } protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e) diff --git a/samples/ControlCatalog/Pages/ColorPickerPage.xaml b/samples/ControlCatalog/Pages/ColorPickerPage.xaml index fb397085e7..f0b303e0d4 100644 --- a/samples/ControlCatalog/Pages/ColorPickerPage.xaml +++ b/samples/ControlCatalog/Pages/ColorPickerPage.xaml @@ -1,4 +1,4 @@ - - + - + - + diff --git a/samples/ControlCatalog/Pages/ColorPickerPage.xaml.cs b/samples/ControlCatalog/Pages/ColorPickerPage.xaml.cs index 4d2d236ed3..cc225b576d 100644 --- a/samples/ControlCatalog/Pages/ColorPickerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ColorPickerPage.xaml.cs @@ -5,7 +5,7 @@ using Avalonia.Media; namespace ControlCatalog.Pages { - public partial class ColorPickerPage : UserControl + public partial class ColorPickerPage : ContentPage { public ColorPickerPage() { diff --git a/samples/ControlCatalog/Pages/ComboBoxPage.xaml b/samples/ControlCatalog/Pages/ComboBoxPage.xaml index 449c10f000..149fd73d0a 100644 --- a/samples/ControlCatalog/Pages/ComboBoxPage.xaml +++ b/samples/ControlCatalog/Pages/ComboBoxPage.xaml @@ -1,4 +1,4 @@ - - + diff --git a/samples/ControlCatalog/Pages/ComboBoxPage.xaml.cs b/samples/ControlCatalog/Pages/ComboBoxPage.xaml.cs index 301b052cb8..720aae9ef5 100644 --- a/samples/ControlCatalog/Pages/ComboBoxPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ComboBoxPage.xaml.cs @@ -4,7 +4,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class ComboBoxPage : UserControl + public partial class ComboBoxPage : ContentPage { public ComboBoxPage() { diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarCustomizationPage.xaml b/samples/ControlCatalog/Pages/CommandBar/CommandBarCustomizationPage.xaml index 1ea3349129..3ce911d9f8 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarCustomizationPage.xaml +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarCustomizationPage.xaml @@ -15,9 +15,9 @@ - - - + + + @@ -74,7 +74,7 @@ - @@ -89,20 +89,20 @@ - - + + - - + + - - + + @@ -111,8 +111,8 @@ BorderBrush="#CCCCCC" BorderThickness="1" OverflowButtonVisibility="Collapsed"> - - + + diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml b/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml index 2f771ab42e..f3098dee0f 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml @@ -8,6 +8,7 @@ M15.6,10.79C17.04,10.07 18,8.64 18,7C18,4.79 16.21,3 14,3H7V21H14.73C16.78,21 18.5,19.37 18.5,17.32C18.5,15.82 17.72,14.53 16.5,13.77C16.2,13.59 15.9,13.44 15.6,13.32V10.79M10,6.5H13C13.83,6.5 14.5,7.17 14.5,8C14.5,8.83 13.83,9.5 13,9.5H10V6.5M13.5,17.5H10V14H13.5C14.33,14 15,14.67 15,15.5C15,16.33 14.33,17.5 13.5,17.5Z M10,4V7H12.21L8.79,15H6V18H14V15H11.79L15.21,7H18V4H10Z M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z + M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20M16,11V18.1L13.9,16L11.1,18.8L8.3,16L11.1,13.2L9,11.1L16,11Z @@ -33,6 +34,18 @@ IsChecked="True" IsCheckedChanged="OnDynamicOverflowChanged" /> + + + + + + @@ -47,11 +60,11 @@ - - + + - - - - - - + + + + + + + + + + + diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml.cs b/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml.cs index 45a1c95527..19a451b55c 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarDynamicOverflowPage.xaml.cs @@ -9,7 +9,13 @@ namespace ControlCatalog.Pages public CommandBarDynamicOverflowPage() { InitializeComponent(); + if (SecondaryVisibleCheck.IsChecked != true) + { + DemoBar.SecondaryCommands?.Remove(DemoSecondaryCommand); + } + ((INotifyCollectionChanged)DemoBar.OverflowItems).CollectionChanged += OnOverflowChanged; + ((INotifyCollectionChanged)DemoBar.VisiblePrimaryCommands).CollectionChanged += OnOverflowChanged; UpdateStatus(); } @@ -29,6 +35,26 @@ namespace ControlCatalog.Pages DemoBar.IsDynamicOverflowEnabled = DynamicOverflowCheck.IsChecked == true; } + private void OnSecondaryVisibilityChanged(object? sender, RoutedEventArgs e) + { + if (DemoBar?.SecondaryCommands == null || DemoSecondaryCommand == null) + return; + + bool shouldInclude = SecondaryVisibleCheck.IsChecked == true; + bool isIncluded = DemoBar.SecondaryCommands.Contains(DemoSecondaryCommand); + + if (shouldInclude && !isIncluded) + { + DemoBar.SecondaryCommands.Add(DemoSecondaryCommand); + } + else if (!shouldInclude && isIncluded) + { + DemoBar.SecondaryCommands.Remove(DemoSecondaryCommand); + } + + UpdateStatus(); + } + private void OnOverflowChanged(object? sender, NotifyCollectionChangedEventArgs e) { UpdateStatus(); @@ -36,10 +62,40 @@ namespace ControlCatalog.Pages private void UpdateStatus() { - var total = DemoBar.PrimaryCommands.Count; - var overflow = DemoBar.OverflowItems.Count; - var visible = total - overflow; - StatusText.Text = $"Showing {visible} of {total} commands, {overflow} in overflow"; + int visiblePrimaryCommandCount = 0; + int visiblePrimarySeparatorCount = 0; + foreach (var item in DemoBar.VisiblePrimaryCommands) + { + if (item is CommandBarSeparator) + visiblePrimarySeparatorCount++; + else + visiblePrimaryCommandCount++; + } + + int overflowCommandCount = 0; + int overflowSeparatorCount = 0; + bool hasSyntheticOverflowDivider = false; + foreach (var item in DemoBar.OverflowItems) + { + if (item is CommandBarSeparator separator) + { + overflowSeparatorCount++; + if (!DemoBar.PrimaryCommands.Contains(separator) && + !DemoBar.SecondaryCommands.Contains(separator)) + { + hasSyntheticOverflowDivider = true; + } + } + else + { + overflowCommandCount++; + } + } + + StatusText.Text = + $"Visible primary: {visiblePrimaryCommandCount} commands, {visiblePrimarySeparatorCount} separators\n" + + $"Overflow items: {overflowCommandCount} commands, {overflowSeparatorCount} separators\n" + + $"Synthetic overflow divider: {(hasSyntheticOverflowDivider ? "present" : "absent")}"; } } } diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml b/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml index 8dbc44e19b..b4728aa918 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml @@ -64,13 +64,13 @@ - - - + + + - - + + diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml.cs b/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml.cs index c2f0b439f0..f82fcbddb9 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarEventsPage.xaml.cs @@ -141,13 +141,13 @@ namespace ControlCatalog.Pages private void OnCommandItemClick(object? sender, RoutedEventArgs e) { - if (sender is AppBarButton button) + if (sender is CommandBarButton button) AppendLog($"Click, {button.Label}, {DescribePlacement(button)}"); } - private AppBarButton CreateButton(string label) + private CommandBarButton CreateButton(string label) { - var button = new AppBarButton + var button = new CommandBarButton { Label = label, Icon = new PathIcon @@ -170,14 +170,14 @@ namespace ControlCatalog.Pages { foreach (var item in items) { - if (item is AppBarButton button) + if (item is CommandBarButton button) button.Click -= OnCommandItemClick; } } private void AttachItemHandler(ICommandBarElement item) { - if (item is not AppBarButton button) + if (item is not CommandBarButton button) return; button.Click -= OnCommandItemClick; @@ -191,10 +191,10 @@ namespace ControlCatalog.Pages return; var item = items[^1]; - var label = item is AppBarButton button ? button.Label ?? "(unnamed)" : item.GetType().Name; + var label = item is CommandBarButton button ? button.Label ?? "(unnamed)" : item.GetType().Name; - if (item is AppBarButton appBarButton) - appBarButton.Click -= OnCommandItemClick; + if (item is CommandBarButton commandBarButton) + commandBarButton.Click -= OnCommandItemClick; items.RemoveAt(items.Count - 1); @@ -202,7 +202,7 @@ namespace ControlCatalog.Pages RefreshState(); } - private static string DescribePlacement(AppBarButton button) + private static string DescribePlacement(CommandBarButton button) { return button.IsInOverflow ? "overflow" : "primary"; } diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml b/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml index b83d1c3e57..60c23d9c64 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml @@ -36,7 +36,7 @@ - @@ -52,35 +52,35 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml.cs b/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml.cs index c624ffcad6..9e15c0fb6c 100644 --- a/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarFirstLookPage.xaml.cs @@ -12,13 +12,13 @@ namespace ControlCatalog.Pages private void OnButtonClick(object? sender, RoutedEventArgs e) { - if (sender is AppBarButton btn) + if (sender is CommandBarButton btn) StatusText.Text = $"{btn.Label} clicked"; } private void OnToggleChanged(object? sender, RoutedEventArgs e) { - if (sender is AppBarToggleButton btn) + if (sender is CommandBarToggleButton btn) StatusText.Text = btn.IsChecked == true ? $"{btn.Label} enabled" : $"{btn.Label} disabled"; diff --git a/samples/ControlCatalog/Pages/CommandBar/CommandBarKeyboardPage.xaml b/samples/ControlCatalog/Pages/CommandBar/CommandBarKeyboardPage.xaml new file mode 100644 index 0000000000..7b820b0183 --- /dev/null +++ b/samples/ControlCatalog/Pages/CommandBar/CommandBarKeyboardPage.xaml @@ -0,0 +1,121 @@ + + + M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z + M15,9H5V5H15M12,19A3,3 0 0,1 9,16A3,3 0 0,1 12,13A3,3 0 0,1 15,16A3,3 0 0,1 12,19M17,3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V7L17,3Z + M15.6,10.79C17.04,10.07 18,8.64 18,7C18,4.79 16.21,3 14,3H7V21H14.73C16.78,21 18.5,19.37 18.5,17.32C18.5,15.82 17.72,14.53 16.5,13.77C16.2,13.59 15.9,13.44 15.6,13.32V10.79M10,6.5H13C13.83,6.5 14.5,7.17 14.5,8C14.5,8.83 13.83,9.5 13,9.5H10V6.5M13.5,17.5H10V14H13.5C14.33,14 15,14.67 15,15.5C15,16.33 14.33,17.5 13.5,17.5Z + M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19C20.92,17.39 19.61,16.08 18,16.08Z + M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z + + + + + + + + + + + + + + + + + + + + + + + + + + Precise dirty rects - - - - - - - - - - - - - - Precise dirty rects - - - - - - + + + + diff --git a/samples/ControlCatalog/Pages/CompositionPage.axaml.cs b/samples/ControlCatalog/Pages/CompositionPage.axaml.cs index 287bde0be8..8f5d75f4ce 100644 --- a/samples/ControlCatalog/Pages/CompositionPage.axaml.cs +++ b/samples/ControlCatalog/Pages/CompositionPage.axaml.cs @@ -15,7 +15,7 @@ using Math = System.Math; namespace ControlCatalog.Pages; -public partial class CompositionPage : UserControl +public partial class CompositionPage : TabbedPage { private ImplicitAnimationCollection? _implicitAnimations; private CompositionCustomVisual? _customVisual; diff --git a/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml b/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml index bf37b4cc4f..ca4a85af8d 100644 --- a/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml +++ b/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml @@ -1,6 +1,8 @@ - + - + + diff --git a/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml.cs b/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml.cs index 0c13bb360e..5d666730ae 100644 --- a/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ConnectedAnimationDemoPage.xaml.cs @@ -7,7 +7,7 @@ using Avalonia.Media; namespace ControlCatalog.Pages { - public partial class ConnectedAnimationDemoPage : UserControl + public partial class ConnectedAnimationDemoPage : ContentPage { private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = []; diff --git a/samples/ControlCatalog/Pages/ContainerQueryPage.xaml b/samples/ControlCatalog/Pages/ContainerQueryPage.xaml index e6b0558a04..96f7a87586 100644 --- a/samples/ControlCatalog/Pages/ContainerQueryPage.xaml +++ b/samples/ControlCatalog/Pages/ContainerQueryPage.xaml @@ -1,9 +1,10 @@ - @@ -107,4 +108,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ContainerQueryPage.xaml.cs b/samples/ControlCatalog/Pages/ContainerQueryPage.xaml.cs index acd67c6629..b43723005e 100644 --- a/samples/ControlCatalog/Pages/ContainerQueryPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ContainerQueryPage.xaml.cs @@ -2,7 +2,7 @@ namespace ControlCatalog.Pages { - public partial class ContainerQueryPage : UserControl + public partial class ContainerQueryPage : ContentPage { public ContainerQueryPage() { diff --git a/samples/ControlCatalog/Pages/ContentDemoPage.xaml b/samples/ControlCatalog/Pages/ContentDemoPage.xaml index d8f2155a1b..bcf0ca67ef 100644 --- a/samples/ControlCatalog/Pages/ContentDemoPage.xaml +++ b/samples/ControlCatalog/Pages/ContentDemoPage.xaml @@ -1,11 +1,14 @@ - - - - - - - + + + + + + + + diff --git a/samples/ControlCatalog/Pages/ContentDemoPage.xaml.cs b/samples/ControlCatalog/Pages/ContentDemoPage.xaml.cs index e667cfc0ff..b47dde07c1 100644 --- a/samples/ControlCatalog/Pages/ContentDemoPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ContentDemoPage.xaml.cs @@ -7,7 +7,7 @@ using Avalonia.Media; namespace ControlCatalog.Pages { - public partial class ContentDemoPage : UserControl + public partial class ContentDemoPage : ContentPage { private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = { diff --git a/samples/ControlCatalog/Pages/ContentPage/ContentPageCommandBarPage.xaml.cs b/samples/ControlCatalog/Pages/ContentPage/ContentPageCommandBarPage.xaml.cs index 07bdbb52a2..3bb6b30082 100644 --- a/samples/ControlCatalog/Pages/ContentPage/ContentPageCommandBarPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ContentPage/ContentPageCommandBarPage.xaml.cs @@ -78,7 +78,7 @@ namespace ControlCatalog.Pages private void OnAddPrimary(object? sender, RoutedEventArgs e) { _itemCounter++; - var btn = new AppBarButton { Label = $"Action {_itemCounter}" }; + var btn = new CommandBarButton { Label = $"Action {_itemCounter}" }; if (UseIconCheck.IsChecked == true) { var preset = IconPresets[(_itemCounter - 1) % IconPresets.Length]; @@ -93,13 +93,13 @@ namespace ControlCatalog.Pages private void OnAddSecondary(object? sender, RoutedEventArgs e) { _itemCounter++; - _secondaryItems.Add(new AppBarButton { Label = $"Item {_itemCounter}" }); + _secondaryItems.Add(new CommandBarButton { Label = $"Item {_itemCounter}" }); RebuildCommandBar(); } private void OnAddSeparator(object? sender, RoutedEventArgs e) { - _primaryItems.Add(new AppBarSeparator()); + _primaryItems.Add(new CommandBarSeparator()); RebuildCommandBar(); } @@ -177,26 +177,26 @@ namespace ControlCatalog.Pages foreach (var item in _primaryItems) { - if (item is AppBarButton btn) + if (item is CommandBarButton btn) { PathIcon? icon = null; if (btn.Icon is PathIcon src) icon = new PathIcon { Data = src.Data }; - commandBar.PrimaryCommands.Add(new AppBarButton + commandBar.PrimaryCommands.Add(new CommandBarButton { Label = btn.Label, Icon = icon, IsCompact = btn.IsCompact, }); } - else if (item is AppBarSeparator) - commandBar.PrimaryCommands.Add(new AppBarSeparator()); + else if (item is CommandBarSeparator) + commandBar.PrimaryCommands.Add(new CommandBarSeparator()); } foreach (var item in _secondaryItems) { - if (item is AppBarButton btn) - commandBar.SecondaryCommands.Add(new AppBarButton { Label = btn.Label }); + if (item is CommandBarButton btn) + commandBar.SecondaryCommands.Add(new CommandBarButton { Label = btn.Label }); } if (_position == "Top") @@ -204,7 +204,7 @@ namespace ControlCatalog.Pages else NavigationPage.SetBottomCommandBar(activePage, commandBar); - var primaryCount = _primaryItems.Count(i => i is AppBarButton); + var primaryCount = _primaryItems.Count(i => i is CommandBarButton); var secondaryCount = _secondaryItems.Count; StatusText.Text = $"{primaryCount} primary, {secondaryCount} secondary ({_position})"; } diff --git a/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml b/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml index c23393e63c..fa52c05bfa 100644 --- a/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml +++ b/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml @@ -1,18 +1,19 @@ - - + - + @@ -156,4 +157,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml.cs b/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml.cs index bef2c8212d..f25b9341c3 100644 --- a/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ContextFlyoutPage.xaml.cs @@ -7,7 +7,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class ContextFlyoutPage : UserControl + public partial class ContextFlyoutPage : ContentPage { public ContextFlyoutPage() { diff --git a/samples/ControlCatalog/Pages/ContextMenuPage.xaml b/samples/ControlCatalog/Pages/ContextMenuPage.xaml index 0e7c7b9451..4d1d02aed8 100644 --- a/samples/ControlCatalog/Pages/ContextMenuPage.xaml +++ b/samples/ControlCatalog/Pages/ContextMenuPage.xaml @@ -1,7 +1,8 @@ - A right click menu that can be applied to any control. @@ -86,4 +87,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ContextMenuPage.xaml.cs b/samples/ControlCatalog/Pages/ContextMenuPage.xaml.cs index a71398181c..86ce807127 100644 --- a/samples/ControlCatalog/Pages/ContextMenuPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ContextMenuPage.xaml.cs @@ -6,7 +6,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class ContextMenuPage : UserControl + public partial class ContextMenuPage : ContentPage { public ContextMenuPage() { diff --git a/samples/ControlCatalog/Pages/CursorPage.xaml b/samples/ControlCatalog/Pages/CursorPage.xaml index 66f2b8b2e3..ae20193c97 100644 --- a/samples/ControlCatalog/Pages/CursorPage.xaml +++ b/samples/ControlCatalog/Pages/CursorPage.xaml @@ -1,6 +1,7 @@ - @@ -27,4 +28,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CursorPage.xaml.cs b/samples/ControlCatalog/Pages/CursorPage.xaml.cs index f9119175e2..88699ac6f2 100644 --- a/samples/ControlCatalog/Pages/CursorPage.xaml.cs +++ b/samples/ControlCatalog/Pages/CursorPage.xaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class CursorPage : UserControl + public partial class CursorPage : ContentPage { public CursorPage() { diff --git a/samples/ControlCatalog/Pages/CustomDrawing.xaml b/samples/ControlCatalog/Pages/CustomDrawing.xaml index 04b7fcfea5..f1cb2dab14 100644 --- a/samples/ControlCatalog/Pages/CustomDrawing.xaml +++ b/samples/ControlCatalog/Pages/CustomDrawing.xaml @@ -1,15 +1,16 @@ - - + - + @@ -104,4 +105,4 @@ - + diff --git a/samples/ControlCatalog/Pages/CustomDrawing.xaml.cs b/samples/ControlCatalog/Pages/CustomDrawing.xaml.cs index d3fedb76be..0eae942075 100644 --- a/samples/ControlCatalog/Pages/CustomDrawing.xaml.cs +++ b/samples/ControlCatalog/Pages/CustomDrawing.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class CustomDrawing : UserControl + public partial class CustomDrawing : ContentPage { public CustomDrawing() { diff --git a/samples/ControlCatalog/Pages/DataGridPage.xaml b/samples/ControlCatalog/Pages/DataGridPage.xaml index 3187e13f9f..04adf56700 100644 --- a/samples/ControlCatalog/Pages/DataGridPage.xaml +++ b/samples/ControlCatalog/Pages/DataGridPage.xaml @@ -1,5 +1,6 @@ - @@ -8,4 +9,4 @@ Click="OnLinkClicked" /> - + diff --git a/samples/ControlCatalog/Pages/DataGridPage.xaml.cs b/samples/ControlCatalog/Pages/DataGridPage.xaml.cs index 5fa4ec8b0e..1154506e2e 100644 --- a/samples/ControlCatalog/Pages/DataGridPage.xaml.cs +++ b/samples/ControlCatalog/Pages/DataGridPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages; -public partial class DataGridPage : UserControl +public partial class DataGridPage : ContentPage { public DataGridPage() { diff --git a/samples/ControlCatalog/Pages/DataValidationPage.axaml b/samples/ControlCatalog/Pages/DataValidationPage.axaml index d46562addd..de4e398725 100644 --- a/samples/ControlCatalog/Pages/DataValidationPage.axaml +++ b/samples/ControlCatalog/Pages/DataValidationPage.axaml @@ -1,14 +1,15 @@ - - + - + - + diff --git a/samples/ControlCatalog/Pages/DataValidationPage.axaml.cs b/samples/ControlCatalog/Pages/DataValidationPage.axaml.cs index e38f85fec4..26bb75ca79 100644 --- a/samples/ControlCatalog/Pages/DataValidationPage.axaml.cs +++ b/samples/ControlCatalog/Pages/DataValidationPage.axaml.cs @@ -4,7 +4,7 @@ using Avalonia.Markup.Xaml; namespace ControlCatalog.Pages; -public partial class DataValidationPage : UserControl +public partial class DataValidationPage : ContentPage { public DataValidationPage() { diff --git a/samples/ControlCatalog/Pages/DateTimePickerPage.xaml b/samples/ControlCatalog/Pages/DateTimePickerPage.xaml index 7a1bfaa824..2183204c05 100644 --- a/samples/ControlCatalog/Pages/DateTimePickerPage.xaml +++ b/samples/ControlCatalog/Pages/DateTimePickerPage.xaml @@ -1,7 +1,8 @@ - @@ -207,4 +208,4 @@ - + diff --git a/samples/ControlCatalog/Pages/DateTimePickerPage.xaml.cs b/samples/ControlCatalog/Pages/DateTimePickerPage.xaml.cs index b5968a6b2a..99250d5fb0 100644 --- a/samples/ControlCatalog/Pages/DateTimePickerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/DateTimePickerPage.xaml.cs @@ -2,7 +2,7 @@ namespace ControlCatalog.Pages { - public partial class DateTimePickerPage : UserControl + public partial class DateTimePickerPage : ContentPage { public DateTimePickerPage() { diff --git a/samples/ControlCatalog/Pages/DialogsPage.xaml b/samples/ControlCatalog/Pages/DialogsPage.xaml index e6b3568909..296b632b91 100644 --- a/samples/ControlCatalog/Pages/DialogsPage.xaml +++ b/samples/ControlCatalog/Pages/DialogsPage.xaml @@ -1,6 +1,7 @@ - - + diff --git a/samples/ControlCatalog/Pages/DialogsPage.xaml.cs b/samples/ControlCatalog/Pages/DialogsPage.xaml.cs index adcf844552..616e3d4f62 100644 --- a/samples/ControlCatalog/Pages/DialogsPage.xaml.cs +++ b/samples/ControlCatalog/Pages/DialogsPage.xaml.cs @@ -12,7 +12,7 @@ using Avalonia.Platform.Storage; namespace ControlCatalog.Pages { - public partial class DialogsPage : UserControl + public partial class DialogsPage : ContentPage { public DialogsPage() { diff --git a/samples/ControlCatalog/Pages/DragAndDropPage.xaml b/samples/ControlCatalog/Pages/DragAndDropPage.xaml index 7982ddc1d0..2ca9ed27a0 100644 --- a/samples/ControlCatalog/Pages/DragAndDropPage.xaml +++ b/samples/ControlCatalog/Pages/DragAndDropPage.xaml @@ -1,15 +1,16 @@ - - + - + Example of Drag+Drop capabilities @@ -57,4 +58,4 @@ - + diff --git a/samples/ControlCatalog/Pages/DragAndDropPage.xaml.cs b/samples/ControlCatalog/Pages/DragAndDropPage.xaml.cs index fe2b306477..b2a91da381 100644 --- a/samples/ControlCatalog/Pages/DragAndDropPage.xaml.cs +++ b/samples/ControlCatalog/Pages/DragAndDropPage.xaml.cs @@ -13,7 +13,7 @@ using Avalonia.Platform.Storage; namespace ControlCatalog.Pages { - public partial class DragAndDropPage : UserControl + public partial class DragAndDropPage : ContentPage { private readonly DataFormat _customFormat = DataFormat.CreateStringApplicationFormat("xxx-avalonia-controlcatalog-custom"); diff --git a/samples/ControlCatalog/Pages/DrawerDemoPage.xaml b/samples/ControlCatalog/Pages/DrawerDemoPage.xaml index 671a9a8487..f1edd0bc63 100644 --- a/samples/ControlCatalog/Pages/DrawerDemoPage.xaml +++ b/samples/ControlCatalog/Pages/DrawerDemoPage.xaml @@ -1,11 +1,14 @@ - - - - - - - + + + + + + + + diff --git a/samples/ControlCatalog/Pages/DrawerDemoPage.xaml.cs b/samples/ControlCatalog/Pages/DrawerDemoPage.xaml.cs index cd8aa9cd5b..27eb93ff03 100644 --- a/samples/ControlCatalog/Pages/DrawerDemoPage.xaml.cs +++ b/samples/ControlCatalog/Pages/DrawerDemoPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class DrawerDemoPage : UserControl + public partial class DrawerDemoPage : ContentPage { private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = { diff --git a/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml b/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml index 4987e8979e..3adffed5f7 100644 --- a/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml +++ b/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml @@ -72,6 +72,14 @@ + + + + + + + @@ -82,6 +90,14 @@ + + + + + + + diff --git a/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml.cs b/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml.cs index 243bc5868b..d948252385 100644 --- a/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml.cs +++ b/samples/ControlCatalog/Pages/DrawerPage/DrawerPageCustomizationPage.xaml.cs @@ -1,8 +1,10 @@ using System.Linq; using Avalonia.Controls; using Avalonia.Controls.Primitives; +using Avalonia.Controls.Templates; using Avalonia.Input.GestureRecognizers; using Avalonia.Interactivity; +using Avalonia.Layout; using Avalonia.Media; namespace ControlCatalog.Pages @@ -143,7 +145,7 @@ namespace ControlCatalog.Pages { if (!_isLoaded) return; - DemoDrawer.DrawerIcon = Geometry.Parse(_iconPaths[IconCombo.SelectedIndex]); + DemoDrawer.DrawerIcon = new PathIcon { Data = Geometry.Parse(_iconPaths[IconCombo.SelectedIndex]) }; } private void OnBackdropChanged(object? sender, SelectionChangedEventArgs e) @@ -164,7 +166,7 @@ namespace ControlCatalog.Pages if (!_isLoaded) return; if (ShowHeaderCheck.IsChecked == true) - DemoDrawer.DrawerHeader = DrawerHeaderBorder; + DemoDrawer.DrawerHeader = HeaderTemplateCombo.SelectedIndex == 0 ? DrawerHeaderBorder : (object)"My Application"; else DemoDrawer.DrawerHeader = null; } @@ -174,9 +176,128 @@ namespace ControlCatalog.Pages if (!_isLoaded) return; if (ShowFooterCheck.IsChecked == true) - DemoDrawer.DrawerFooter = DrawerFooterBorder; + { + DemoDrawer.DrawerFooter = FooterTemplateCombo.SelectedIndex switch + { + 1 => (object)"v12.0", + 2 => (object)"Avalonia", + _ => DrawerFooterBorder + }; + } else + { DemoDrawer.DrawerFooter = null; + } + } + + private void OnHeaderTemplateChanged(object? sender, SelectionChangedEventArgs e) + { + if (!_isLoaded) + return; + + switch (HeaderTemplateCombo.SelectedIndex) + { + case 1: + DemoDrawer.DrawerHeader = "My Application"; + DemoDrawer.DrawerHeaderTemplate = new FuncDataTemplate((data, _) => + new Border + { + Padding = new Avalonia.Thickness(16), + Child = new StackPanel + { + Spacing = 2, + Children = + { + new TextBlock { Text = data, FontSize = 18, FontWeight = FontWeight.SemiBold, Foreground = Brushes.White }, + new TextBlock { Text = "Navigation", FontSize = 12, Foreground = Brushes.White, Opacity = 0.7 } + } + } + }); + break; + + case 2: + DemoDrawer.DrawerHeader = "My Application"; + DemoDrawer.DrawerHeaderTemplate = new FuncDataTemplate((data, _) => + { + var initial = data?.Length > 0 ? data[0].ToString().ToUpperInvariant() : "?"; + var avatar = new Border + { + Width = 40, + Height = 40, + CornerRadius = new Avalonia.CornerRadius(20), + Background = new SolidColorBrush(Color.Parse("#1976D2")), + Child = new TextBlock + { + Text = initial, + FontSize = 18, + FontWeight = FontWeight.Bold, + Foreground = Brushes.White, + HorizontalAlignment = HorizontalAlignment.Center, + VerticalAlignment = VerticalAlignment.Center + } + }; + var label = new TextBlock { Text = data, FontSize = 14, FontWeight = FontWeight.SemiBold, VerticalAlignment = VerticalAlignment.Center }; + var row = new StackPanel { Orientation = Orientation.Horizontal, Spacing = 10 }; + row.Children.Add(avatar); + row.Children.Add(label); + return new Border { Padding = new Avalonia.Thickness(12), Child = row }; + }); + break; + + default: + DemoDrawer.DrawerHeader = DrawerHeaderBorder; + DemoDrawer.DrawerHeaderTemplate = null; + break; + } + } + + private void OnFooterTemplateChanged(object? sender, SelectionChangedEventArgs e) + { + if (!_isLoaded) + return; + + switch (FooterTemplateCombo.SelectedIndex) + { + case 1: + DemoDrawer.DrawerFooter = "v12.0"; + DemoDrawer.DrawerFooterTemplate = new FuncDataTemplate((data, _) => + new Border + { + Padding = new Avalonia.Thickness(12, 8), + Child = new Border + { + Padding = new Avalonia.Thickness(8, 4), + CornerRadius = new Avalonia.CornerRadius(4), + Background = new SolidColorBrush(Color.Parse("#1976D2")), + Child = new TextBlock { Text = data, FontSize = 11, Foreground = Brushes.White, FontWeight = FontWeight.SemiBold } + } + }); + break; + + case 2: + DemoDrawer.DrawerFooter = "Avalonia"; + DemoDrawer.DrawerFooterTemplate = new FuncDataTemplate((data, _) => + { + var icon = new PathIcon + { + Width = 14, + Height = 14, + Data = Geometry.Parse("M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"), + Opacity = 0.5 + }; + var label = new TextBlock { Text = data, FontSize = 12, Opacity = 0.6, VerticalAlignment = VerticalAlignment.Center }; + var row = new StackPanel { Orientation = Orientation.Horizontal, Spacing = 6 }; + row.Children.Add(icon); + row.Children.Add(label); + return new Border { Padding = new Avalonia.Thickness(14, 10), Child = row }; + }); + break; + + default: + DemoDrawer.DrawerFooter = DrawerFooterBorder; + DemoDrawer.DrawerFooterTemplate = null; + break; + } } private void OnMenuItemClick(object? sender, RoutedEventArgs e) diff --git a/samples/ControlCatalog/Pages/DrawerPage/EcoTrackerAppPage.xaml b/samples/ControlCatalog/Pages/DrawerPage/EcoTrackerAppPage.xaml index 1e9106ccfe..22320fbc8d 100644 --- a/samples/ControlCatalog/Pages/DrawerPage/EcoTrackerAppPage.xaml +++ b/samples/ControlCatalog/Pages/DrawerPage/EcoTrackerAppPage.xaml @@ -52,13 +52,9 @@ - M12 3C9 6 6 9 6 13C6 17.4 8.7 21 12 22C15.3 21 18 17.4 18 13C18 9 15 6 12 3Z + - - - - - diff --git a/samples/ControlCatalog/Pages/ExpanderPage.xaml b/samples/ControlCatalog/Pages/ExpanderPage.xaml index b5a2e6cdd0..322da30a61 100644 --- a/samples/ControlCatalog/Pages/ExpanderPage.xaml +++ b/samples/ControlCatalog/Pages/ExpanderPage.xaml @@ -1,7 +1,8 @@ - Expands to show nested content @@ -72,4 +73,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ExpanderPage.xaml.cs b/samples/ControlCatalog/Pages/ExpanderPage.xaml.cs index 05c5cbee53..65b7b7e30b 100644 --- a/samples/ControlCatalog/Pages/ExpanderPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ExpanderPage.xaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class ExpanderPage : UserControl + public partial class ExpanderPage : ContentPage { public ExpanderPage() { diff --git a/samples/ControlCatalog/Pages/FlyoutsPage.axaml b/samples/ControlCatalog/Pages/FlyoutsPage.axaml index 64a005c987..840557bb9f 100644 --- a/samples/ControlCatalog/Pages/FlyoutsPage.axaml +++ b/samples/ControlCatalog/Pages/FlyoutsPage.axaml @@ -1,11 +1,12 @@ - - + @@ -25,7 +26,7 @@ - + @@ -282,4 +283,4 @@ - + diff --git a/samples/ControlCatalog/Pages/FlyoutsPage.axaml.cs b/samples/ControlCatalog/Pages/FlyoutsPage.axaml.cs index 91e92bc227..d6f54df074 100644 --- a/samples/ControlCatalog/Pages/FlyoutsPage.axaml.cs +++ b/samples/ControlCatalog/Pages/FlyoutsPage.axaml.cs @@ -7,7 +7,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class FlyoutsPage : UserControl + public partial class FlyoutsPage : ContentPage { public FlyoutsPage() { diff --git a/samples/ControlCatalog/Pages/FocusPage.xaml b/samples/ControlCatalog/Pages/FocusPage.xaml index f4bad7d138..6cb2647907 100644 --- a/samples/ControlCatalog/Pages/FocusPage.xaml +++ b/samples/ControlCatalog/Pages/FocusPage.xaml @@ -1,9 +1,10 @@ - @@ -47,4 +48,4 @@ - + diff --git a/samples/ControlCatalog/Pages/FocusPage.xaml.cs b/samples/ControlCatalog/Pages/FocusPage.xaml.cs index 2cc8067885..18aae471ab 100644 --- a/samples/ControlCatalog/Pages/FocusPage.xaml.cs +++ b/samples/ControlCatalog/Pages/FocusPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Markup.Xaml; namespace ControlCatalog.Pages; -public partial class FocusPage : UserControl +public partial class FocusPage : ContentPage { public FocusPage() { diff --git a/samples/ControlCatalog/Pages/GesturePage.xaml b/samples/ControlCatalog/Pages/GesturePage.xaml index 00d36d6cea..da9ed5f807 100644 --- a/samples/ControlCatalog/Pages/GesturePage.xaml +++ b/samples/ControlCatalog/Pages/GesturePage.xaml @@ -1,170 +1,14 @@ - - - - - Pull Gexture (Touch / Pen) - - - - Pull from colored rectangles - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Pinch/Zoom Gexture (Multi Touch) - - - - - - - - - - - - - - - - - Pinch/Rotation Gexture (Multi Touch) - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + diff --git a/samples/ControlCatalog/Pages/GesturePage.xaml.cs b/samples/ControlCatalog/Pages/GesturePage.xaml.cs new file mode 100644 index 0000000000..56c09573d0 --- /dev/null +++ b/samples/ControlCatalog/Pages/GesturePage.xaml.cs @@ -0,0 +1,39 @@ +using System; +using Avalonia.Controls; +using Avalonia.Interactivity; + +namespace ControlCatalog.Pages +{ + public partial class GesturePage : ContentPage + { + private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = + { + ("Touch / Pen", "Pull Gesture", + "Press and drag from colored border zones. A green ball tracks the pull delta and springs back on release.", + () => new GesturePullPage()), + + ("Multi Touch", "Pinch / Zoom", + "Pinch to scale an image using composition visuals. Scroll to pan when zoomed in.", + () => new GesturePinchZoomPage()), + + ("Multi Touch", "Pinch / Rotation", + "Pinch to rotate a rectangle. The Angle property from the pinch event drives a RotateTransform.", + () => new GesturePinchRotationPage()), + + ("Touch / Pen / Mouse", "Swipe Gesture", + "Swipe horizontally or vertically. Configure direction, threshold, and mouse support. Shows live delta, velocity, and direction.", + () => new GestureSwipePage()), + }; + + public GesturePage() + { + InitializeComponent(); + Loaded += OnLoaded; + } + + private async void OnLoaded(object? sender, RoutedEventArgs e) + { + await SampleNav.PushAsync(NavigationDemoHelper.CreateGalleryHomePage(SampleNav, Demos), null); + } + } +} diff --git a/samples/ControlCatalog/Pages/Gestures/GesturePinchRotationPage.xaml b/samples/ControlCatalog/Pages/Gestures/GesturePinchRotationPage.xaml new file mode 100644 index 0000000000..b46af74c3b --- /dev/null +++ b/samples/ControlCatalog/Pages/Gestures/GesturePinchRotationPage.xaml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/ControlCatalog/Pages/Gestures/GesturePinchRotationPage.xaml.cs b/samples/ControlCatalog/Pages/Gestures/GesturePinchRotationPage.xaml.cs new file mode 100644 index 0000000000..55d5e619ee --- /dev/null +++ b/samples/ControlCatalog/Pages/Gestures/GesturePinchRotationPage.xaml.cs @@ -0,0 +1,33 @@ +using Avalonia; +using Avalonia.Controls; +using Avalonia.Input; + +namespace ControlCatalog.Pages +{ + public partial class GesturePinchRotationPage : UserControl + { + private bool _isInit; + + public GesturePinchRotationPage() + { + InitializeComponent(); + } + + protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e) + { + base.OnAttachedToVisualTree(e); + + if (_isInit) + { + return; + } + + _isInit = true; + + RotationGesture.AddHandler(InputElement.PinchEvent, (s, e) => + { + AngleSlider.Value = e.Angle; + }); + } + } +} diff --git a/samples/ControlCatalog/Pages/Gestures/GesturePinchZoomPage.xaml b/samples/ControlCatalog/Pages/Gestures/GesturePinchZoomPage.xaml new file mode 100644 index 0000000000..6932741e5b --- /dev/null +++ b/samples/ControlCatalog/Pages/Gestures/GesturePinchZoomPage.xaml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs b/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs index 09173e01a5..51dc4c2c72 100644 --- a/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs +++ b/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs @@ -11,7 +11,7 @@ using ControlCatalog.Pages.OpenGl; namespace ControlCatalog.Pages { - public partial class OpenGlPage : UserControl + public partial class OpenGlPage : ContentPage { public OpenGlPage() { diff --git a/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonsPage.xaml b/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonThemesPage.xaml similarity index 83% rename from samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonsPage.xaml rename to samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonThemesPage.xaml index 8b9856424d..3e32f253f5 100644 --- a/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonsPage.xaml +++ b/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonThemesPage.xaml @@ -1,17 +1,17 @@ + x:Class="ControlCatalog.Pages.PipsPagerCustomButtonThemesPage"> - + Text="Replace the default chevron navigation buttons with custom button themes using PreviousButtonTheme and NextButtonTheme." /> - - + + @@ -27,7 +27,7 @@ - + @@ -41,7 +41,7 @@ - + @@ -56,12 +56,12 @@ - - - - - - + + + + + + diff --git a/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonThemesPage.xaml.cs b/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonThemesPage.xaml.cs new file mode 100644 index 0000000000..26682b9d61 --- /dev/null +++ b/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonThemesPage.xaml.cs @@ -0,0 +1,11 @@ +using Avalonia.Controls; + +namespace ControlCatalog.Pages; + +public partial class PipsPagerCustomButtonThemesPage : UserControl +{ + public PipsPagerCustomButtonThemesPage() + { + InitializeComponent(); + } +} diff --git a/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonsPage.xaml.cs b/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonsPage.xaml.cs deleted file mode 100644 index 4fc74995bc..0000000000 --- a/samples/ControlCatalog/Pages/PipsPager/PipsPagerCustomButtonsPage.xaml.cs +++ /dev/null @@ -1,11 +0,0 @@ -using Avalonia.Controls; - -namespace ControlCatalog.Pages; - -public partial class PipsPagerCustomButtonsPage : UserControl -{ - public PipsPagerCustomButtonsPage() - { - InitializeComponent(); - } -} diff --git a/samples/ControlCatalog/Pages/PipsPagerPage.xaml b/samples/ControlCatalog/Pages/PipsPagerPage.xaml index 54112daae0..aee21a7d01 100644 --- a/samples/ControlCatalog/Pages/PipsPagerPage.xaml +++ b/samples/ControlCatalog/Pages/PipsPagerPage.xaml @@ -1,11 +1,14 @@ - - - - - - - + + + + + + + + diff --git a/samples/ControlCatalog/Pages/PipsPagerPage.xaml.cs b/samples/ControlCatalog/Pages/PipsPagerPage.xaml.cs index 33cc6d0fdf..5a3b142f59 100644 --- a/samples/ControlCatalog/Pages/PipsPagerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/PipsPagerPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class PipsPagerPage : UserControl + public partial class PipsPagerPage : ContentPage { private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = { @@ -25,9 +25,9 @@ namespace ControlCatalog.Pages ("Appearance", "Custom Colors", "Override pip indicator colors using resource keys for normal, selected, and hover states.", () => new PipsPagerCustomColorsPage()), - ("Appearance", "Custom Buttons", - "Replace the default chevron navigation buttons with custom styled buttons.", - () => new PipsPagerCustomButtonsPage()), + ("Appearance", "Custom Button Themes", + "Replace the default chevron navigation buttons with custom button themes.", + () => new PipsPagerCustomButtonThemesPage()), ("Appearance", "Custom Templates", "Override pip item templates to create squares, pills, numbers, or any custom shape.", () => new PipsPagerCustomTemplatesPage()), diff --git a/samples/ControlCatalog/Pages/PlatformInfoPage.xaml b/samples/ControlCatalog/Pages/PlatformInfoPage.xaml index 22c47f6bef..f86d53b740 100644 --- a/samples/ControlCatalog/Pages/PlatformInfoPage.xaml +++ b/samples/ControlCatalog/Pages/PlatformInfoPage.xaml @@ -1,4 +1,4 @@ - @@ -53,4 +54,4 @@ - + diff --git a/samples/ControlCatalog/Pages/PlatformInfoPage.xaml.cs b/samples/ControlCatalog/Pages/PlatformInfoPage.xaml.cs index 5066bc51de..db1bbef40c 100644 --- a/samples/ControlCatalog/Pages/PlatformInfoPage.xaml.cs +++ b/samples/ControlCatalog/Pages/PlatformInfoPage.xaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class PlatformInfoPage : UserControl + public partial class PlatformInfoPage : ContentPage { public PlatformInfoPage() { diff --git a/samples/ControlCatalog/Pages/PointersPage.xaml b/samples/ControlCatalog/Pages/PointersPage.xaml index dda85316f6..2f958b901b 100644 --- a/samples/ControlCatalog/Pages/PointersPage.xaml +++ b/samples/ControlCatalog/Pages/PointersPage.xaml @@ -1,12 +1,12 @@ - - - + - - + + - - + + - - + + Capture 2 - - - + + diff --git a/samples/ControlCatalog/Pages/PointersPage.xaml.cs b/samples/ControlCatalog/Pages/PointersPage.xaml.cs index adf45029ec..388c8fa382 100644 --- a/samples/ControlCatalog/Pages/PointersPage.xaml.cs +++ b/samples/ControlCatalog/Pages/PointersPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Input; namespace ControlCatalog.Pages; -public partial class PointersPage : UserControl +public partial class PointersPage : TabbedPage { public PointersPage() { diff --git a/samples/ControlCatalog/Pages/ProgressBarPage.xaml b/samples/ControlCatalog/Pages/ProgressBarPage.xaml index 52e1e198b5..3b80b5a6bb 100644 --- a/samples/ControlCatalog/Pages/ProgressBarPage.xaml +++ b/samples/ControlCatalog/Pages/ProgressBarPage.xaml @@ -1,4 +1,8 @@ - + A progress bar control @@ -18,10 +22,10 @@ - - @@ -36,4 +40,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ProgressBarPage.xaml.cs b/samples/ControlCatalog/Pages/ProgressBarPage.xaml.cs index 42b9fe29d7..244161a61e 100644 --- a/samples/ControlCatalog/Pages/ProgressBarPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ProgressBarPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class ProgressBarPage : UserControl + public partial class ProgressBarPage : ContentPage { public ProgressBarPage() { diff --git a/samples/ControlCatalog/Pages/RadioButtonPage.xaml b/samples/ControlCatalog/Pages/RadioButtonPage.xaml index 8623d81b3f..efb63ea124 100644 --- a/samples/ControlCatalog/Pages/RadioButtonPage.xaml +++ b/samples/ControlCatalog/Pages/RadioButtonPage.xaml @@ -1,5 +1,6 @@ - Allows the selection of a single option of many @@ -37,4 +38,4 @@ - + diff --git a/samples/ControlCatalog/Pages/RadioButtonPage.xaml.cs b/samples/ControlCatalog/Pages/RadioButtonPage.xaml.cs index 798df9fe77..8199a7caf5 100644 --- a/samples/ControlCatalog/Pages/RadioButtonPage.xaml.cs +++ b/samples/ControlCatalog/Pages/RadioButtonPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class RadioButtonPage : UserControl + public partial class RadioButtonPage : ContentPage { public RadioButtonPage() { diff --git a/samples/ControlCatalog/Pages/RefreshContainerPage.axaml b/samples/ControlCatalog/Pages/RefreshContainerPage.axaml index f6ea26a84c..06f54dd28a 100644 --- a/samples/ControlCatalog/Pages/RefreshContainerPage.axaml +++ b/samples/ControlCatalog/Pages/RefreshContainerPage.axaml @@ -1,4 +1,4 @@ - - + diff --git a/samples/ControlCatalog/Pages/RefreshContainerPage.axaml.cs b/samples/ControlCatalog/Pages/RefreshContainerPage.axaml.cs index a710cd7e5c..2c886fa9de 100644 --- a/samples/ControlCatalog/Pages/RefreshContainerPage.axaml.cs +++ b/samples/ControlCatalog/Pages/RefreshContainerPage.axaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class RefreshContainerPage : UserControl + public partial class RefreshContainerPage : ContentPage { private RefreshContainerViewModel _viewModel; diff --git a/samples/ControlCatalog/Pages/RelativePanelPage.axaml b/samples/ControlCatalog/Pages/RelativePanelPage.axaml index a6647b0d36..ccc39befd4 100644 --- a/samples/ControlCatalog/Pages/RelativePanelPage.axaml +++ b/samples/ControlCatalog/Pages/RelativePanelPage.axaml @@ -1,8 +1,9 @@ - @@ -60,4 +61,4 @@ - + diff --git a/samples/ControlCatalog/Pages/RelativePanelPage.axaml.cs b/samples/ControlCatalog/Pages/RelativePanelPage.axaml.cs index aec13a18e3..3c59deb791 100644 --- a/samples/ControlCatalog/Pages/RelativePanelPage.axaml.cs +++ b/samples/ControlCatalog/Pages/RelativePanelPage.axaml.cs @@ -2,7 +2,7 @@ namespace ControlCatalog.Pages { - public partial class RelativePanelPage : UserControl + public partial class RelativePanelPage : ContentPage { public RelativePanelPage() { diff --git a/samples/ControlCatalog/Pages/ScreenPage.cs b/samples/ControlCatalog/Pages/ScreenPage.cs index 66e90c2b34..9791152923 100644 --- a/samples/ControlCatalog/Pages/ScreenPage.cs +++ b/samples/ControlCatalog/Pages/ScreenPage.cs @@ -11,7 +11,7 @@ using Avalonia.Threading; namespace ControlCatalog.Pages { - public class ScreenPage : UserControl + public class ScreenPage : ContentPage { private double _leftMost; private double _topMost; diff --git a/samples/ControlCatalog/Pages/ScrollViewerPage.xaml b/samples/ControlCatalog/Pages/ScrollViewerPage.xaml index f931542a04..0567dbe451 100644 --- a/samples/ControlCatalog/Pages/ScrollViewerPage.xaml +++ b/samples/ControlCatalog/Pages/ScrollViewerPage.xaml @@ -1,10 +1,10 @@ - - - + - - + + - - - + + diff --git a/samples/ControlCatalog/Pages/ScrollViewerPage.xaml.cs b/samples/ControlCatalog/Pages/ScrollViewerPage.xaml.cs index 7c684357d3..cfdd5bab54 100644 --- a/samples/ControlCatalog/Pages/ScrollViewerPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ScrollViewerPage.xaml.cs @@ -92,7 +92,7 @@ namespace ControlCatalog.Pages public List AvailableSnapPointsAlignment { get; } } - public partial class ScrollViewerPage : UserControl + public partial class ScrollViewerPage : TabbedPage { public ScrollViewerPage() { diff --git a/samples/ControlCatalog/Pages/SliderPage.xaml b/samples/ControlCatalog/Pages/SliderPage.xaml index 7821e885ba..445564cb54 100644 --- a/samples/ControlCatalog/Pages/SliderPage.xaml +++ b/samples/ControlCatalog/Pages/SliderPage.xaml @@ -1,5 +1,6 @@ - @@ -80,4 +81,4 @@ - + diff --git a/samples/ControlCatalog/Pages/SliderPage.xaml.cs b/samples/ControlCatalog/Pages/SliderPage.xaml.cs index 8345df8716..f65f714300 100644 --- a/samples/ControlCatalog/Pages/SliderPage.xaml.cs +++ b/samples/ControlCatalog/Pages/SliderPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class SliderPage : UserControl + public partial class SliderPage : ContentPage { public SliderPage() { diff --git a/samples/ControlCatalog/Pages/SplitViewPage.xaml b/samples/ControlCatalog/Pages/SplitViewPage.xaml index 201765ad88..144688e358 100644 --- a/samples/ControlCatalog/Pages/SplitViewPage.xaml +++ b/samples/ControlCatalog/Pages/SplitViewPage.xaml @@ -1,8 +1,9 @@ - @@ -109,4 +110,4 @@ - + diff --git a/samples/ControlCatalog/Pages/SplitViewPage.xaml.cs b/samples/ControlCatalog/Pages/SplitViewPage.xaml.cs index b711db3c49..4917a13ccf 100644 --- a/samples/ControlCatalog/Pages/SplitViewPage.xaml.cs +++ b/samples/ControlCatalog/Pages/SplitViewPage.xaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class SplitViewPage : UserControl + public partial class SplitViewPage : ContentPage { public SplitViewPage() { diff --git a/samples/ControlCatalog/Pages/TabControlPage.xaml b/samples/ControlCatalog/Pages/TabControlPage.xaml index a3bacfd92a..e7aa18ea84 100644 --- a/samples/ControlCatalog/Pages/TabControlPage.xaml +++ b/samples/ControlCatalog/Pages/TabControlPage.xaml @@ -1,7 +1,8 @@ - @@ -108,4 +109,4 @@ - + diff --git a/samples/ControlCatalog/Pages/TabControlPage.xaml.cs b/samples/ControlCatalog/Pages/TabControlPage.xaml.cs index b7f34eda86..366b5216ef 100644 --- a/samples/ControlCatalog/Pages/TabControlPage.xaml.cs +++ b/samples/ControlCatalog/Pages/TabControlPage.xaml.cs @@ -6,7 +6,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class TabControlPage : UserControl + public partial class TabControlPage : ContentPage { public TabControlPage() { diff --git a/samples/ControlCatalog/Pages/TabStripPage.xaml b/samples/ControlCatalog/Pages/TabStripPage.xaml index b576beeb5f..f4a47af353 100644 --- a/samples/ControlCatalog/Pages/TabStripPage.xaml +++ b/samples/ControlCatalog/Pages/TabStripPage.xaml @@ -1,6 +1,7 @@ - @@ -31,4 +32,4 @@ - + diff --git a/samples/ControlCatalog/Pages/TabStripPage.xaml.cs b/samples/ControlCatalog/Pages/TabStripPage.xaml.cs index d2873f6586..d830109833 100644 --- a/samples/ControlCatalog/Pages/TabStripPage.xaml.cs +++ b/samples/ControlCatalog/Pages/TabStripPage.xaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class TabStripPage : UserControl + public partial class TabStripPage : ContentPage { public TabStripPage() { diff --git a/samples/ControlCatalog/Pages/TabbedDemoPage.xaml b/samples/ControlCatalog/Pages/TabbedDemoPage.xaml index bb1467060b..58a3b4fe82 100644 --- a/samples/ControlCatalog/Pages/TabbedDemoPage.xaml +++ b/samples/ControlCatalog/Pages/TabbedDemoPage.xaml @@ -1,11 +1,14 @@ - - - - - - - + + + + + + + + diff --git a/samples/ControlCatalog/Pages/TabbedDemoPage.xaml.cs b/samples/ControlCatalog/Pages/TabbedDemoPage.xaml.cs index 51da6330a1..88692c97f3 100644 --- a/samples/ControlCatalog/Pages/TabbedDemoPage.xaml.cs +++ b/samples/ControlCatalog/Pages/TabbedDemoPage.xaml.cs @@ -4,7 +4,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class TabbedDemoPage : UserControl + public partial class TabbedDemoPage : ContentPage { private static readonly (string Group, string Title, string Description, Func Factory)[] Demos = { diff --git a/samples/ControlCatalog/Pages/TextBlockPage.xaml b/samples/ControlCatalog/Pages/TextBlockPage.xaml index 7c0300d318..3418cffe74 100644 --- a/samples/ControlCatalog/Pages/TextBlockPage.xaml +++ b/samples/ControlCatalog/Pages/TextBlockPage.xaml @@ -1,5 +1,6 @@ - A control that can display text @@ -137,4 +138,4 @@ - + diff --git a/samples/ControlCatalog/Pages/TextBlockPage.xaml.cs b/samples/ControlCatalog/Pages/TextBlockPage.xaml.cs index d097d1d083..d10d255a4f 100644 --- a/samples/ControlCatalog/Pages/TextBlockPage.xaml.cs +++ b/samples/ControlCatalog/Pages/TextBlockPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class TextBlockPage : UserControl + public partial class TextBlockPage : ContentPage { public TextBlockPage() { diff --git a/samples/ControlCatalog/Pages/TextBoxPage.xaml b/samples/ControlCatalog/Pages/TextBoxPage.xaml index 346e561dfc..9b5a412f86 100644 --- a/samples/ControlCatalog/Pages/TextBoxPage.xaml +++ b/samples/ControlCatalog/Pages/TextBoxPage.xaml @@ -1,6 +1,7 @@ - @@ -101,4 +102,4 @@ FontFamily="avares://ControlCatalog/Assets/Fonts#WenQuanYi Micro Hei" Text="计算机科学(是系统性研究信息与计算的理论基础以及它们在计算机系统中如何实现与应用的实用技术的学科。它通常被形容为对那些创造、描述以及转换信息的算法处理的系统研究。计算机科学包含很多分支领域;有些强调特定结果的计算,比如计算机图形学;而有些是探討计算问题的性质,比如计算复杂性理论;还有一些领域專注于怎样实现计算,比如程式語言理論是研究描述计算的方法,而程式设计是应用特定的程式語言解决特定的计算问题,人机交互则是專注于怎样使计算机和计算变得有用、好用,以及随时随地为人所用。 有时公众会误以为计算机科学就是解决计算机问题的事业(比如信息技术),或者只是与使用计算机的经验有关,如玩游戏、上网或者文字处理。其实计算机科学所关注的,不仅仅是去理解实现类似游戏、浏览器这些软件的程序的性质,更要通过现有的知识创造新的程序或者改进已有的程序。" /> - + diff --git a/samples/ControlCatalog/Pages/TextBoxPage.xaml.cs b/samples/ControlCatalog/Pages/TextBoxPage.xaml.cs index 035f951a6b..3c38a05c53 100644 --- a/samples/ControlCatalog/Pages/TextBoxPage.xaml.cs +++ b/samples/ControlCatalog/Pages/TextBoxPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class TextBoxPage : UserControl + public partial class TextBoxPage : ContentPage { public TextBoxPage() { diff --git a/samples/ControlCatalog/Pages/ThemePage.axaml b/samples/ControlCatalog/Pages/ThemePage.axaml index 7eb95471a0..ccc5769fe7 100644 --- a/samples/ControlCatalog/Pages/ThemePage.axaml +++ b/samples/ControlCatalog/Pages/ThemePage.axaml @@ -1,13 +1,14 @@ - - + @@ -52,7 +53,7 @@ - + - + diff --git a/samples/ControlCatalog/Pages/ThemePage.axaml.cs b/samples/ControlCatalog/Pages/ThemePage.axaml.cs index d355b399a4..4f45e93ed0 100644 --- a/samples/ControlCatalog/Pages/ThemePage.axaml.cs +++ b/samples/ControlCatalog/Pages/ThemePage.axaml.cs @@ -4,7 +4,7 @@ using Avalonia.Styling; namespace ControlCatalog.Pages { - public partial class ThemePage : UserControl + public partial class ThemePage : ContentPage { public static ThemeVariant Pink { get; } = new("Pink", ThemeVariant.Light); diff --git a/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml b/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml index 6afe6dd135..126cc7e7d2 100644 --- a/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml +++ b/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml @@ -1,5 +1,6 @@ - @@ -17,7 +18,7 @@ + Text="<ToggleSwitch>headered</ToggleSwitch>"/> @@ -26,14 +27,14 @@ + OnContent="On" + OffContent="Off" + Margin="10"/> - + @@ -55,7 +56,7 @@ ContentOff="Off" />" - + - - + + diff --git a/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml.cs b/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml.cs index 77d77daeed..a60eb295b0 100644 --- a/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ToggleSwitchPage.xaml.cs @@ -2,7 +2,7 @@ namespace ControlCatalog.Pages { - public partial class ToggleSwitchPage : UserControl + public partial class ToggleSwitchPage : ContentPage { public ToggleSwitchPage() { diff --git a/samples/ControlCatalog/Pages/ToolTipPage.xaml b/samples/ControlCatalog/Pages/ToolTipPage.xaml index 8b76cccbc9..cc3a50b8e9 100644 --- a/samples/ControlCatalog/Pages/ToolTipPage.xaml +++ b/samples/ControlCatalog/Pages/ToolTipPage.xaml @@ -1,5 +1,6 @@ - @@ -10,7 +11,7 @@ HorizontalAlignment="Center"> - + diff --git a/samples/ControlCatalog/Pages/ToolTipPage.xaml.cs b/samples/ControlCatalog/Pages/ToolTipPage.xaml.cs index cd0b5c72a8..e436407dc5 100644 --- a/samples/ControlCatalog/Pages/ToolTipPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ToolTipPage.xaml.cs @@ -6,7 +6,7 @@ using Avalonia.Interactivity; namespace ControlCatalog.Pages { - public partial class ToolTipPage : UserControl + public partial class ToolTipPage : ContentPage { public ToolTipPage() { diff --git a/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml b/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml index 03ef86fb61..5435ed278d 100644 --- a/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml +++ b/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml @@ -1,19 +1,20 @@ - - + - + - + - + - + 8 - + @@ -81,4 +82,4 @@ - + diff --git a/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml.cs b/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml.cs index 863ddae6e0..818ab6219d 100644 --- a/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml.cs +++ b/samples/ControlCatalog/Pages/TransitioningContentControlPage.axaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class TransitioningContentControlPage : UserControl + public partial class TransitioningContentControlPage : ContentPage { public TransitioningContentControlPage() { diff --git a/samples/ControlCatalog/Pages/TreeViewPage.xaml b/samples/ControlCatalog/Pages/TreeViewPage.xaml index 2e3fca58cb..88dc65b5f2 100644 --- a/samples/ControlCatalog/Pages/TreeViewPage.xaml +++ b/samples/ControlCatalog/Pages/TreeViewPage.xaml @@ -1,6 +1,7 @@ - @@ -32,4 +33,4 @@ - + diff --git a/samples/ControlCatalog/Pages/TreeViewPage.xaml.cs b/samples/ControlCatalog/Pages/TreeViewPage.xaml.cs index c43c2eb49e..d03590febd 100644 --- a/samples/ControlCatalog/Pages/TreeViewPage.xaml.cs +++ b/samples/ControlCatalog/Pages/TreeViewPage.xaml.cs @@ -3,7 +3,7 @@ using ControlCatalog.ViewModels; namespace ControlCatalog.Pages { - public partial class TreeViewPage : UserControl + public partial class TreeViewPage : ContentPage { public TreeViewPage() { diff --git a/samples/ControlCatalog/Pages/ViewboxPage.xaml b/samples/ControlCatalog/Pages/ViewboxPage.xaml index e66655253c..3848e405db 100644 --- a/samples/ControlCatalog/Pages/ViewboxPage.xaml +++ b/samples/ControlCatalog/Pages/ViewboxPage.xaml @@ -1,6 +1,7 @@ - @@ -50,4 +51,4 @@ - + diff --git a/samples/ControlCatalog/Pages/ViewboxPage.xaml.cs b/samples/ControlCatalog/Pages/ViewboxPage.xaml.cs index c140cb9857..f7b1ea3f75 100644 --- a/samples/ControlCatalog/Pages/ViewboxPage.xaml.cs +++ b/samples/ControlCatalog/Pages/ViewboxPage.xaml.cs @@ -2,7 +2,7 @@ using Avalonia.Controls; namespace ControlCatalog.Pages { - public partial class ViewboxPage : UserControl + public partial class ViewboxPage : ContentPage { public ViewboxPage() { diff --git a/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml b/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml index df84c0bd6b..0017ee09b5 100644 --- a/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml +++ b/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml @@ -1,9 +1,10 @@ - @@ -50,4 +51,4 @@ - + diff --git a/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml.cs b/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml.cs index d62c7ec10f..2ee8677eba 100644 --- a/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml.cs +++ b/samples/ControlCatalog/Pages/WindowCustomizationsPage.xaml.cs @@ -2,7 +2,7 @@ namespace ControlCatalog.Pages { - public partial class WindowCustomizationsPage : UserControl + public partial class WindowCustomizationsPage : ContentPage { public WindowCustomizationsPage() { diff --git a/samples/ControlCatalog/ScrollPage.xaml b/samples/ControlCatalog/ScrollPage.xaml new file mode 100644 index 0000000000..6d5ecb815e --- /dev/null +++ b/samples/ControlCatalog/ScrollPage.xaml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + diff --git a/samples/ControlCatalog/ViewModels/MainWindowViewModel.cs b/samples/ControlCatalog/ViewModels/MainWindowViewModel.cs index ce9209f61a..0d877b253f 100644 --- a/samples/ControlCatalog/ViewModels/MainWindowViewModel.cs +++ b/samples/ControlCatalog/ViewModels/MainWindowViewModel.cs @@ -8,7 +8,7 @@ using MiniMvvm; namespace ControlCatalog.ViewModels { - class MainWindowViewModel : ViewModelBase + partial class MainWindowViewModel : ViewModelBase { private WindowState _windowState; private WindowState[] _windowStates = Array.Empty(); @@ -20,6 +20,7 @@ namespace ControlCatalog.ViewModels private bool _canResize; private bool _canMinimize; private bool _canMaximize; + private int _selectedDecorationIndex; public MainWindowViewModel() { @@ -51,6 +52,8 @@ namespace ControlCatalog.ViewModels CanResize = true; CanMinimize = true; CanMaximize = true; + + Filter(); } public bool ExtendClientAreaEnabled @@ -113,6 +116,12 @@ namespace ControlCatalog.ViewModels set { RaiseAndSetIfChanged(ref _canMaximize, value); } } + public int SelectedDecorationIndex + { + get { return _selectedDecorationIndex; } + set { RaiseAndSetIfChanged(ref _selectedDecorationIndex, value); } + } + public MiniCommand AboutCommand { get; } diff --git a/samples/ControlCatalog/ViewModels/MainWindowViewModel_PageList.cs b/samples/ControlCatalog/ViewModels/MainWindowViewModel_PageList.cs new file mode 100644 index 0000000000..4c85f64765 --- /dev/null +++ b/samples/ControlCatalog/ViewModels/MainWindowViewModel_PageList.cs @@ -0,0 +1,196 @@ +using Avalonia.Controls; +using Avalonia.Controls.ApplicationLifetimes; +using Avalonia.Dialogs; +using System; +using System.ComponentModel.DataAnnotations; +using Avalonia; +using MiniMvvm; +using Avalonia.Collections; +using ControlCatalog.Pages; +using System.Threading.Tasks; +using System.Collections.Generic; +using System.Linq; + +namespace ControlCatalog.ViewModels +{ + partial class MainWindowViewModel + { + private int _selectedPageIndex; + private bool _isDrawerOpened = true; + private bool _ignoreListChange = false; + private string? _query = ""; + private PageItem? _currentItem; + private SplitViewDisplayMode _displayMode; + + private List _items = new() + { + new PageItem("Composition", () => new CompositionPage(), Icons.Layers), + new PageItem("Accelerator", () => new AcceleratorPage(), Icons.Keyboard), + new PageItem("Acrylic", () => new AcrylicPage(), Icons.Blur), + new PageItem("AdornerLayer", () => new AdornerLayerPage(), Icons.Sparkle), + new PageItem("AutoCompleteBox",() => new AutoCompleteBoxPage(), Icons.TextInput), + new PageItem("Border",() => new BorderPage(), Icons.Border), + new PageItem("BitmapCache",() => new BitmapCachePage(), Icons.Lightning), + new PageItem("Buttons",() => new ButtonsPage(), Icons.CursorClick), + new PageItem("ButtonSpinner",() => new ButtonSpinnerPage(), Icons.Spinner), + new PageItem("Calendar",() => new CalendarPage(), Icons.Calendar), + new PageItem("Canvas",() => new CanvasPage(), Icons.Canvas), + new PageItem("CommandBar",() => new CommandBarPage(), Icons.Terminal), + new PageItem("Carousel",() => new Pages.CarouselPage(), Icons.Slides), + new PageItem("CarouselPage",() => new CarouselDemoPage(), Icons.Slides), + new PageItem("CheckBox",() => new CheckBoxPage(), Icons.Checkbox), + new PageItem("Clipboard",() => new ClipboardPage(), Icons.Clipboard), + new PageItem("ColorPicker",() => new ColorPickerPage(), Icons.Palette), + new PageItem("ComboBox",() => new ComboBoxPage(), Icons.Dropdown), + new PageItem("Container Queries",() => new ContainerQueryPage(), Icons.Container), + new PageItem("ContentPage",() => new ContentDemoPage(), Icons.Document), + new PageItem("ContextFlyout",() => new ContextFlyoutPage(), Icons.Menu), + new PageItem("ContextMenu",() => new ContextMenuPage(), Icons.Menu), + new PageItem("Cursor",() => new CursorPage(), Icons.Cursor), + new PageItem("Custom Drawing",() => new CustomDrawing(), Icons.Brush), + new PageItem("DataGrid",() => new DataGridPage(), Icons.Grid), + new PageItem("Data Validation",() => new DataValidationPage(), Icons.Shield), + new PageItem("Date/Time Picker",() => new DateTimePickerPage(), Icons.Clock), + new PageItem("CalendarDatePicker",() => new CalendarDatePickerPage(), Icons.Calendar), + new PageItem("Dialogs",() => new DialogsPage(), Icons.Dialog), + new PageItem("Drag+Drop",() => new DragAndDropPage(), Icons.DragDrop), + new PageItem("DrawerPage",() => new DrawerDemoPage(), Icons.Drawer), + new PageItem("Expander",() => new ExpanderPage(), Icons.Expand), + new PageItem("Flyouts",() => new FlyoutsPage(), Icons.Flyout), + new PageItem("Focus",() => new FocusPage(), Icons.Target), + new PageItem("Gestures",() => new GesturePage(), Icons.Gesture), + new PageItem("Image",() => new ImagePage(), Icons.Image), + new PageItem("Label",() => new LabelsPage(), Icons.Tag), + new PageItem("LayoutTransformControl",() => new LayoutTransformControlPage(), Icons.Transform), + new PageItem("ListBox",() => new ListBoxPage(), Icons.List), + new PageItem("Menu",() => new MenuPage(), Icons.Menu), + new PageItem("NavigationPage",() => new NavigationDemoPage(), Icons.Navigation), + new PageItem("Notifications",() => new NotificationsPage(), Icons.Bell), + new PageItem("NumericUpDown",() => new NumericUpDownPage(), Icons.Number), + new PageItem("OpenGL",() => new OpenGlPage(), Icons.Cube3D), + new PageItem("OpenGL Lease",() => new OpenGlLeasePage(), Icons.Cube3D), + new PageItem("PipsPager",() => new PipsPagerPage(), Icons.HorizontalDots), + new PageItem("Platform Information",() => new PlatformInfoPage(), Icons.Info), + new PageItem("Pointers",() => new PointersPage(), Icons.Cursor), + new PageItem("ProgressBar",() => new ProgressBarPage(), Icons.Progress), + new PageItem("RadioButton",() => new RadioButtonPage(), Icons.Radio), + new PageItem("RefreshContainer",() => new RefreshContainerPage(), Icons.Refresh), + new PageItem("RelativePanel",() => new RelativePanelPage(), Icons.Layout), + new PageItem("ScrollViewer",() => new ScrollViewerPage(), Icons.Scroll), + new PageItem("Slider",() => new SliderPage(), Icons.Tune), + new PageItem("SplitView",() => new SplitViewPage(), Icons.Split), + new PageItem("TabbedPage",() => new TabbedDemoPage(), Icons.Tab), + new PageItem("TabControl",() => new TabControlPage(), Icons.Tab), + new PageItem("TabStrip",() => new TabStripPage(), Icons.Tab), + new PageItem("TextBox",() => new TextBoxPage(), Icons.TextInput), + new PageItem("TextBlock",() => new TextBlockPage(), Icons.TextInput), + new PageItem("Theme Variants",() => new ThemePage(), Icons.Theme), + new PageItem("ToggleSwitch",() => new ToggleSwitchPage(), Icons.Toggle), + new PageItem("ToolTip",() => new ToolTipPage(), Icons.Tooltip), + new PageItem("TransitioningContentControl",() => new TransitioningContentControlPage(), Icons.Transition), + new PageItem("TreeView",() => new TreeViewPage(), Icons.Tree), + new PageItem("Viewbox",() => new ViewboxPage(), Icons.Viewbox), + new PageItem("Native Embed",() => new NativeEmbedPage(), Icons.Puzzle), + new PageItem("Window Customizations",() => new WindowCustomizationsPage(), Icons.Window), + new PageItem("HeaderedContentControl",() => new HeaderedContentPage(), Icons.Header), + new PageItem("Screens",() => new ScreenPage(), Icons.Monitor), + }; + + public AvaloniaList Pages { get; } = new AvaloniaList(); + + public void Filter(string? query = "") + { + try + { + _ignoreListChange = true; + Pages.Clear(); + + if (!string.IsNullOrWhiteSpace(query)) + Pages.AddRange(_items.Where(x => x.Header.Contains(query))); + else + Pages.AddRange(_items); + } + finally + { + _ignoreListChange = false; + if (_currentItem != null) + { + var newIndex = Pages.IndexOf(_currentItem); + if (newIndex != -1) + { + SelectedPageIndex = newIndex; + } + } + } + } + + public INavigation? Navigator { get; internal set; } + + public int SelectedPageIndex + { + get { return _selectedPageIndex; } + set + { + RaiseAndSetIfChanged(ref _selectedPageIndex, value); + + if (!_ignoreListChange) + { + NavigateTo(_selectedPageIndex); + + if (DisplayMode == SplitViewDisplayMode.CompactOverlay || DisplayMode == SplitViewDisplayMode.Overlay) + IsDrawerOpened = false; + } + } + } + + public bool IsDrawerOpened + { + get { return _isDrawerOpened; } + set { RaiseAndSetIfChanged(ref _isDrawerOpened, value); } + } + + public SplitViewDisplayMode DisplayMode + { + get { return _displayMode; } + set { RaiseAndSetIfChanged(ref _displayMode, value); } + } + + public string? Query + { + get { return _query; } + set + { + RaiseAndSetIfChanged(ref _query, value); + + Filter(value); + } + } + + private async void NavigateTo(int pageIndex) + { + if (pageIndex < 0 || pageIndex >= Pages.Count || Navigator is null) + return; + + var item = Pages[pageIndex]; + + if (item != null) + { + var view = item.Factory(); + if (view is Page page && view.GetType() != Navigator.NavigationStack.LastOrDefault()?.GetType()) + { + _currentItem = item; + await Navigator.ReplaceAsync(page); + } + } + } + } + + class PageItem(string header, Func factory, string? iconData = null) + { + public string Header { get; } = header; + public Func Factory { get; } = factory; + public string? IconData { get; } = iconData; + + public bool IsVisible { get; set; } = true; + } +} diff --git a/samples/SampleControls/HamburgerMenu/HamburgerMenu.cs b/samples/SampleControls/HamburgerMenu/HamburgerMenu.cs index 57f8a138af..0e45b28a78 100644 --- a/samples/SampleControls/HamburgerMenu/HamburgerMenu.cs +++ b/samples/SampleControls/HamburgerMenu/HamburgerMenu.cs @@ -1,4 +1,6 @@ -using Avalonia; +using System; +using System.Linq; +using Avalonia; using Avalonia.Controls; using Avalonia.Controls.Primitives; using Avalonia.Media; @@ -8,6 +10,8 @@ namespace ControlSamples public class HamburgerMenu : TabControl { private SplitView? _splitView; + private TextBox? _searchBox; + private bool _initialized; public static readonly StyledProperty PaneBackgroundProperty = SplitView.PaneBackgroundProperty.AddOwner(); @@ -41,6 +45,68 @@ namespace ControlSamples base.OnApplyTemplate(e); _splitView = e.NameScope.Find("PART_NavigationPane"); + _searchBox = e.NameScope.Find("PART_SearchBox"); + + if (_searchBox is not null) + { + _searchBox.TextChanged += OnSearchTextChanged; + } + } + + protected override void OnLoaded(Avalonia.Interactivity.RoutedEventArgs e) + { + base.OnLoaded(e); + + if (!_initialized) + { + _initialized = true; + SortItems(); + } + } + + private void SortItems() + { + var items = Items.OfType().ToList(); + var sorted = items.OrderBy(t => t.Header?.ToString() ?? "", StringComparer.OrdinalIgnoreCase).ToList(); + + // Only reorder if needed + bool needsSort = false; + for (int i = 0; i < items.Count; i++) + { + if (!ReferenceEquals(items[i], sorted[i])) + { + needsSort = true; + break; + } + } + + if (needsSort) + { + Items.Clear(); + foreach (var item in sorted) + { + Items.Add(item); + } + } + } + + private void OnSearchTextChanged(object? sender, TextChangedEventArgs e) + { + var searchText = _searchBox?.Text; + var hasFilter = !string.IsNullOrWhiteSpace(searchText); + + foreach (var item in Items.OfType()) + { + if (hasFilter) + { + var header = item.Header?.ToString() ?? ""; + item.IsVisible = header.Contains(searchText!, StringComparison.OrdinalIgnoreCase); + } + else + { + item.IsVisible = true; + } + } } protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs change) diff --git a/samples/SampleControls/HamburgerMenu/HamburgerMenu.xaml b/samples/SampleControls/HamburgerMenu/HamburgerMenu.xaml index 49972bdc64..b4d9900617 100644 --- a/samples/SampleControls/HamburgerMenu/HamburgerMenu.xaml +++ b/samples/SampleControls/HamburgerMenu/HamburgerMenu.xaml @@ -33,8 +33,8 @@ #FFFFFFFF #FFF2F2F2 - - + + 40 220 36 @@ -134,14 +134,14 @@ - + - - + + @@ -195,8 +195,8 @@ - - + + @@ -237,7 +237,7 @@ Padding="{TemplateBinding Padding}" MinHeight="{TemplateBinding MinHeight}"> - +