avalonia — releases
Latest 20 GitHub releases for AvaloniaUI/Avalonia. Auto-mirrored by playbooks/local/autodocgen.yml.
[!info] Pinned in BreeZ-CF:
11.x· upstream latest:12.0.2.
12.0.2 · 12.0.2
2026-04-28 · by @MrJul
What's Changed
Enhancements
- Core – Add
Window.WindowDecorationsThemeproperty by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21061 - Core – Clarify that
ElementRoleis dependent onExtendClientAreaToDecorationsHintby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21243 - Core – Implement
GetTemplateDescendantsby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21245 - Core – Update SkiaSharp to 3.119.4 Preview 1 @4Darmygeometry in https://github.com/AvaloniaUI/Avalonia/pull/21263
- Headless – Throw
ObjectDisposedExceptionwhenPlatformImplis null by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/21276
Fixes
- Core – Fix
OneWaybinding fails to update target after local change by @martimclaudino in https://github.com/AvaloniaUI/Avalonia/pull/20964 - Core – Fix safe area calc in drawer page by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/21050
- Core – Reset expected commit callback timing after waiting for app exiting idle by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21157
- Core – Fix
Button.IsPressednot becoming false when aButtonwithout keyboard focus is disabled by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/21168 - Core – Prefer window content over underlay in chrome hit testing by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21177
- Core – Add back
Design.SetPreviewWith(AvaloniaObject, Control)overload by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21184 - Core – Do not update composition target when rendering is stopped by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21192
- Core – Fix safe area calcs for navigation page by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/21221
- Core – Fix
TabControlcrash when rapidly switching tabs during transitions by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21227 - Core – Change
CommandBaricon foreground inheritance by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21251 - Core – Fix
FocusManager.SetFocusScopenot doing anything by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21261 - Core – Suppress
ExecutionContextflow for render scheduling by @Shirasagi0012 in https://github.com/AvaloniaUI/Avalonia/pull/21273 - macOS – Fix Metal renderer memory leak by @nvborisenko in https://github.com/AvaloniaUI/Avalonia/pull/21099
- Windows – Fix back requested by @mikegoatly in https://github.com/AvaloniaUI/Avalonia/pull/21207
- Windows – Fix
BorderOnlymaximized position on secondary screens in more cases by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21229 - Android – Fix crash on surface destroyed by @kerams in https://github.com/AvaloniaUI/Avalonia/pull/21176
- Android – Fix
SelectedTextboundary check and backward selection crash by @luthfiampas in https://github.com/AvaloniaUI/Avalonia/pull/21182 - Android – Fix
OnBackPressedbeing prevented for Android API 33 and above by @Mliybs in https://github.com/AvaloniaUI/Avalonia/pull/21239 - Android – Make
ToplevelImpl._viewnullable by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/21270 - Android/Browser/iOS – Standardize the behavior of
CreateFile/CreateFolderacross different OS by @Frederisk in https://github.com/AvaloniaUI/Avalonia/pull/20850 - Headless – Fix headless cleanup race: dispose before signaling TCS by @Kryptos-FR in https://github.com/AvaloniaUI/Avalonia/pull/21223
- Themes – Add
HeaderTemplatetoDrawerPageheader by @zdpcdt in https://github.com/AvaloniaUI/Avalonia/pull/21275
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/12.0.1...12.0.2
12.0.1 · 12.0.1
2026-04-13 · by @MrJul
What's Changed
Security
- Linux – Bump Tmds.DBus.Protocol to 0.92.0 by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/21122
Enhancements
- macOS – Announce changes to live regions on macOS by @kirb in https://github.com/AvaloniaUI/Avalonia/pull/21045
- Core – Implement
DataFormat.CreateInProcessFormat<T>by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21076
Fixes
- Core – Ensure glyph clusters are slice relative by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/21089
- Core – Fix date picker spacer location by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/21093
- Core – Fix
DataTransferItemreturning wrong data for mismatched format by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21114 - Core – Fix
DatePickerPresenterfocusing wrong selector for day-first locales by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21116 - Core – Fix
AutoCompleteBoxout of sync with bound Text by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/21121 - Core – Fix subtree input hit test coordinates by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21125
- Core – Prevent toggle controls from changing state when commands cannot execute by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21126
- Core – Fix
InvalidCastExceptioninPageNavigationHostby @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/21144 - macOS – Fix file pickers native crash by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21104
- macOS – Fix
StorageProvidernull pointer bugs by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21115 - Windows – fix
None/BorderOnlymaximized position on secondary screens by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21136 - Linux – Add
IDispatcherImplWithExplicitBackgroundProcessingtoEpollDispatcherImplby @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21152
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/12.0.0...12.0.1
11.3.14 · 11.3.14
2026-04-13 · by @MrJul
What's Changed
Security
- Linux – Bump Tmds.DBus.Protocol to 0.21.3 by @kekekeks
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.13...11.3.14
12.0.0 · 12.0.0
2026-04-07 · by @MrJul
General
Read our release blog post for more information about Avalonia 12!
Useful links:
- Website
- Documentation
- v12 breaking changes
What's Changed
Changes since 12.0.0-rc2
- CompositionAnimation fixes by @zxbmmmmmmmmm in https://github.com/AvaloniaUI/Avalonia/pull/20936
- AvnAccessibilityElement fixes by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/21062
- Measure/Arrange TextPresenter with WidthIncludingTrailingWhitespace by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/21067
- Fix/linux atspi backend by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/21072
- Post NSAccessibility notifications for property changes on macOS by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/21074
- Fix access keys not working when KeySymbol is null by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21077
Full Changelog since 12.0.0-rc2: https://github.com/AvaloniaUI/Avalonia/compare/12.0.0-rc2...12.0.0
Changes since 11.3.13
- Design improvements by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/18300
- Add ability to cancel focus change by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/18373
- [X11] Added INCR support by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18428
- Don't round size in TextBlock when UseLayoutRounding is false by @appel1 in https://github.com/AvaloniaUI/Avalonia/pull/18456
- Fix MeasureCore when there's a size constraint and there's a negative… by @appel1 in https://github.com/AvaloniaUI/Avalonia/pull/18462
- Focus Traversal Api by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/18647
- Make sure that tests inherit from ScopedTestBase by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18690
- Update bug_report.yml by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/18711
- Fix typo in PseudoClassesExtensions class name by @zdpcdt in https://github.com/AvaloniaUI/Avalonia/pull/18717
- feat: add TreeViewItemIndentConverter for dynamic margin calculation by @zdpcdt in https://github.com/AvaloniaUI/Avalonia/pull/18718
- Limit use of deprecated Android display API by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/18722
- Move android app initialization to custom application class by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/18756
- Add IAddChild to StyleBase to fix IDE errors when adding Style as children to ContainerQuery by @wieslawsoltes in https://github.com/AvaloniaUI/Avalonia/pull/18800
- Added missing class event handler methods by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/18837
- fix WrapPanel comments by @ingts in https://github.com/AvaloniaUI/Avalonia/pull/18862
- Fixed core
GotFocusandLostFocushandling being skippable by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/18868 - Add IActivityApplicationLifetime for android by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/18893
- Fixes accumulated glitches in GpuInterop demo by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18900
- Add
DrawingImage.Viewboxby @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/18913 - Bump ImageSharp to 2.1.10 by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/18924
- Update azure-pipelines.yml (#18876) by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/18940
- fix: Prevent DXGI from intercepting Alt+Enter and PrintScreen by @M0n7y5 in https://github.com/AvaloniaUI/Avalonia/pull/18970
- [Android] Do not underutilize CPU/GPU when can't keep up with refresh rate by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18973
- [ANDROID] Skip glWaitClient/glWaitGL/glWaitNative by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18974
- Implement IDispatcherImpl for Android based on Looper and MessageQueue by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18975
- [12.0] Target SkiaSharp 3.0. Drop 2.88 support by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/18981
- Remove old linux hack by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18989
- Switch to using animation request for scroll inertia dispatch by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/18997
- Cleanup InvalidationAwareSurfaceView related code by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19045
- Fix WindowCloseReason Passed During System Shutdown by @lindexi in https://github.com/AvaloniaUI/Avalonia/pull/19055
- feat: expose Popup property in PopupFlyoutBase for external access. by @zdpcdt in https://github.com/AvaloniaUI/Avalonia/pull/19106
- Make
CharacterReaderinternal. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/19123 - Fix typo:
ExternalGLibMainLoopExceptionLoggerby @Dragorn421 in https://github.com/AvaloniaUI/Avalonia/pull/19128 - Developer Documentation by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/19131
- Remove
PropertyPath. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/19133 - move to SDK 8.0.411 in global.json by @SimonCropp in https://github.com/AvaloniaUI/Avalonia/pull/19136
- remove some redundant returns by @SimonCropp in https://github.com/AvaloniaUI/Avalonia/pull/19137
- remove some duplicate dict lookups by @SimonCropp in https://github.com/AvaloniaUI/Avalonia/pull/19138
- remove Settings.StyleCop from sln by @SimonCropp in https://github.com/AvaloniaUI/Avalonia/pull/19140
- remove some un-used code by @SimonCropp in https://github.com/AvaloniaUI/Avalonia/pull/19146
- Feat/19059 add automation for validation error by @longbuibao in https://github.com/AvaloniaUI/Avalonia/pull/19161
- Capture ExecutionContext for Dispatcher.InvokeAsync by @walterlv in https://github.com/AvaloniaUI/Avalonia/pull/19163
- Rename "Documentation" subfolder into "docs" by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19189
- Improved NuGet package creation docs. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/19196
- Unify selection event handling for all
SelectingItemsControltypes plusTreeViewby @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19203 - Fix: Unable to input numbers, symbols, and English letters in Avalonia on X11 with fcitx5 ForwardKey messages by @SeWZC in https://github.com/AvaloniaUI/Avalonia/pull/19207
- Use hard links for build by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19209
- Migrate AvaloniaNameSourceGenerator to IIncrementalGenerator by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19216
- Fix typo in XML documentation for ExtendClientAreaChromeHints enum by @Versette in https://github.com/AvaloniaUI/Avalonia/pull/19245
- Typos fix by @oktrue in https://github.com/AvaloniaUI/Avalonia/pull/19257
- Add GroupBox by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19366
- Implemented Dispatcher.Yield / Dispatcher.Resume by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/19370
- Commit missing resource values by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19371
- Use VisualBrush for GroupBox Border by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19372
- [v12] Enable Mac Catalyst in Avalonia.iOS by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19415
- Update release instructions by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19417
- Text API sample app by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19455
- Increase RemoteProtocolTests timeout by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19461
- Fix comment for #19163 by @walterlv in https://github.com/AvaloniaUI/Avalonia/pull/19469
- Removed locks from Ref
by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/19476 - Improved API diff by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19490
- Font features in test app by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19493
- Avoid processing frameworks in parallel in ValidateApiDiff by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19511
- Fix BitmapInterpolationMode.HighQuality when downscaling by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19513
- Update Nuke to v9 and fix ValidateApiDiff by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19529
- Move
IBindingtoBindingBaseand tidy up some binding APIs by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/19589 - Ignore empty preeditText when no composition was active before (#19595) by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19621
- Fix: ChoreographerTimer should check for Android version correctly. by @IsaMorphic in https://github.com/AvaloniaUI/Avalonia/pull/19643
- DOCS: Add final newline to markdown files by @VbhvGupta in https://github.com/AvaloniaUI/Avalonia/pull/19645
- Limit InlineUIContainer to available width (#19651) by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19675
- Move ControlCatalog.MacCatalyst/tvOS to their own folders by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19709
- Enable compiled bindings by default in Avalonia.props by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19712
- Run Avalonia.LeakTests on CI by @pos777 in https://github.com/AvaloniaUI/Avalonia/pull/19720
- Remove Tizen by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19722
- Implement focus change only on release when using touch or pen input by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19753
- Improve FontCollection customization by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19756
- Universal GlyphTypeface implementation by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19852
- Update to .NET 10 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19869
- Improve
AvaloniaNameIncrementalGeneratorerror handling by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19934 - Changed FuncMultiValueConverter to take IList instead of IEnumerable by @zacfromaustinpowder in https://github.com/AvaloniaUI/Avalonia/pull/19936
- Modernise ControlCatalog XAML by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19971
- [Text] Properly handle DrawableRun.Baseline (#19896) by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19983
- [DesignerHost/HTML]: improve high-dpi screen behavior by @ijklam in https://github.com/AvaloniaUI/Avalonia/pull/19996
- feat: Handle Datavalidations on base class "Control" by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20067
- Fix TryCreateGlyphTypeface return on macOS with SkiaSharp 2.88 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20084
- Android - Directly use the surface window handle cached in InvalidationAwareSurfaceView instead of requesting new handles by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20093
- Rewrite leak tests without dotMemory Unit by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20095
- Remove Avalonia.Browser.Blazor by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20105
- Introduce TextOptions by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/20107
- Remove netstandard2.0 from almost all projects by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20111
- Remove Direct2D1 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20132
- Use Silk.NET in GpuInterop sample by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20133
- Update dependencies by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20139
- [Feature] Move LetterSpacing to TextElement as inherited attached property by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20141
- Add screen orientation support for Linux DRM by @ThadHouse in https://github.com/AvaloniaUI/Avalonia/pull/20154
- Improve NuGet.Config by clearing all package source options to make it independent of global NuGet.Config by @Athari in https://github.com/AvaloniaUI/Avalonia/pull/20169
- Remove obsolete projects from solution filter file by @quanzhuo in https://github.com/AvaloniaUI/Avalonia/pull/20178
- Fix several issues with ExtendClientAreaToDecorationsHint on Windows by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20217
- Use standalone Bun to build JS projects instead of NodeJS by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20243
- Fix dnx random failures by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20284
- Restore integration tests by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20296
- Add PlaceholderForeground property to TextBox, AutoCompleteBox, CalendarDatePicker, NumericUpDown by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20303
- Fix common warnings by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20311
- Split analyzers and code fixes into separate projects by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20312
- Update .NET SDK to 10.0.101 by @Youssef1313 in https://github.com/AvaloniaUI/Avalonia/pull/20322
- Update to xunit.v3 by @Youssef1313 in https://github.com/AvaloniaUI/Avalonia/pull/20331
- Remove legacy Diagnostics project by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20332
- Delete Direct2D1 test files by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20333
- Update Nuke to v10 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20345
- Enable nullability in Base/Markup/Markup.Xaml unit tests by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20346
- Fix NRE bug in TextShaperImpl.ShapeText on netstandard2.0 by @adams85 in https://github.com/AvaloniaUI/Avalonia/pull/20369
- Update NUnit to v4 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20372
- Enable nullability in Controls.UnitTests by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20373
- Enable nullability in various test projects by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20374
- Enable nullability in Avalonia.Native by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20378
- Enable nullability in all samples by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20379
- Fix ambiguous and dead
inheritdoclinks by @ScrubN in https://github.com/AvaloniaUI/Avalonia/pull/20397 - Fix Android obsolete warnings by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20412
- Update CODE_OF_CONDUCT.md by @MikeCodesDotNET in https://github.com/AvaloniaUI/Avalonia/pull/20417
- Handle added packages in API diff by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20428
- Fix some XML doc warnings by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20429
- Fix ncrunch configuration. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20437
- Move compiled bindings to Avalonia.Base. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20439
- Add CompiledBinding.Create factory methods from LINQ expressions by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20443
- Fix android wrong inset safe area padding value after resume by @Shirasagi0012 in https://github.com/AvaloniaUI/Avalonia/pull/20448
- Implement scene delegate for iOS by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20454
- Remove BinaryFormatter by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20455
- Fix for HarfBuzz was missing by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20456
- Fix xUnit warnings in AnimationIterationTests by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20459
- Fix Avalonia.Desktop.slnf compiling by @gehongyan in https://github.com/AvaloniaUI/Avalonia/pull/20461
- Fix NuGet warnings by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20466
- Remove EnableUnsafeBinaryFormatterSerialization property by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20467
- Update headless xUnit support to v3 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20481
- Composition system SP1 by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20497
- Enable warnings as errors by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20504
- Fix typo in build.md by @mrlacey in https://github.com/AvaloniaUI/Avalonia/pull/20513
- Use net8.0 TFM for shipped build props by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20518
- Remove IInternalScroller and move IScrollable to Avalonia.Base by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20519
- Remove IDataObject to IDataTransfer wrappers and related methods by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20521
- Simplify text formatting constructors by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20527
- Merge IGeometryContext and IGeometryContext2 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20528
- Make Screen abstract by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20529
- Fix Android surface recreation by @kerams in https://github.com/AvaloniaUI/Avalonia/pull/20538
- Fix TabItem's Content inheriting TabControl's DataContext instead of TabItem's by @ptasev in https://github.com/AvaloniaUI/Avalonia/pull/20541
- Fixes several simple TODO12 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20544
- Add AlphaFormat to ILockedFramebuffer by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20556
- Merge multiple interfaces related to rendering by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20557
- Headless: use HarfBuzz by default by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20561
- Merge IResourceHost2 into IResourceHost by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20576
- Remove NativeMenuItemToggleType and NativeMenuBar.EnableMenuItemClickForwarding by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20577
- Move ConstructorArgumentAttribute and remove BindingMode from ReflectionBinding constructor by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20589
- Fix warnings and index bugs in ControlCatalog sample by @ThadHouse in https://github.com/AvaloniaUI/Avalonia/pull/20590
- Add IsAlive property to IRef
by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20593 - Make NUnit tests visible in Rider again by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20594
- Remove AutoCompleteBox.BindingEvaluator by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20596
- Make IPopupHost a private API by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20597
- Headless NUnit: Handle async SetUp/TearDown by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20612
- Remove obsolete members from Avalonia.Base by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20613
- Remove obsolete members from Avalonia.Controls by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20617
- Hide binding plugins and disable Data Annotations validation by default by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20623
- Remove obsolete members from various assemblies by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20628
- Move GetWindowsZOrder to IWindowingPlatform by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20633
- Fix Border clip regression by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20648
- Use KeySymbol for AccessKey by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20662
- Fixed wrong Mac accessibility roles for List, ListItem, and StatusBar by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20681
- Make sure that adorners are actually correctly positioned in visual tree for TransformToVisual and friends by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20691
- Make TextBox.PlaceholderText accessible by @kirb in https://github.com/AvaloniaUI/Avalonia/pull/20714
- [macOS] Add NativeDock.Menu API for adding menu items to macOS dock icon by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20634
- [v12] Android - Remove redundant appbuilder methods in android, use AvaloniaActivity in toplevel classes by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20715
- Introduce PresentationSource, move some responsibilities from TopLevel by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20624
- Add boundary check to HarfBuzzTextShaper by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20716
- Update BclLauncher.cs to use ArgumentList property by @tompnub in https://github.com/AvaloniaUI/Avalonia/pull/19713
- Fixed incorrect opacity stack handling by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20730
- macOS: Fix file dialogs in embedded views by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20719
- Onboard onto Central Package Management by @dfederm in https://github.com/AvaloniaUI/Avalonia/pull/20704
- Add tooltips for settings in control catalog by @TeaDrivenDev in https://github.com/AvaloniaUI/Avalonia/pull/20731
- Handle GlyphTypeface creation exceptions by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20739
- Handle font cmap format 13 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20740
- More changes for non-toplevel visual tree roots. by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20732
- Remove unused internal classes, methods, and comparers by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20746
- Fix menu memory leak by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20753
- Implement AT-SPI2 Accessibility Backend by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20735
- Support ExperimentalAttribute in XAML by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20765
- Fix Toplevel not losing focus with native implementation deactivates. by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20768
- Fix for GhostItems in virtualized ItemsControls like ListBox by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20700
- Fixed creation of files/folders in a subfolder, as well as its deletion on Android by @Paulsams in https://github.com/AvaloniaUI/Avalonia/pull/20750
- Fix CalendarDatePicker becoming unusable when closed programmatically by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20756
- Make RemoteServer/RemoteWidget internal by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20767
- Use a default DesignEmHeight if the font doesn't have one by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20764
- Make a few more things internal by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20772
- iOS: fix universal link activation with scenes by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20752
- Fix TopLevelHost mirroring RTL content by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20754
- Add AppBuilder.UseTextShapingSubsystem by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20761
- Create DiagnosticTextRenderer lazily by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20766
- Fix font Weight/Stretch matching by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20773
- Fix missing root automation peer in x11/atspi by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20775
- Don't call FormattingObjectPool.VerifyAllReturned by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20774
- CompiledBinding.Create must be AOT-compatible, even by using reflection by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20776
- Don't throw on unexpected iOS input by @kerams in https://github.com/AvaloniaUI/Avalonia/pull/20728
- Introduce Dispatcher.CurrentDispatcher, Dispatcher.FromThread, AvaloniaObject.Dispatcher by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18686
- Fix NativeControlHost not accounting for visual transforms in size calculation by @mfkl in https://github.com/AvaloniaUI/Avalonia/pull/20785
- Move Gesture events to InputElement by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20789
- Themeable Client Window Decorations by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20770
- Include Avalonia.IntegrationTests.Win32 into desktop slnf by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20797
- Fix for remaining Ghost-Item in VirtualizationStackPanel by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20784
- Fix TextBox validation error persisting when reverting to same valid value by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20780
- Rename SystemDecorations to WindowDecorations since they aren't necessary "system". by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20796
- Add PopupOverlayLayer by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20751
- Explicitly truncate when opening a stream for writing by @Frederisk in https://github.com/AvaloniaUI/Avalonia/pull/20804
- Add gesture CLR events to InputElement by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20806
- Update SkiaSharp to 3.119.3-preview.1.1 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20809
- Bump Tmds.DBus.Protocol to version 0.90.3 by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20810
- [iOS] Truncate file in IOSStorageFile.OpenWrite by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20807
- Render target/surface housekeeping by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20811
- [Feature] Page-based navigation system by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20794
- X11IconLoader needs to scale the icon into our hardcoded size by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20817
- Streamline drawn decorations management to avoid call ordering problems by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20840
- [Metal] Dispose GRBackendRenderTarget and @autoreleasepool for metal objects by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20815
- [Navigation] Fire Page lifecycle events after transitions complete, not before by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20826
- Fix pixel rounding and visual transforms in NativeControlHost by @mfkl in https://github.com/AvaloniaUI/Avalonia/pull/20786
- Find perfect match before nearest in font collection by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20851
- Add automation landmarks to HamburgerMenu by @kirb in https://github.com/AvaloniaUI/Avalonia/pull/20857
- Fix
TabControlDataContextissues when switching tabs by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20856 - [Feature] Add PipsPager Control by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20660
- Update summaries for gesture events in InputElement by @luke-whos-here in https://github.com/AvaloniaUI/Avalonia/pull/20862
- Disable Animations processing when Visual's not visible redux by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20820
- Translation property for CompositionVisual by @zxbmmmmmmmmm in https://github.com/AvaloniaUI/Avalonia/pull/20836
- Add FocusChangedEventArgs for GotFocus/LotFocus by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20859
- Made GetMaxSizeFromConstraint a protected method by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20877
- Add /update-api and /api-diff commands by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20887
- Remove Uncompilable code guarded by platform defines by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20861
- Use Numerge package by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20892
- Don't tick with render loop when app is idle by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20873
- Hide TextRange. It has no public usage. by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/20893
- Make SelectionHandleType internal by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20908
- Use the correct flag to determine if extra dirty rect needs to be combined with existing one by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20896
- Open FocusManager API by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20854
- Allow
TextSearch.TextBindingon non-controls. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20884 - Defer default icon loading until Window is shown by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/20898
- Validate layoutable Thickness properties to block NaN or infinite values by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/20899
- Update .NET SDK to 10.0.201 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20912
- New HeadlessWindow.SetRenderScaling API by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20888
- Fix X11IconLoader exception for icons < 128px by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20914
- X11: Fix clipboard bitmap transferred with INCR by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20895
- Fix values of known atoms by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20894
- Add WinForms message filter for Avalonia windows by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20814
- Do not resolve markup extensions when resolving selector types by @dme-compunet in https://github.com/AvaloniaUI/Avalonia/pull/20903
- [Feature] Add gestures and WrapSelection (loops) support to Carousel by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20659
- Restructure VisualLayerManager by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20905
- Added more Carousel samples by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20932
- Add FindNextElementOptions.FocusedElement by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20930
- Fix Windows Snap in BorderOnly mode by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20937
- Make FlyoutBase.IsOpen a public StyledProperty by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/20920
- [Feature] Expand Page-type navigation: CarouselPage by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20871
- Fix TabItem.Icon type and add IconTemplate by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20939
- Allow CanResize on macOS in BorderOnly mode by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20940
- Update Placeholder properties to use TextBox as owner in NumericUpDown & ComboBox by @zdpcdt in https://github.com/AvaloniaUI/Avalonia/pull/20929
- Remove unnecessary style for fullscreen button by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20934
- Android - Query date modified for android storage folder by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20860
-
20868 - virtualizingstackpanel, when viewport shrinks and grows agai… by @gentledepp in https://github.com/AvaloniaUI/Avalonia/pull/20870
- Add IconTemplate to Page and DrawerPage by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20946
- Change visual brush for group box to grid by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20947
- Make RoutedEvent nullable in event arguments by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20953
- Fixed creating RenderTarget when using Vulkan backend by @abenedik in https://github.com/AvaloniaUI/Avalonia/pull/20952
- Remove UnstableAttribute from several RoutedEventArgs by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20955
- Make Dispatcher.Yield use the current dispatcher by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20956
- Animation PlaybackBehavior Implementation and Tests. by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20966
- Rename PipsPager button theme APIs by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20954
- Update packages by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20967
- Revert MicroCom to 0.11.0 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20975
- Use CurrentDispatcher in DispatcherTimer and AvaloniaSynchronizationContext by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20957
- Make Window.WindowState a direct property with (on some platforms) reliable values by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20973
- Add StyleKeyOverride for ContentPage by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20977
- Add Page HeaderTemplate by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20982
- Cache RenderScaling in PresentationSource by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20972
- Add StyleOverrides for other Page types by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20985
- X11: Handle ShowActivated=false by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20958
- Design properties not being applied for user controls by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20986
- Fix ComboBox not displaying Text property validation by @ptasev in https://github.com/AvaloniaUI/Avalonia/pull/20978
- Add more gesture recognizer sample pages to ControlCatalog by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20983
- QoL for ControlCatalog: add sidebar search, auto-sort, and default page selection by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20987
- Introduced "forced" CSD mode without app opting in by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20976
- Use the correct value for animations stopped during a visual tree detach by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20995
- Remove LambdaExpression.Compile from CompiledBinding.Create by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20996
- Add DrawerHeaderTemplate and DrawerFooterTemplate properties to DrawerPage by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21008
- Include VisualLayerManager itself in layer lookup. by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20999
- Fix DrawerPage double footer on compact mode for Bottom/Top placement by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21004
- Fix TabbedPage samples wrong icon by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21003
- Fix Placeholder not visible by @shine1258 in https://github.com/AvaloniaUI/Avalonia/pull/21024
- Add SECURITY.md by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/21029
- Added explicit background processing support to managed dispatcher impl by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21025
- Combine Ready/Corrupted into a single passthrough struct by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21028
- Change XInternAtoms call force-create atoms by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21034
- Rename AppBar controls by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21041
- Apply optimizations in Avalonia Android by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20968
- Fix Mouse pointer triggering focus change on pointer release. by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/21009
- Change DoDragDropAsync trigger event to PointerPressedEventArgs by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20988
- Apply optimizations in Avalonia iOS by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20969
- Expose allowed titlebar button actions from the platform implementation and respect them from drawn decorations by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21035
- Do not use visual children enumerator in TopLevelHost by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21048
- Replaced raw COM pointers with smart ones by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21001
- Update readme.md by @MikeCodesDotNET in https://github.com/AvaloniaUI/Avalonia/pull/21051
- Touch Improvements to TextBox by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20848
- Add keyboard navigation for overflow CommandBar popup by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21005
- Improve CommandBar dynamic overflow separator handling by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21039
- Fix FocusManager.FocusedElement on canceled/redirected focus by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21047
- CompositionAnimation fixes by @zxbmmmmmmmmm in https://github.com/AvaloniaUI/Avalonia/pull/20936
- AvnAccessibilityElement fixes by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/21062
- Measure/Arrange TextPresenter with WidthIncludingTrailingWhitespace by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/21067
- Fix/linux atspi backend by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/21072
- Post NSAccessibility notifications for property changes on macOS by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/21074
- Fix access keys not working when KeySymbol is null by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/21077
Full Changelog since 11.3.13: https://github.com/AvaloniaUI/Avalonia/compare/11.3.13...12.0.0
12.0.0-rc2 · 12.0.0-rc2
2026-03-31 · by @MrJul · prerelease
What's Changed
This is the raw list of changes between 12.0.0-rc1 and 12.0.0-rc2:
- Make RoutedEvent nullable in event arguments by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20953
- Fixed creating RenderTarget when using Vulkan backend by @abenedik in https://github.com/AvaloniaUI/Avalonia/pull/20952
- Remove UnstableAttribute from several RoutedEventArgs by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20955
- Make Dispatcher.Yield use the current dispatcher by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20956
- Animation PlaybackBehavior Implementation and Tests. by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20966
- Rename PipsPager button theme APIs by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20954
- Update packages by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20967
- Revert MicroCom to 0.11.0 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20975
- Use CurrentDispatcher in DispatcherTimer and AvaloniaSynchronizationContext by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20957
- Make Window.WindowState a direct property with (on some platforms) reliable values by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20973
- Add StyleKeyOverride for ContentPage by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20977
- Add Page HeaderTemplate by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20982
- Cache RenderScaling in PresentationSource by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20972
- Add StyleOverrides for other Page types by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20985
- X11: Handle ShowActivated=false by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20958
- Design properties not being applied for user controls by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20986
- Fix ComboBox not displaying Text property validation by @ptasev in https://github.com/AvaloniaUI/Avalonia/pull/20978
- Add more gesture recognizer sample pages to ControlCatalog by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20983
- QoL for ControlCatalog: add sidebar search, auto-sort, and default page selection by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20987
- Introduced "forced" CSD mode without app opting in by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20976
- Use the correct value for animations stopped during a visual tree detach by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20995
- Remove LambdaExpression.Compile from CompiledBinding.Create by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20996
- Add DrawerHeaderTemplate and DrawerFooterTemplate properties to DrawerPage by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21008
- Include VisualLayerManager itself in layer lookup. by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20999
- Fix DrawerPage double footer on compact mode for Bottom/Top placement by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21004
- Fix TabbedPage samples wrong icon by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21003
- Fix Placeholder not visible by @shine1258 in https://github.com/AvaloniaUI/Avalonia/pull/21024
- Add SECURITY.md by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/21029
- Added explicit background processing support to managed dispatcher impl by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21025
- Combine Ready/Corrupted into a single passthrough struct by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21028
- Change XInternAtoms call force-create atoms by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21034
- Rename AppBar controls by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21041
- Apply optimizations in Avalonia Android by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20968
- Fix Mouse pointer triggering focus change on pointer release. by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/21009
- Change DoDragDropAsync trigger event to PointerPressedEventArgs by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20988
- Apply optimizations in Avalonia iOS by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20969
- Expose allowed titlebar button actions from the platform implementation and respect them from drawn decorations by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21035
- Do not use visual children enumerator in TopLevelHost by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21048
- Replaced raw COM pointers with smart ones by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/21001
- Update readme.md by @MikeCodesDotNET in https://github.com/AvaloniaUI/Avalonia/pull/21051
- Touch Improvements to TextBox by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20848
- Add keyboard navigation for overflow CommandBar popup by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21005
- Improve CommandBar dynamic overflow separator handling by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/21039
- Fix FocusManager.FocusedElement on canceled/redirected focus by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/21047
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/12.0.0-rc1...12.0.0-rc2
11.3.13 · 11.3.13
2026-03-28 · by @MrJul
What's Changed
Enhancements
- Core – Make
TextBox.Watermarkaccessible by @kirb in https://github.com/AvaloniaUI/Avalonia/pull/20714 - Core – Made
TextBlock.GetMaxSizeFromConstrainta protected method by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20877 - Core – Defer default icon loading until Window is shown by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/20898
- macOS – Add
NativeDock.MenuAPI for adding menu items to macOS dock icon by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20634 - macOS – Dispose
GRBackendRenderTargetand @autoreleasepool for metal objects by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20815 - macOS – Allow
CanResizeon macOS inBorderOnlymode by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20940 - X11 – Handle
ShowActivated=falseby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20958 - Android – Query date modified for storage folder by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20860
Fixes
- Core – Use
SetCurrentValuefor allIMenuItemproperties by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/20682 - Core – Fix
TransformTrackingHelpertracking by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20692 - Core – Fix for ghost items in virtualized
ItemsControlsby @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20700 - Core – Fix menu memory leak by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20753
- Core – Fix for remaining ghost items in
VirtualizationStackPanelby @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20784 - Core – Fix
CalendarDatePickerbecoming unusable when closed programmatically by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20756 - Core – Fix
TextBoxvalidation error persisting when reverting to same valid value by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20780 - Core – Fix
NativeControlHostnot accounting for visual transforms in size calculation by @mfkl in https://github.com/AvaloniaUI/Avalonia/pull/20785 - Core – Fix pixel rounding in
NativeControlHostby @mfkl in https://github.com/AvaloniaUI/Avalonia/pull/20786 - Core – Fix
VirtualizingStackPanelwhen viewport shrinks and grows again by @gentledepp in https://github.com/AvaloniaUI/Avalonia/pull/20870 - Core – Do not resolve markup extensions when resolving selector types by @dme-compunet in https://github.com/AvaloniaUI/Avalonia/pull/20903
- Core – Fix
ComboBoxnot displayingTextproperty validation by @ptasev in https://github.com/AvaloniaUI/Avalonia/pull/20978 - Windows – Add WinForms message filter for Avalonia windows by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20814
- macOS – Fix wrong accessibility roles for List, ListItem, and StatusBar by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20681
- macOS – Fix file dialogs in embedded views by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20719
- X11 – Fix values of known atoms by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20894
- X11 – Fix clipboard bitmap transferred with INCR by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20895
- Android – Fix
TargetExceptioninToggleNodeInfoProviderby @SunnyDesignor in https://github.com/AvaloniaUI/Avalonia/pull/20686 - Android – Fix unexpected crashes during accessibility actions by @SunnyDesignor in https://github.com/AvaloniaUI/Avalonia/pull/20687
- Android - only handle back event from source toplevel by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20694
- Android – Fix creation of files/folders in a subfolder, as well as its deletion by @Paulsams in https://github.com/AvaloniaUI/Avalonia/pull/20750
- iOS – Don't throw on unexpected input by @kerams in https://github.com/AvaloniaUI/Avalonia/pull/20728
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.12...11.3.13
12.0.0-rc1 · 12.0.0-rc1
2026-03-19 · by @MrJul · prerelease
What's Changed
This is the raw list of changes between 12.0.0-preview2 and 12.0.0-rc1:
* Streamline drawn decorations management to avoid call ordering problems by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20840
* [Metal] Dispose GRBackendRenderTarget and @autoreleasepool for metal objects by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20815
* [Navigation] Fire Page lifecycle events after transitions complete, not before by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20826
* Fix pixel rounding and visual transforms in NativeControlHost by @mfkl in https://github.com/AvaloniaUI/Avalonia/pull/20786
* Find perfect match before nearest in font collection by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20851
* Add automation landmarks to HamburgerMenu by @kirb in https://github.com/AvaloniaUI/Avalonia/pull/20857
* Fix TabControl DataContext issues when switching tabs by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20856
* [Feature] Add PipsPager Control by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20660
* Update summaries for gesture events in InputElement by @luke-whos-here in https://github.com/AvaloniaUI/Avalonia/pull/20862
* Disable Animations processing when Visual's not visible redux by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20820
* Translation property for CompositionVisual by @zxbmmmmmmmmm in https://github.com/AvaloniaUI/Avalonia/pull/20836
* Add FocusChangedEventArgs for GotFocus/LotFocus by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20859
* Made GetMaxSizeFromConstraint a protected method by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20877
* Add /update-api and /api-diff commands by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20887
* Remove Uncompilable code guarded by platform defines by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20861
* Use Numerge package by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20892
* Don't tick with render loop when app is idle by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20873
* Hide TextRange. It has no public usage. by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/20893
* Make SelectionHandleType internal by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20908
* Use the correct flag to determine if extra dirty rect needs to be combined with existing one by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20896
* Open FocusManager API by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20854
* Allow TextSearch.TextBinding on non-controls. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20884
* Defer default icon loading until Window is shown by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/20898
* Validate layoutable Thickness properties to block NaN or infinite values by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/20899
* Update .NET SDK to 10.0.201 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20912
* New HeadlessWindow.SetRenderScaling API by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20888
* Fix X11IconLoader exception for icons < 128px by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20914
* X11: Fix clipboard bitmap transferred with INCR by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20895
* Fix values of known atoms by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20894
* Add WinForms message filter for Avalonia windows by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20814
* Do not resolve markup extensions when resolving selector types by @dme-compunet in https://github.com/AvaloniaUI/Avalonia/pull/20903
* [Feature] Add gestures and WrapSelection (loops) support to Carousel by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20659
* Restructure VisualLayerManager by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20905
* Added more Carousel samples by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20932
* Add FindNextElementOptions.FocusedElement by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20930
* Fix Windows Snap in BorderOnly mode by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20937
* Make FlyoutBase.IsOpen a public StyledProperty by @NathanDrake2406 in https://github.com/AvaloniaUI/Avalonia/pull/20920
* [Feature] Expand Page-type navigation: CarouselPage by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20871
* Fix TabItem.Icon type and add IconTemplate by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20939
* Allow CanResize on macOS in BorderOnly mode by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20940
* Update Placeholder properties to use TextBox as owner in NumericUpDown & ComboBox by @zdpcdt in https://github.com/AvaloniaUI/Avalonia/pull/20929
* Remove unnecessary style for fullscreen button by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20934
* Android - Query date modified for android storage folder by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20860
* #20868 - virtualizingstackpanel, when viewport shrinks and grows agai… by @gentledepp in https://github.com/AvaloniaUI/Avalonia/pull/20870
* Add IconTemplate to Page and DrawerPage by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20946
* Change visual brush for group box to grid by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20947
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/12.0.0-preview2...12.0.0-rc1
12.0.0-preview2 · 12.0.0-preview2
2026-03-05 · by @MrJul · prerelease
What's Changed
This is the raw list of changes between 12.0.0-preview1 and 12.0.0-preview2: * Make TextBox.PlaceholderText accessible by @kirb in https://github.com/AvaloniaUI/Avalonia/pull/20714 * [macOS] Add NativeDock.Menu API for adding menu items to macOS dock icon by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20634 * [v12] Android - Remove redundant appbuilder methods in android, use AvaloniaActivity in toplevel classes by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20715 * Introduce PresentationSource, move some responsibilities from TopLevel by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20624 * Add boundary check to HarfBuzzTextShaper by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20716 * Update BclLauncher.cs to use ArgumentList property by @tompnub in https://github.com/AvaloniaUI/Avalonia/pull/19713 * Fixed incorrect opacity stack handling by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20730 * macOS: Fix file dialogs in embedded views by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20719 * Onboard onto Central Package Management by @dfederm in https://github.com/AvaloniaUI/Avalonia/pull/20704 * Add tooltips for settings in control catalog by @TeaDrivenDev in https://github.com/AvaloniaUI/Avalonia/pull/20731 * Handle GlyphTypeface creation exceptions by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20739 * Handle font cmap format 13 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20740 * More changes for non-toplevel visual tree roots. by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20732 * Remove unused internal classes, methods, and comparers by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20746 * Fix menu memory leak by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20753 * Implement AT-SPI2 Accessibility Backend by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20735 * Support ExperimentalAttribute in XAML by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20765 * Fix Toplevel not losing focus with native implementation deactivates. by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20768 * Fix for GhostItems in virtualized ItemsControls like ListBox by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20700 * Fixed creation of files/folders in a subfolder, as well as its deletion on Android by @Paulsams in https://github.com/AvaloniaUI/Avalonia/pull/20750 * Fix CalendarDatePicker becoming unusable when closed programmatically by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20756 * Make RemoteServer/RemoteWidget internal by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20767 * Use a default DesignEmHeight if the font doesn't have one by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20764 * Make a few more things internal by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20772 * iOS: fix universal link activation with scenes by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20752 * Fix TopLevelHost mirroring RTL content by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20754 * Add AppBuilder.UseTextShapingSubsystem by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20761 * Create DiagnosticTextRenderer lazily by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20766 * Fix font Weight/Stretch matching by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20773 * Fix missing root automation peer in x11/atspi by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20775 * Don't call FormattingObjectPool.VerifyAllReturned by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20774 * CompiledBinding.Create must be AOT-compatible, even by using reflection by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20776 * Don't throw on unexpected iOS input by @kerams in https://github.com/AvaloniaUI/Avalonia/pull/20728 * Introduce Dispatcher.CurrentDispatcher, Dispatcher.FromThread, AvaloniaObject.Dispatcher by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18686 * Fix NativeControlHost not accounting for visual transforms in size calculation by @mfkl in https://github.com/AvaloniaUI/Avalonia/pull/20785 * Move Gesture events to InputElement by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20789 * Themeable Client Window Decorations by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20770 * Include Avalonia.IntegrationTests.Win32 into desktop slnf by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20797 * Fix for remaining Ghost-Item in VirtualizationStackPanel by @timunie in https://github.com/AvaloniaUI/Avalonia/pull/20784 * Fix TextBox validation error persisting when reverting to same valid value by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20780 * Rename SystemDecorations to WindowDecorations since they aren't necessary "system". by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20796 * Add PopupOverlayLayer by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20751 * Explicitly truncate when opening a stream for writing by @Frederisk in https://github.com/AvaloniaUI/Avalonia/pull/20804 * Add gesture CLR events to InputElement by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20806 * Update SkiaSharp to 3.119.3-preview.1.1 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20809 * Bump Tmds.DBus.Protocol to version 0.90.3 by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20810 * [iOS] Truncate file in IOSStorageFile.OpenWrite by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20807 * Render target/surface housekeeping by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20811 * [Feature] Page-based navigation system by @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20794 * X11IconLoader needs to scale the icon into our hardcoded size by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20817
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/12.0.0-preview1...12.0.0-preview2
12.0.0-preview1 · 12.0.0-preview1
2026-02-17 · by @MrJul · prerelease
What's Changed
This is the raw list of changes between 11.3.12 and 12.0.0-preview1:
- Design improvements by @maxkatz6 in #18300
- Add ability to cancel focus change by @emmauss in #18373
- [X11] Added INCR support by @kekekeks in #18428
- Don't round size in TextBlock when UseLayoutRounding is false by @appel1 in #18456
- Fix MeasureCore when there's a size constraint and there's a negative… by @appel1 in #18462
- Focus Traversal Api by @emmauss in #18647
- Make sure that tests inherit from ScopedTestBase by @kekekeks in #18690
- Update bug_report.yml by @timunie in #18711
- Fix typo in PseudoClassesExtensions class name by @zdpcdt in #18717
- feat: add TreeViewItemIndentConverter for dynamic margin calculation by @zdpcdt in #18718
- Limit use of deprecated Android display API by @emmauss in #18722
- Move android app initialization to custom application class by @emmauss in #18756
- Add IAddChild to StyleBase to fix IDE errors when adding Style as children to ContainerQuery by @wieslawsoltes in #18800
- Added missing class event handler methods by @TomEdwardsEnscape in #18837
- fix WrapPanel comments by @ingts in #18862
- Fixed core
GotFocusandLostFocushandling being skippable by @TomEdwardsEnscape in #18868 - Add IActivityApplicationLifetime for android by @emmauss in #18893
- Fixes accumulated glitches in GpuInterop demo by @kekekeks in #18900
- Add
DrawingImage.Viewboxby @TomEdwardsEnscape in #18913 - Bump ImageSharp to 2.1.10 by @drasticactions in #18924
- Update azure-pipelines.yml (#18876) by @Gillibald in #18940
- fix: Prevent DXGI from intercepting Alt+Enter and PrintScreen by @M0n7y5 in #18970
- [Android] Do not underutilize CPU/GPU when can't keep up with refresh rate by @kekekeks in #18973
- [ANDROID] Skip glWaitClient/glWaitGL/glWaitNative by @kekekeks in #18974
- Implement IDispatcherImpl for Android based on Looper and MessageQueue by @kekekeks in #18975
- [12.0] Target SkiaSharp 3.0. Drop 2.88 support by @maxkatz6 in #18981
- Remove old linux hack by @kekekeks in #18989
- Switch to using animation request for scroll inertia dispatch by @emmauss in #18997
- Cleanup InvalidationAwareSurfaceView related code by @maxkatz6 in #19045
- Fix WindowCloseReason Passed During System Shutdown by @lindexi in #19055
- feat: expose Popup property in PopupFlyoutBase for external access. by @zdpcdt in #19106
- Make
CharacterReaderinternal. by @grokys in #19123 - Fix typo:
ExternalGLibMainLoopExceptionLoggerby @Dragorn421 in #19128 - Developer Documentation by @grokys in #19131
- Remove
PropertyPath. by @grokys in #19133 - move to SDK 8.0.411 in global.json by @SimonCropp in #19136
- remove some redundant returns by @SimonCropp in #19137
- remove some duplicate dict lookups by @SimonCropp in #19138
- remove Settings.StyleCop from sln by @SimonCropp in #19140
- remove some un-used code by @SimonCropp in #19146
- Feat/19059 add automation for validation error by @longbuibao in #19161
- Capture ExecutionContext for Dispatcher.InvokeAsync by @walterlv in #19163
- Rename "Documentation" subfolder into "docs" by @maxkatz6 in #19189
- Improved NuGet package creation docs. by @grokys in #19196
- Unify selection event handling for all
SelectingItemsControltypes plusTreeViewby @TomEdwardsEnscape in #19203 - Fix: Unable to input numbers, symbols, and English letters in Avalonia on X11 with fcitx5 ForwardKey messages by @SeWZC in #19207
- Use hard links for build by @MrJul in #19209
- Migrate AvaloniaNameSourceGenerator to IIncrementalGenerator by @maxkatz6 in #19216
- Fix typo in XML documentation for ExtendClientAreaChromeHints enum by @Versette in #19245
- Typos fix by @oktrue in #19257
- Add GroupBox by @maxkatz6 in #19366
- Implemented Dispatcher.Yield / Dispatcher.Resume by @kekekeks in #19370
- Commit missing resource values by @maxkatz6 in #19371
- Use VisualBrush for GroupBox Border by @drasticactions in #19372
- [v12] Enable Mac Catalyst in Avalonia.iOS by @drasticactions in #19415
- Update release instructions by @MrJul in #19417
- Text API sample app by @miloush in #19455
- Increase RemoteProtocolTests timeout by @MrJul in #19461
- Fix comment for #19163 by @walterlv in #19469
- Removed locks from Ref
by @kekekeks in #19476 - Improved API diff by @MrJul in #19490
- Font features in test app by @miloush in #19493
- Avoid processing frameworks in parallel in ValidateApiDiff by @MrJul in #19511
- Fix BitmapInterpolationMode.HighQuality when downscaling by @MrJul in #19513
- Update Nuke to v9 and fix ValidateApiDiff by @MrJul in #19529
- Move
IBindingtoBindingBaseand tidy up some binding APIs by @grokys in #19589 - Ignore empty preeditText when no composition was active before (#19595) by @Gillibald in #19621
- Fix: ChoreographerTimer should check for Android version correctly. by @IsaMorphic in #19643
- DOCS: Add final newline to markdown files by @VbhvGupta in #19645
- Limit InlineUIContainer to available width (#19651) by @Gillibald in #19675
- Move ControlCatalog.MacCatalyst/tvOS to their own folders by @MrJul in #19709
- Enable compiled bindings by default in Avalonia.props by @maxkatz6 in #19712
- Run Avalonia.LeakTests on CI by @pos777 in #19720
- Remove Tizen by @MrJul in #19722
- Implement focus change only on release when using touch or pen input by @emmauss in #19753
- Improve FontCollection customization by @Gillibald in #19756
- Universal GlyphTypeface implementation by @Gillibald in #19852
- Update to .NET 10 by @MrJul in #19869
- Improve
AvaloniaNameIncrementalGeneratorerror handling by @TomEdwardsEnscape in #19934 - Changed FuncMultiValueConverter to take IList instead of IEnumerable by @zacfromaustinpowder in #19936
- Modernise ControlCatalog XAML by @TomEdwardsEnscape in #19971
- [Text] Properly handle DrawableRun.Baseline (#19896) by @Gillibald in #19983
- [DesignerHost/HTML]: improve high-dpi screen behavior by @ijklam in #19996
- feat: Handle Datavalidations on base class "Control" by @timunie in #20067
- Fix TryCreateGlyphTypeface return on macOS with SkiaSharp 2.88 by @MrJul in #20084
- Android - Directly use the surface window handle cached in InvalidationAwareSurfaceView instead of requesting new handles by @emmauss in #20093
- Rewrite leak tests without dotMemory Unit by @MrJul in #20095
- Remove Avalonia.Browser.Blazor by @maxkatz6 in #20105
- Introduce TextOptions by @Gillibald in #20107
- Remove netstandard2.0 from almost all projects by @MrJul in #20111
- Remove Direct2D1 by @MrJul in #20132
- Use Silk.NET in GpuInterop sample by @MrJul in #20133
- Update dependencies by @MrJul in #20139
- [Feature] Move LetterSpacing to TextElement as inherited attached property by @jsuarezruiz in #20141
- Add screen orientation support for Linux DRM by @ThadHouse in #20154
- Improve NuGet.Config by clearing all package source options to make it independent of global NuGet.Config by @Athari in #20169
- Remove obsolete projects from solution filter file by @quanzhuo in #20178
- Fix several issues with ExtendClientAreaToDecorationsHint on Windows by @MrJul in #20217
- Use standalone Bun to build JS projects instead of NodeJS by @maxkatz6 in #20243
- Fix dnx random failures by @MrJul in #20284
- Restore integration tests by @MrJul in #20296
- Add PlaceholderForeground property to TextBox, AutoCompleteBox, CalendarDatePicker, NumericUpDown by @jsuarezruiz in #20303
- Fix common warnings by @MrJul in #20311
- Split analyzers and code fixes into separate projects by @MrJul in #20312
- Update .NET SDK to 10.0.101 by @Youssef1313 in #20322
- Update to xunit.v3 by @Youssef1313 in #20331
- Remove legacy Diagnostics project by @MrJul in #20332
- Delete Direct2D1 test files by @MrJul in #20333
- Update Nuke to v10 by @MrJul in #20345
- Enable nullability in Base/Markup/Markup.Xaml unit tests by @MrJul in #20346
- Fix NRE bug in TextShaperImpl.ShapeText on netstandard2.0 by @adams85 in #20369
- Update NUnit to v4 by @MrJul in #20372
- Enable nullability in Controls.UnitTests by @MrJul in #20373
- Enable nullability in various test projects by @MrJul in #20374
- Enable nullability in Avalonia.Native by @MrJul in #20378
- Enable nullability in all samples by @MrJul in #20379
- Fix ambiguous and dead
inheritdoclinks by @ScrubN in #20397 - Fix Android obsolete warnings by @MrJul in #20412
- Update CODE_OF_CONDUCT.md by @MikeCodesDotNET in #20417
- Handle added packages in API diff by @MrJul in #20428
- Fix some XML doc warnings by @MrJul in #20429
- Fix ncrunch configuration. by @grokys in #20437
- Move compiled bindings to Avalonia.Base. by @grokys in #20439
- Add CompiledBinding.Create factory methods from LINQ expressions by @grokys in #20443
- Fix android wrong inset safe area padding value after resume by @Shirasagi0012 in #20448
- Implement scene delegate for iOS by @MrJul in #20454
- Remove BinaryFormatter by @MrJul in #20455
- Fix for HarfBuzz was missing by @timunie in #20456
- Fix xUnit warnings in AnimationIterationTests by @MrJul in #20459
- Fix Avalonia.Desktop.slnf compiling by @gehongyan in #20461
- Fix NuGet warnings by @MrJul in #20466
- Remove EnableUnsafeBinaryFormatterSerialization property by @MrJul in #20467
- Update headless xUnit support to v3 by @MrJul in #20481
- Composition system SP1 by @kekekeks in #20497
- Enable warnings as errors by @MrJul in #20504
- Fix typo in build.md by @mrlacey in #20513
- Use net8.0 TFM for shipped build props by @kekekeks in #20518
- Remove IInternalScroller and move IScrollable to Avalonia.Base by @MrJul in #20519
- Remove IDataObject to IDataTransfer wrappers and related methods by @MrJul in #20521
- Simplify text formatting constructors by @MrJul in #20527
- Merge IGeometryContext and IGeometryContext2 by @MrJul in #20528
- Make Screen abstract by @MrJul in #20529
- Fix Android surface recreation by @kerams in #20538
- Fix TabItem's Content inheriting TabControl's DataContext instead of TabItem's by @ptasev in #20541
- Fixes several simple TODO12 by @MrJul in #20544
- Add AlphaFormat to ILockedFramebuffer by @MrJul in #20556
- Merge multiple interfaces related to rendering by @MrJul in #20557
- Headless: use HarfBuzz by default by @MrJul in #20561
- Merge IResourceHost2 into IResourceHost by @MrJul in #20576
- Remove NativeMenuItemToggleType and NativeMenuBar.EnableMenuItemClickForwarding by @MrJul in #20577
- Move ConstructorArgumentAttribute and remove BindingMode from ReflectionBinding constructor by @MrJul in #20589
- Fix warnings and index bugs in ControlCatalog sample by @ThadHouse in #20590
- Add IsAlive property to IRef
by @MrJul in #20593 - Make NUnit tests visible in Rider again by @MrJul in #20594
- Remove AutoCompleteBox.BindingEvaluator by @MrJul in #20596
- Make IPopupHost a private API by @MrJul in #20597
- Headless NUnit: Handle async SetUp/TearDown by @MrJul in #20612
- Remove obsolete members from Avalonia.Base by @MrJul in #20613
- Remove obsolete members from Avalonia.Controls by @MrJul in #20617
- Hide binding plugins and disable Data Annotations validation by default by @grokys in #20623
- Remove obsolete members from various assemblies by @MrJul in #20628
- Move GetWindowsZOrder to IWindowingPlatform by @MrJul in #20633
- Fix Border clip regression by @kekekeks in #20648
- Use KeySymbol for AccessKey by @MrJul in #20662
- Fixed wrong Mac accessibility roles for List, ListItem, and StatusBar by @codecat in #20681
- Make sure that adorners are actually correctly positioned in visual tree for TransformToVisual and friends by @kekekeks in #20691
11.3.12 · 11.3.12
2026-02-12 · by @MrJul
What's Changed
Enhancements
- Core – Add AXAML Source Information to debug builds by @mrlacey in https://github.com/AvaloniaUI/Avalonia/pull/20524
- Core – Improve the error message for invalid surface size by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20591
- Core – Improve capture source change notification by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/20656
- Controls – Add
LandmarkTypeautomation property by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20134 - Controls – Add
LiveSettingautomation property by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20473 - Controls – Add automation peer for
Expandercontrol by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20475 - Controls – Add property changed event for
IToggleProviderby @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20486 - Controls – Add
FindAncestorOfTypeandFindDescendantOfTypewith predicates by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/20661 - Controls – Add
ItemStatusandItemTypeautomation properties by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/20669 - Windows – Add thread name in
DxgiConnectionby @lindexi in https://github.com/AvaloniaUI/Avalonia/pull/20505 - Windows – Reduce the number of
WrapDirect3D11Texturecalls by @lindexi in https://github.com/AvaloniaUI/Avalonia/pull/20517
Fixes
- Core – Reset cached transform on
PopEffectby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20474 - Core – Use epsilon-aware greater than in
TextLineandTextFormatterby @kerams in https://github.com/AvaloniaUI/Avalonia/pull/20650 - Controls – Fix
DatePickerto respect customWidthproperty by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20487 - Controls – Disable scroll chaining for
ScrollViewersin popup by @rabbitism in https://github.com/AvaloniaUI/Avalonia/pull/20503 - Controls – Fix
TimePickerto respect customWidthproperty by @Evan260 in https://github.com/AvaloniaUI/Avalonia/pull/20507 - Controls – Fix
ScrollBarcollapsing during active thumb drag by @dme-compunet in https://github.com/AvaloniaUI/Avalonia/pull/20563 - Controls – Do not inherit
TextDecorationsin popup by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20472 - Controls – Fix broken accessibility properties in
ScrollBarcontrol by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20483 - Controls – Fix title bar appearing in content element accessibility tree by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20485
- Android – Raise
IAvaloniaActivity.Activatedon new intent by @daniel-lerch in https://github.com/AvaloniaUI/Avalonia/pull/20564 - Windows – Fix clipboard not returning bitmaps in some cases by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20506
- Windows – Fix
DxgiRenderTimerLoopthrowing an exception when accessing aScreeninstance @lindexi in https://github.com/AvaloniaUI/Avalonia/pull/20511 - Windows – Fix clipboard bitmap pixel shift by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20654
- X11 – Fix clipboard manager store completion by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20514
- macOS – Release implicit mouse capture on focus lost by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20574
- macOS – Ensure render target is at least 1x1 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20610
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.11...11.3.12
11.3.11 · 11.3.11
2026-01-13 · by @MrJul
What's Changed
Enhancements
- Core – Add support for parsing
BoxShadowswith color functions by @gehongyan in https://github.com/AvaloniaUI/Avalonia/pull/20321 - X11 – Set
XkbSetDetectableAutoRepeatto true by @flabbet in https://github.com/AvaloniaUI/Avalonia/pull/20360
Fixes
- Core – Fix thread-race condition in
Dispatcheron shutdown by @11v1 in https://github.com/AvaloniaUI/Avalonia/pull/20299 - Core – Fix
NullReferenceExceptioninTextShaperImpl.ShapeTexton netstandard2.0 by @adams85 in https://github.com/AvaloniaUI/Avalonia/pull/20369 - Core – Add null reference check for animation keyframes by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20422
- Core – Fix accessibility with screen reader on
TextBlockwith inlines by @codecat in https://github.com/AvaloniaUI/Avalonia/pull/20438 - Core – Fix
BindingExpression.LeafNodethrowing when nodes list is empty by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/20442 - Documentation – Update
HelpLinkfor XAML namespace resolution by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20371 - iOS – Fix
TextInputResponderby @kerams in https://github.com/AvaloniaUI/Avalonia/pull/19310 - Android – Call default back callbacks when not handled by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20452
- Windows – Remove obsolete clipboard format
CF_TEXT. by @yu-kopylov in https://github.com/AvaloniaUI/Avalonia/pull/20389 - Headless – Fix
InvalidOperationExceptionDispatcher job loop detected by @wieslawsoltes in https://github.com/AvaloniaUI/Avalonia/pull/20310
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.10...11.3.11
11.3.10 · 11.3.10
2025-12-18 · by @MrJul
What's Changed
Enhancements
- Core – Allow stopping composition animation by @zxbmmmmmmmmm in https://github.com/AvaloniaUI/Avalonia/pull/20074
- Core – Introduce
PathSegmentEllipsisTextTrimming by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/20077 - Core – Enable antialiasing based on
EdgeModeinDrawBitmapby @snowflysky in https://github.com/AvaloniaUI/Avalonia/pull/20116 - Core – Reduce allocations in text rendering by @Washi1337 in https://github.com/AvaloniaUI/Avalonia/pull/20175
- Core – Improve effect render performance by providing Skia with information about subscene bounds by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/20191
- Controls – Add
StrokeMiterLimitproperty toShapeby @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20156 - Controls – Add
FillRuleproperty forPolyline/Polygonby @jsuarezruiz in https://github.com/AvaloniaUI/Avalonia/pull/20159 - ReactiveUI – Remove
Avalonia.ReactiveUIby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20101 - Windows – Change empty
TrayIconto use lazy initialization by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20211 - Windows – Export bitmap in more clipboard formats by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20209
- macOS – Implement accessibility value setter by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20262
- X11 – Add basic Pen support by @flabbet in https://github.com/AvaloniaUI/Avalonia/pull/19910
Fixes
- Core – Fix newline requiring two backspaces to be deleted by @Linlccc in https://github.com/AvaloniaUI/Avalonia/pull/20073
- Core – Correct some Container Query error outputs by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20170
- Core – Fix
ImmediateRendererby @ds1709 in https://github.com/AvaloniaUI/Avalonia/pull/20174 - Core – Fix exception when deleting a non-empty directory by @wasdawz in https://github.com/AvaloniaUI/Avalonia/pull/20194
- Core – Fix
SystemFontCollectionby @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/20207 - Controls – Round measured cell sizes when
UseLayoutRoundingis enabled inUniformGridby @Soar360 in https://github.com/AvaloniaUI/Avalonia/pull/19959 - Controls – Preserve run formatting when applying
SelectionForegroundBrushinSelectableTextBlockby @AuroraZiling in https://github.com/AvaloniaUI/Avalonia/pull/20110 - Controls – Fix
ReversibleStackPanelnot invalidating arrange onReverseOrderchange by @Athari in https://github.com/AvaloniaUI/Avalonia/pull/20172 - Controls – Skip disabled controls in
XYFocusby @IanRawley in https://github.com/AvaloniaUI/Avalonia/pull/20241 - Controls – Apply
NumberFormatchanges toNumericUpDownby @dpse in https://github.com/AvaloniaUI/Avalonia/pull/20248 - Designer – Fix thread-safety issue causing infinite loops in
TypeHelpercache by @copilot-swe-agent in https://github.com/AvaloniaUI/Avalonia/pull/20113 - Windows – Fix no border sysmenu by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19923
- Windows – Fix intermediate mouse points order by @flabbet in https://github.com/AvaloniaUI/Avalonia/pull/20075
- Windows – Fix popups not closing when using WinForms Host by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20090
- Windows – Fix winforms mnemonic handler being called when textbox is focused. by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20091
- macOS – Use relative placement for detecting drag and drop locations. by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/20280
- X11 – Avoid clearing clipboard if we still have the ownership by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20137
- X11 – Clean up IME inconsistencies by @AlanIWBFT in https://github.com/AvaloniaUI/Avalonia/pull/20201
- Android – Fix Android Api 36 by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20112
- Android – Use androidx lib for backpressed callback by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20291
- iOS – Fix on screen keyboard missing decimal separator by @YasarYY in https://github.com/AvaloniaUI/Avalonia/pull/20279
- Headless – Fix headless race condition by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20143
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.9...11.3.10
11.3.9 · 11.3.9
2025-11-18 · by @MrJul
What's Changed
Enhancements
- Core – Add
SaveFilePickerWithResultAsyncAPI by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/19783 - Core – Primary mouse device by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19898
- Core – Add an optional
ConvertBackmethod toFuncValueConverterby @zacfromaustinpowder in https://github.com/AvaloniaUI/Avalonia/pull/19920 - Core – Support reading from and copying images to clipboard by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19930
- Core – Add
SuggestedFileTypefor Save/OpenFilePicker by @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/20026 - Headless – Add headless
AvaloniaTestIsolationLevelby @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20000 - Build – Update
Avalonia.BuildServicespackage version by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/20078
Fixes
- Core – Properly handle
DrawableRun.Baselineby @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19896 - Core – Fix
Selector.ValidateNestingSelectornot calling overrides by @zacfromaustinpowder in https://github.com/AvaloniaUI/Avalonia/pull/19947 - Core – Handle long file paths in
UriFromFilePathby @startewho in https://github.com/AvaloniaUI/Avalonia/pull/19955 - Core – Fix
ServerCompositionSimplePenmemory leak by @aguahombre in https://github.com/AvaloniaUI/Avalonia/pull/19958 - Core – Cache platform font manager
TryMatchCharacterresult by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19987 - Core – Fix
EmbeddedFontCollection.TryGetNearestMatchcaching by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/20013 - Controls – Make
ContentPresenter.RecognizesAccessKeystylable by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19893 - Previewer – Don't let the
PreviewerWindowbe any size by @mrlacey in https://github.com/AvaloniaUI/Avalonia/pull/19957 - Android – Fix changes to
AccessibilityNodeInfoCompat.Checkeddata type from bool to int by @BobbyCannon in https://github.com/AvaloniaUI/Avalonia/pull/19985 - Android - Fix external app not reading text in clipboard by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20023
- macOS – Fix fullscreen transitions with
ExtendClientAreaToDecorationsHintwindows by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19939 - macOS – Fix XButtons event handler by @DrunkyBard in https://github.com/AvaloniaUI/Avalonia/pull/19997
- macOS – Correct key mapping for scan code 0x18 by @snowflysky in https://github.com/AvaloniaUI/Avalonia/pull/20009
- macOS – Fix
TryCreateGlyphTypefacereturn on macOS with SkiaSharp 2.88 by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20084 - Windows – Handle mouse movement in non-client areas of window. (#19922) by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19922
- Windows – Fix
ComVariantnative size (add extended field and asserts) by @AndreyRusyaev in https://github.com/AvaloniaUI/Avalonia/pull/20017 - Windows – Do not activate embedded windows when shown by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/20027
- Windows – Properly snapshot
GlSkiaImportedImageby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/20053
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.8...11.3.9
11.3.8 · 11.3.8
2025-10-23 · by @MrJul
What's Changed
Enhancements
- Core – Clarify the
CenterXandCenterYproperties documentation inRotateTransformby @YoriMirus in https://github.com/AvaloniaUI/Avalonia/pull/19741 - Core – Add internal
PointerCaptureChangingevent by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19833 - Core – Distribute
LineGapevenly to top and bottom by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19556 - Core – Adjust
GetBackspaceCaretCharacterHitby @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19586 - X11 – Enable network location browsing in GTK file chooser dialogs by @meywd in https://github.com/AvaloniaUI/Avalonia/pull/19855
Fixes
- Core – Fix
PlatformDataTransferItem.TryGetRawfor unknown formats by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19791 - Core – Ignore
PointerOverchange when pointer event isCancelCaptureby @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19808 - Core – Added guards in
TryGetGlyphTypefaceso the$Defaultplaceholder stops. by @wieslawsoltes in https://github.com/AvaloniaUI/Avalonia/pull/19891 - Controls –
LayoutTransformControl: fix memory leak due toTransform.Changedevent subscription by @pavelovcharov in https://github.com/AvaloniaUI/Avalonia/pull/19718 - Controls – Make
ScreenBaseimpl more reliable by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19762 - Controls – Fix
ArgumentExceptionwhen showing multiple notifications with the same content by @fgsfds in https://github.com/AvaloniaUI/Avalonia/pull/19774 - Themes – Fix
CheckboxandRadioButtonheight in compact density of Fluent theme. by @miishan in https://github.com/AvaloniaUI/Avalonia/pull/19882 - XAML – Fix
ExpressionParseExceptionbeing reported as an internal compiler error by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19817 - X11 – Fix DBus tray icon
NullReferenceExceptionwhen change visible by @memorydream in https://github.com/AvaloniaUI/Avalonia/pull/19742 - Windows – Fix margins and nc hit test for caption buttons in extend to client windows by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19773
- Windows – Fix
Win32Exceptionwhen a file picker has an invalid file type by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19812 - Windows – Add finalizer to
Win32Iconwhich frees its GDI handle by @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19813 - Windows – Prevent duplicated files during drag-and-drop by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19864
- Windows – Properly handle non standard italic/oblique fonts on Windows by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19876
- Android – Fix scaling of inset when app is launched by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19797
- macOS – Add
parent/automationPeernull guards onAvnWindowby @jmacato in https://github.com/AvaloniaUI/Avalonia/pull/19805
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.7...11.3.8
11.3.7 · 11.3.7
2025-10-03 · by @MrJul
What's Changed
Features
- Core – Clipboard rework by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19347
- Controls – Add
IsEditabletoComboBoxby @almightyju in https://github.com/AvaloniaUI/Avalonia/pull/18094 - Controls – Add
SplitViewPanePlacementsettings forTopandBottomby @danwalmsley in https://github.com/AvaloniaUI/Avalonia/pull/19465 - Controls – Add
HeadingLeveltoAutomationPropertiesby @codecat in https://github.com/AvaloniaUI/Avalonia/pull/19696 - X11 – Add INCR support by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18428
- macOS – Implement
IOSurface/MTLSharedEventinterop APIs by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/18791 - Windows – Respond to
WM_CAPTURECHANGEDby @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19685
Enhancements
- Core – Add
BoxShadow(s)documentation comments by @robloo in https://github.com/AvaloniaUI/Avalonia/pull/19644 - Core – Add
Add/Removeevent handler methods toDragDrop. by @grokys in https://github.com/AvaloniaUI/Avalonia/pull/19739 - Themes – Add resource for
TextControlPlaceholderOpacityby @codecat in https://github.com/AvaloniaUI/Avalonia/pull/19705 - Build – Update
Avalonia.BuildServicespackage version by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19757
Fixes
- Core – Fix
BoxShadowequality by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19650 - Core – Fix typeface exception when created with empty font family name by @jay-mao-cn in https://github.com/AvaloniaUI/Avalonia/pull/19654
- Core – Do not recapture already captured element by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19740
- Controls – Fix tooltip hit test following a dirty rect invalidation not respecting
IsHitTestVisibleby @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19642 - Controls – Limit
InlineUIContainerto available width by @miloush in https://github.com/AvaloniaUI/Avalonia/pull/19651 - Controls – Make sure inlines properly inherit text run properties from their parent by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19750
- Controls – Fix focus issues with
ComboBoxby @almightyju in https://github.com/AvaloniaUI/Avalonia/pull/19672 - XAML – Fix
TypeConverterAttributefor avalonia properties by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/19727 - XAML – Add
FindAssembliesGrantingInternalAccesstoAvaloniaXamlIlRuntimeCompilerby @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19735 - X11 – Fix memory leaks when closing a window on Linux by @dif-sam in https://github.com/AvaloniaUI/Avalonia/pull/19699
- macOS – Move Drag and Drop logic to
TopLevelImplby @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19731 - Browser – Fix
StorageItemmethods not working and handle conversion issue by @Bugord in https://github.com/AvaloniaUI/Avalonia/pull/19708 - Build – Remove
Microsoft.SourceLink.GitHubPackageReference by @KirillOsenkov in https://github.com/AvaloniaUI/Avalonia/pull/19744
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.6...11.3.7
11.3.6 · 11.3.6
2025-09-12 · by @MrJul
What's Changed
Enhancements
- macOS – Adjust macOS Tray/Menu icons scaling by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19628
Fixes
- Windows – Fix OS timer interval calculation in Windows dispatcher by @Swarley97 in https://github.com/AvaloniaUI/Avalonia/pull/19597
- Windows – Fix maximized window being able to resize by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19620
- macOS – Fix SkiaSharp 3 Metal interop signature by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19598
- iOS – Backport
GRContextbugfix by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19615 - X11 – Ignore empty
preeditTextwhen no composition was active before (#19595) by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19621 - Headless – Fix headless
FontManagerleak by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19599 - Text – Fix
TextLine.GetTextBoundszero width run by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19602 - Text – Fix
TextLineImpl.GetTextBoundswith trailing zero width by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19616
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.5...11.3.6
11.3.5 · 11.3.5
2025-09-03 · by @MrJul
What's Changed
Features
- Core – Update
Brush.Parse()to Handle all Color Formats by @robloo in https://github.com/AvaloniaUI/Avalonia/pull/19526 - Text – Make typeface matching and synthetic typeface creation customizable by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/18890
Fixes
- Core – Fix validation error not being cleared on valid input by @ondrejsusovsky in https://github.com/AvaloniaUI/Avalonia/pull/19477
- Core – Schedule a full render pass on
CompositionBatchCompletionto prevent tearing by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/19487 - Core – Fix
TransformGroup.Childrencollection changes not changingTransformGroup.Valueby @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19525 - Core – Fixes duplicate class property registration by @coltonk9043 in https://github.com/AvaloniaUI/Avalonia/pull/19558
- Text – Fix overhang calculation by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19013
- Text – Fix zero width space handling by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19488
- Text – Fix
FontCollection.MatchCharacterby @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19494 - Text – Do not treat combining marks as whitespace by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19498
- Text – FontLoading adjustments by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19538
- Text – Rework
TextLineImpl.GetTextBoundsby @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19576 - Controls – Fix usage of
GridSplitterinsideItemsControlasItemsPanelby @wieslawsoltes in https://github.com/AvaloniaUI/Avalonia/pull/19200 - Controls – Fix
RelativePanelcalculation error with extensible and aligned child by @msojocs in https://github.com/AvaloniaUI/Avalonia/pull/19474 - Controls – Fix selected files filename in managed file chooser by @loyvsc in https://github.com/AvaloniaUI/Avalonia/pull/19540
- Controls – Fix
BringDescendantIntoViewwith respect to margins by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19544 - iOS – Pass app delegate to the default
UseiOScall by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19550 - Windows – Fix Win32 GDI leak on
TrayIconclose by @coltonk9043 in https://github.com/AvaloniaUI/Avalonia/pull/19583
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.4...11.3.5
11.3.4 · 11.3.4
2025-08-15 · by @MrJul
What's Changed
Features
- Controls - Add
Window.CanMinimize/CanMaximizeby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/18117 - Controls - Add
Window.IsDialogby @davisx2 in https://github.com/AvaloniaUI/Avalonia/pull/19226 - Controls - Add
Calendar.AllowTapRangeSelectionby @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19367 - Android - Retrieve platform input config value by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19446
Fixes
- Core - Fix
WeakEventsubscription management thread race condition by @11v1 in https://github.com/AvaloniaUI/Avalonia/pull/19383 - Controls - Enable Copy and Cut in
ContextMenuforAutoCompleteBoxby @zrt2399 in https://github.com/AvaloniaUI/Avalonia/pull/19087 - Controls - Removed all nullability overrides from
TimePickerPresenterandDatePickerPresenterby @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19241 - Controls - Track
TabIndexvalue inNumericUpDownby @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19348 - Controls - Fix
SplitViewincorrectly closing when the user changesDisplayModetoInlinewhenIsPaneOpenis already true by @danwalmsley in https://github.com/AvaloniaUI/Avalonia/pull/19460 - X11 - Fix a typo in
X11Window ClientMessageEvent.ptr5by @walterlv in https://github.com/AvaloniaUI/Avalonia/pull/19439 - Android - Fix duplicated pointer events by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19440
- macOS - Remove non implemented message
AvnView.resetPressedMouseButtonsby @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/19445 - macOS - Fix thick titlebar mouse event duplication by @ErtyHackward in https://github.com/AvaloniaUI/Avalonia/pull/19447
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.3...11.3.4
11.3.3 · 11.3.3
2025-08-05 · by @MrJul
What's Changed
Features
- Documentation - Add OpenGlControlBase XML docs by @maxkatz6 in https://github.com/AvaloniaUI/Avalonia/pull/19188
- Core - Add InputPaneActivationRequested in TextInputMethodClient by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19225
- Controls - Add a buffer cache to containers in VirtualizingStackPanel by @gentledepp in https://github.com/AvaloniaUI/Avalonia/pull/18646
- iOS - Enable Pointer/Trackpad scrolling by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19342
- iOS - Implement Save File Picker Support by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19364
Fixes
- Core - Properly check if DispatcherOperation is pending when executing/aborting by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/19132
- Core - Fix memory leak by clearing shared array pool references in LightweightObservableBase by @walterlv in https://github.com/AvaloniaUI/Avalonia/pull/19167
- Core - Fix random NRE inside
Compositor.CommitCore()callback. by @EgorRudakov2 in https://github.com/AvaloniaUI/Avalonia/pull/19173 - Core - Set IsKeyboardFocusWithin to false when control is detached from visual tree by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19369
- Controls - Fixed ComboBox focus styles not being applied by @0xJins in https://github.com/AvaloniaUI/Avalonia/pull/19147
- Controls - Make textbox context menu transient on mobile by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19182
- Controls - Remove textbox holding handler in text selection handle by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19186
- Controls - Use captured element if available as source for tap gestures by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19222
- Controls - Grid: Fix inner size calculation when Row/ColumnDefinition is not set but spacing is set by @zxbmmmmmmmmm in https://github.com/AvaloniaUI/Avalonia/pull/19227
- Text - Fix selecting multiple lines in RTL mode by @AhmedZero in https://github.com/AvaloniaUI/Avalonia/pull/19093
- Text - Fix TextLineIImpl.GetTextBounds for clustered trailing zero width characters by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19208
- Text - Fix multiline selection crash by @kerams in https://github.com/AvaloniaUI/Avalonia/pull/19337
- Skia - Explicit dispose of GRBackendRenderTarget and SKSurfaceProperties by @vadimart92 in https://github.com/AvaloniaUI/Avalonia/pull/19100
- macOS - Replace manual input tracking with NSEvent by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19101
- macOS - Fixes thick titlebar pointer events streaming by @ErtyHackward in https://github.com/AvaloniaUI/Avalonia/pull/19320
- X11 - Fix X11Screen info update incorrectly when screen changed by @Handsome08 in https://github.com/AvaloniaUI/Avalonia/pull/19262
- X11 - Stopgap fix for Clipboard.ClearAsync not returning by @kekekeks in https://github.com/AvaloniaUI/Avalonia/pull/19302
- Android - Restrict souce of input events to avalonia view by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19289
- Win32 - Enable tray icon creation in all circumstances when running as an admin by @lwz-sabrina in https://github.com/AvaloniaUI/Avalonia/pull/19382
Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.2...11.3.3
11.3.2 · 11.3.2
2025-06-24 · by @MrJul Full Changelog: https://github.com/AvaloniaUI/Avalonia/compare/11.3.1...11.3.2
What's Changed
Enhancements
- Documentation – Corrected
PointerPointPropertiesinline documentation, and exposed it onPointerEventArgsby @TomEdwardsEnscape in https://github.com/AvaloniaUI/Avalonia/pull/19062 - Controls – Remove the need for MenuItem Icon to be a ILogical by @Doraku in https://github.com/AvaloniaUI/Avalonia/pull/19075
Fixes
- Core – Extend dirty rect when UseLayoutRounding=false by @MrJul in https://github.com/AvaloniaUI/Avalonia/pull/18511
- Core – Properly handle in cluster ShapedBuffer split by @Gillibald in https://github.com/AvaloniaUI/Avalonia/pull/19090
- Controls – Reverse TickBar when Slider direction is reversed by @zrt2399 in https://github.com/AvaloniaUI/Avalonia/pull/19096
- Android – Better api level detection for display edge to edge and ignore system bar color changes if on api level 35 by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19034
- Android – Fix oversight with display edge to edge detection for android 16 by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19067
- Android – Revert changes preventing status bar theme from being updated by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19076
- Android – Reset android input method focus and connection state when text input focus is removed by @emmauss in https://github.com/AvaloniaUI/Avalonia/pull/19083
- macOS – SuggestedStartLocation is not set if the FileTypeChoices is not null by @Whiletru3 in https://github.com/AvaloniaUI/Avalonia/pull/19036
- macOS – Respect info.plist values for setActivationPolicy by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19066
- macOS – Add shouldResize value to SetWindowState, don't resize on Window move by @drasticactions in https://github.com/AvaloniaUI/Avalonia/pull/19088