11.2.0-beta1
Pre-release
Pre-release
We are currently switching to 3-months release cycle starting with 11.2.
And as you all can see, 11.2 branch already has a lot of improvements over 11.1 release this summer.
What's Changed
Features
- Implement
BindingOperations.GetBindingExpressionBase
by @grokys in #16214 - Screens API refactor by @maxkatz6 in #16295
- XAML x:Shared support by @workgroupengineering in #16644
- PolyBezierSegment Geometry by @workgroupengineering in #16664
- Improve TextTrimming customization experience by @Gillibald in #16521
- New ToolTipClosing, ToolTipOpening attached events and ToolTip.Opened, ToolTip.Closed by @maxkatz6 in #15493
- Custom popup placement callback by @maxkatz6 in #15667
- Avalonia.Native TopLevel embedding by @Gillibald in #15932
- feat: Every RoutedEvent should be usable as Attached Event by @workgroupengineering in #15274
- Refactored WASM rendering, added MT support for dispatcher by @kekekeks in #15709
- MacOS sandboxing feature by @maxkatz6 in #16090
- Avalonia single project support by @maxkatz6 in #9613
- Improve DevTools previewer of setter values by including all value priorities by @maxkatz6 in #13802
- Add HotKeys Page to DevTools by @stevemonaco in #15700
- Add Close and ClearAll api for INotificationManager and IManagedNotificationManager by @wieslawsoltes in #15628
- Add dedicated automation peers for TreeView and TreeViewItem by @wieslawsoltes in #15653
- Implementing IFormattable on KeyGesture by @IanRawley in #15828
- DataGrid: expose row index by @rabbitism in #15909
- Adds support for Seconds to TimePicker by @begleysm in #16079
- Add an overload for ClassicDesktopStyleApplicationLifetime by @NeverMorewd in #16167
Fixes
Expand
- Fix TemplateBinding and allow custom attributes in XamlValueConverter by @maxkatz6 in #14612
- Notify window on mouseEntered (mac only) by @ltetak in #15251
- Fix nth child selector in data grid header by @appel1 in #15482
- Win32 - Fix EntendClient hints not being applied window show by @emmauss in #15552
- X11Window should probably ignore X11 grab focus events by @walterlv in #15686
- Try to normalize family names for embedded fonts by @Gillibald in #15703
- Propagate Dispose from GlyphTypefaceImpl to dispose SkTypeface by @lindexi in #15733
- Don't show text selector when no text is ready by @emmauss in #15770
- More trimming fixes, enable analyzers unconditionally by @maxkatz6 in #15815
- FontManager adjustments by @Gillibald in #15819
- Fix OnColorValuesChanged not executed on the UI thread by @Bezolt in #15827
- [Text] Multiple text processing fixes by @Gillibald in #15837
- Translate glyphRun bounds by the baseline origin by @Gillibald in #15839
- Apply Alignments to TileBrushes with uniform stretch by @emmauss in #15846
- [Text] Fix glyph offsets by @Gillibald in #15848
- Remove from logical children and clear item container on reset by @Meloman19 in #15855
- macOS: Don't include two windows in a11y tree. by @grokys in #15899
- Fix gesture event names by @wieslawsoltes in #15931
- [X11] Ensure XSync before calling CreateNativeControlCore by @kekekeks in #15952
- Fix #15955 by @nil4 in #16005
- Fix some issues with strokeless geometry segments by @grokys in #16019
- Fix tile mode used in SkShader for a TileBrush with None TileMode by @emmauss in #16021
- Fix TrayIcon menu crash by @logiclrd in #16024
- Fix crash in TreeView when removing a node. by @doubleday in #16041
- Enhance SplitPropertyPath to conditionally handle parentheses in prop. by @Abdesol in #16054
- Fix headless window transparency by @Rosentti in #16058
- Set isDirectory:true explicitly to help [NSURL fileURLWithPath] method by @maxkatz6 in #16061
- Fix HorizontalHeadTable usage by @Gillibald in #16064
- Win32 - Ensure owner topmost flag is set if its topmost when showing a owned window by @emmauss in #16104
- TrayIcon fixes by @jmacato in #16111
- DBus init and usage fixes by @kekekeks in #16119
- Reapply (#15568) + Updates by @jmacato in #16129
- Fix datagrid performance on attached to tree by @IZIDIA in #16140
- win32: Fix edge-case bug with DPI scaling by @grokys in #16143
- Fix XML child-value syntax in Setters by @maxkatz6 in #16153
- Toplevel - Fix system theme not being applied at launch on some platforms by @emmauss in #16159
- Fix embedded TopLevel coordinate conversion by @Gillibald in #16181
- Android - Add workaround for android 11 ime insets being weird by @emmauss in #16201
- [macOS][X11] Release mouse capture when dialog shown by @grokys in #16205
- Implemented
MultiBindingExpression
by @grokys in #16219 - Set InheritsTransform on ComboBox Popup in Simple theme by @maxkatz6 in #16244
- Win32 - Fix window size and position for border only window when maximized through OS means by @emmauss in #16297
- "About Avalonia" native menu item crashes app when main window is not visible by @maxkatz6 in #16303
- [Text] Fix infinite loop hang on selection of bidi text by @Mikolaytis in #16306
- Use culture identifier instead of CultureInfo in NameTable by @BobLd in #16310
- Only update selection on focus in TabControl if focus comes from TabItem. by @grokys in #16338
- Don't BringIntoViewOnFocusChange in Carousel. by @grokys in #16339
- macOS WindowState call on Show crash fix by @jmacato in #16341
- Fix headless screens by @maxkatz6 in #16348
- Fix Popup focus stealing for embedded controls by @Gillibald in #16365
- [WinRT] Added watchdog for ICompositor5::RequestCommitAsync by @kekekeks in #16393
- Forward pointer wheel event from scrollbar to scrollviewer by @emmauss in #16398
- Always use the matched typeface's weight, style and stretch by @Gillibald in #16489
- Fix - Grow datagrid height if there's available space by @emmauss in #16527
- Fix typeface font simulations by @Gillibald in #16538
- [OpenGL] Fix #13807 - lingering glGetError from Avalonia by @Dragorn421 in #16539
- Fixup
GlxDisplay.CreateContext
by @Dragorn421 in #16540 - Fixes ShapedTextRun drawing by @Gillibald in #16545
- Apply NumericUpDown.FormatString changes immediately. by @pokorpa in #16575
- Extend the client area when a Win32 window is opened in maximised state by @TomEdwardsEnscape in #16593
- Fixes ShapedTextRun background rendering by @Gillibald in #16594
- fix: Button should not fire the click event on the space key when it is not active by @workgroupengineering in #16619
- feat(XamlX): Trim text before invoke Color.Parse by @workgroupengineering in #16649
- ColorPicker Simple Theme Fixes by @robloo in #16654
- Android - Input Connection fixes by @emmauss in #16666
- Ensure SurroundingText is empty for empty line by @MrJul in #16710
- Fix caret position after backspace by @MrJul in #16712
Miscellaneous
Expand
- Enable Metal rendering by default for iOS and macOS by @maxkatz6 in #14762
- Bump version by @maxkatz6 in #14871
- Simplify two if blocks into one by @heku in #14885
- Update ImageSharp to 2.1.7 by @MrJul in #14893
- Warning fixes by @MrJul in #14894
- Fix SYSLIB0051 warnings (binary serialization) by @MrJul in #14895
- Remove InternalsVisibleTo from Avalonia.Base to ControlCatalog by @MrJul in #14905
- Update readme.md by @MikeCodesDotNET in #14907
- Fix incorrect usage of ComboBox in control catalog ViewboxPage by @gehongyan in #14972
- Move ItemsRepeater to a dedicated repository by @maxkatz6 in #14989
- Switch version -beta to -alpha for nightly builds by @maxkatz6 in #14993
- Don't get the composition animation system involved in every property read by @kekekeks in #15110
- chore: remove repetitive words by @crazeteam in #15116
- Rename MobileSandbox to Avalonia.SingleProjectSandbox by @maxkatz6 in #15330
- Improve AvaloniaObject.GetValue performance by @MrJul in #15342
- ToolTip should use Popup internally + fix Popups not closing when placement target is closed by @maxkatz6 in #15358
- Add unit tests by @heku in #15367
- chore: remove repetitive words by @careworry in #15427
- Fix ncrunch configuration. by @grokys in #15440
- Add basic integration tests for NativeControlHost and improve its automation/a11y support. by @grokys in #15542
- [Windows] WindowDecorations related integration tests by @maxkatz6 in #15561
- Bump DBus stack take 2 by @affederaffe in #15685
- Respect global packages folder in BuildToNuGetCache by @MrJul in #15706
- Feature/opengl lease demo by @kekekeks in #15707
- Warning fixes: spring wave by @MrJul in #15747
- Validate all width/height properties of Layoutable when they are set by @TomEdwardsEnscape in #15753
- Nullable annotations for projects using XamlX by @MrJul in #15796
- Refactor WASM input and dom-callbacks to work with multithreading by @maxkatz6 in #15849
- chore: update comimpl.h by @eltociear in #16011
- Update readme.md by @MikeCodesDotNET in #16018
- Request for Feedback: Improving Startup Latency in X11 by @Sewer56 in #16033
- [Text] Use CultureInfo.Name instead of ISOLanguageName for character matching by @Gillibald in #16053
- Update build.md for local nuget builds by @jmacato in #16116
- Update Appium tests readme.md by @maxkatz6 in #16134
- [Text] Use GetBackspaceCaretCharacterHit for backspace delete handling by @Gillibald in #16135
- TrayIcon integration tests by @maxkatz6 in #16154
- Fixed build error: SourceRoot paths are required to end with a slash or backslash by @heku in #16174
- Revert "Reapply (#15568) + Updates" by @kekekeks in #16175
- Merge same case branches by @heku in #16182
- Fix typos by @heku in #16183
- Remove obsolete API usage from
SelectingItemsControl
. by @grokys in #16220 - Move IsDirect = true into DirectPropertyBase by @heku in #16256
- Fixed a typo by @heku in #16258
- TrayIcon tests are flacky, disable them by @maxkatz6 in #16265
- Fix BaselineAlignment by @Gillibald in #16276
- Remove old API compat baseline files by @maxkatz6 in #16305
- Update pr_labels.yml by @maxkatz6 in #16416
- chore: fix some comments by @shangchenglumetro in #16461
- Android - Refactor AvaloniaInputConnection by @emmauss in #16490
- Obsolete CompiledBindingPathBuilder.SetRawSource by @MrJul in #16505
- UWP/WinUI style XYFocus subtree restrictions by @IanRawley in #16557
- Remove System.Linq.Expressions usages in ReflectionClrPropertyInfo by @MrJul in #16568
- Increase LayoutTransformControl.DecimalsAfterRound from 4 to 8 by @BobLd in #16583
- Win32 - Fix Window Frame Size and Position issues. by @emmauss in #16608
- Android - Defer rendering till surface is created by @emmauss in #16616
- fix: SixLabors ImageSharp Out-of-bounds Write
CVE-2024-41131
by @workgroupengineering in #16620 - Changed modifiers for injected non-client implementable method by @kekekeks in #16626
- Switch to a HashSet as backing for SafeEnumerableList by @halgari in #16633
- Only add the text selection canvas when the textbox is focused by @emmauss in #16643
- Screens api refactor mobile by @maxkatz6 in #16647
- Fix typos in build messages when waiting to attach a debugger by @stevemonaco in #16701
- 11.2.x Private/PublicAPI adjustments by @maxkatz6 in #16733
Full Changelog: 11.1.3...11.2.0-beta1