Repository navigation
Releases
Releases · AvaloniaUI/Avalonia
12.1.5
What's Changed
Enhancements
- Core – Refresh indexer bindings on
Item[]andItem[key]notifications by @Evan260 in #22227 - Core – Resolve Bidi W2 strong context in one forward pass by @spicelogic in #22545
- Core – Update XML comments in
ICustomHitTestby @luke-whos-here in #22557 - Controls – Expose
TextPresenter.CursorRectangleas a public property by @theworker02 in #22319 - Controls – Implement
IExpandCollapseProvideronTreeViewItemAutomationPeerby @grokys in #22565 - Controls – Relax
DrawerPage/NavigationPageBordertemplate parts toDecoratorby @rabbitism in #22621 - Controls – Use ordinal key comparison in Fluent theme resource providers by @maxkatz6 in #22631
- Windows – Make
BeginMoveDragandBeginResizeDragwork with touch by @Evan260 in #22229 - Windows – Allow Alt+Space to open the system menu by @caesay in #22520
- macOS – Implement
accessibilityActivationPointon automation elements by @jeff377 in #22548 - Wayland – Report popup positions by @kekekeks in #22291
Fixes
- Core – Support
StylableElementfor styles insideContainerQueriesby @OleRoss in #22167 - Core – Make
AssemblyDescriptorResolvercache thread-safe by @avinashcodelabs in #22352 - Core – Fix
Tappedwhen target moves by @Evan260 in #22427 - Core – Require the same button for both clicks of a double tap by @Evan260 in #22429
- Core – Fix
TextLayout.HitTestPointIsInsidefor multi-line and aligned text by @sean-reed in #22433 - Core – Make
Typeface.Normalizetolerate repeated and trailing whitespace in a font family name by @EremexBot in #22487 - Core – Fix a crash when a control moves to another top level during layout by @Evan260 in #22491
- Core – Align
Dispatcherto the platform clock with an offset by @George-Payne in #22496 - Core – Fix NRE when the application shuts down while showing the main window by @mfkl in #22497
- Core – Fix Skia path bounds races and disposed stroke cache reuse by @hez2010 in #22504
- Core – Fix paragraph end handling in bidirectional text lines by @Gillibald in #22553
- Core – Limit the line break search to the reach of the current line by @Gillibald in #22554
- Core – Stop
AvaloniaListfrom throwing when asked whether it contains an invalid item by @TomEdwardsEnscape in #22577 - Core – Fix concurrent
FallbackStorageProvidercalls failing after the first success by @izakusilov in #22596 - Core – Use ordinal comparisons for pseudoclass checks and
IterationCount.Parseby @hazeliscoding in #22604 - Core – Dispose the buffer
ShapeTogethersplits between its runs by @hazeliscoding in #22626 - Controls – Don't change page in
TabbedPageif focus is owned by a child element by @emmauss in #22337 - Controls – Keep focus in the text box when an
AutoCompleteBoxitem is picked by @Evan260 in #22356 - Controls – Don't use a control's type name as the automation name of
ContentControlby @glennawatson in #22378 - Controls – Fix menu auto closing when reopened by @MrJul in #22399
- Controls – Fix
ComboBox.WrapSelectionwhen there is nothing to select by @NLick47 in #22423 - Controls – Fix
PipsPagerlist sizing and scroll offset reset when page count changes by @austinaviv in #22426 - Controls – Clear the
ComboBoxpressed state when it loses pointer capture by @Evan260 in #22428 - Controls – Fix title bar text by @Evan260 in #22455
- Controls – Click a button on a space key up only if it was pressed by @Evan260 in #22456
- Controls – Fix
Popup.InheritsTransformusing the X scale for the Y axis by @jeff377 in #22457 - Controls – Don't expose a masked
TextBox's text through its automation peer by @jeff377 in #22458 - Controls – Fix
Windowarrange when its size is platform constrained by @MrJul in #22488 - Controls – Make the keyboard work inside a picker popup by @Evan260 in #22489
- Controls – Make
CommandBaroverflow scrollable in both themes by @masonliiu in #22556 - Controls – Backport some
ColorPickerFluent2 theme fixes/updates to older themes by @robloo in #22578 - Controls – Fix several
ColorPickerissues by @robloo in #22579 - Controls – Fix always true condition in
VirtualizingStackPanel.RealizeElementsby @izakusilov in #22595 - Controls – Use
SetCurrentValuein automation peers by @MrJul in #22608 - Controls – Make the
Calendarwait for a whole wheel notch before stepping by @hazeliscoding in #22609 - Controls – Fix popups with pointer placement not resizing when their content grows by @Om-singhaI in #22624
- Windows – Fix
GetDpiForMonitorP/Invoke return type (x86 ignored DPI scaling) by @hamitturkukaya in #22419 - Windows – Accept a combination of media in the Win32 OLE data object by @AtakanUk in #22531
- Windows – Return immediately from
IInvokeProvider.Invokeby @MrJul in #22562 - Windows – Fix
Screen.DisplayNamealways being null by @izakusilov in #22593 - macOS – Fix crash when a live region's text is cleared by @jeff377 in #22463
- macOS – Report context menus as
AXMenuby @jeff377 in #22517 - macOS – Allow setting
AXFocusedonly on keyboard-focusable elements by @jeff377 in #22532 - macOS – Bump
MACOSX_DEPLOYMENT_TARGETto 12.0 by @maxkatz6 in #22633 - X11 – Add windows to AT-SPI on the UI thread after the server starts by @glennawatson in #22379
- X11 – Use 32-bit visual for EGL alpha configs on Mesa without
EGL_MESA_x11_native_visual_idby @kekekeks in #22452 - X11 – Implement
IDispatcherImplWithExplicitBackgroundProcessingand some restructure ofX11PlatformThreadingby @kekekeks in #22453 - X11 – Re-read the window position after reparenting by @grokys in #22555
- Linux – Report removed and added children in
children-changedsignals by @glennawatson in #22398 - Linux – Fix unobserved task exception at exit from
DBusTextInputMethodBase.Disposeby @izakusilov in #22594 - Linux – Fix X11 keycode conversion for IBus by @kekekeks in #22625
- Linux – Report popups with the window role by @grokys in #22641
- Linux – Report the active state only for the active window by @jmacato in #22642
- Android – Fix #22420:
ACTION_SET_TEXTshould replace text, not append by @PreetRajput in #22435 - iOS – Keep the keyboard up when focus moves between text boxes by @NicholasLachapelle in #22529
- Browser – Fix WASM MT on .NET 11 runtime by @maxkatz6 in #22444
- Browser – Use Command-based hotkeys on Apple platforms by @maxkatz6 in #22468
Full Changelog: 12.1.4...12.1.5
12.1.4
What's Changed
Enhancements
- Core – Make
DiagnosticTextRenderernumbers monospace by @qwertychouskie in #21860 - Controls – Release the
TextBlocktext layout when the control is detached by @ronnycohen in #22281 - Controls – Implement expand/collapse and invoke for
MenuItemautomation by @grokys in #22295 - Windows – Gate per-monitor DPI on
GetDpiForMonitoravailability by @Davide244 in #22299 - Wayland – Add
AppIdinWaylandPlatformOptionsandWaylandPropertiesby @Whiletru3 in #22209
Fixes
- Core – Fix showing ellipsis when word wrap and limited by height or
MaxLinesby @appel1 in #22025 - Core – Stop radial gradients with a moved origin from hiding the background by @Evan260 in #22241
- Core – Fix duplicate insertion of shared
StyleInstanceinto the sameValueStoreby @DamirLisak in #22276 - Core – Fix bidi explicit formatting after reset by @George-Payne in #22288
- Core – Revert "Fix
StreamGeometryCloneandOpenwhen aTransformis set (#22213)" by @MrJul in #22294 - Core – Fix
StreamGeometryCloneandOpenwhen aTransformis set by @Evan260 in #22303 - Core – Fix re-attaching a child visual cleared on detach by @Gillibald in #22334
- Core – Return empty text bounds for zero-length ranges by @adirh3 in #22344
- Core – Fix keyboard focus staying on a removed element when an overlay popup or flyout closes by @dariostrm in #22345
- Core – Release detached visuals from a stopped
CompositingRendererby @NathanDrake2406 in #22369 - Core – Fix
RunIndexmapping inBidiReordererby @niksedk in #22384 - Core – Fix comments for
PreciseArcToby @robloo in #22402 - Core – Fix
Arccalculation and updateArcSegmentcomments by @robloo in #22404 - Core – Fix
ArgumentNullExceptionin chrome hit test after window close by @AtakanUk in #22409 - Controls – Report deselected items and batch
SelectAllinTreeViewby @Evan260 in #22172 - Controls – Fix caret position with centered text by @chenjt2001 in #22340
- Controls – Batch
TextBoxselection notifications during text replacement by @adirh3 in #22343 - Controls – Invalidate
Polygon/Polylinegeometry when the points collection changes by @Gobidev in #22346 - Controls – Hide text selection handles when text presenter visibility changes by @emmauss in #22348
- Controls – Keep the
CalendarDatePickerdrop-down open when focus returns to it by @Evan260 in #22354 - Controls – Apply
IsSelectedfrom items declared in XAML by @Evan260 in #22363 - Controls – Keep the initial position of a
Popupwith pointer placement mode when its size changes by @emmauss in #22366 - Controls – Fix
ButtonandMenuItemleak when a style setsCommandby @NathanDrake2406 in #22367 - Controls – Update
NativeMenuItemenabled state whenCommandParameterchanges by @NathanDrake2406 in #22368 - Controls – Allow Shift+Tab out of
CalendarDatePickerby @NathanDrake2406 in #22370 - Controls – Do not measure
TextBlockembedded controls during a render pass by @Gillibald in #22394 - Controls – Fix support for
HorizontalAlignmentinColorPickerby @robloo in #22401 - Windows – Drive Win32 composition effects from
RenderTargetSceneInfoon the render thread by @kekekeks in #22114 - Windows – Read automation providers on the UI thread in Win32 automation by @Evan260 in #22237
- Windows – Fix stale screen information in tray-only Win32 apps by @Cuptu in #22374
- Linux – Expose heading and list metadata over AT-SPI by @glennawatson in #22383
- Browser – Install dispatcher sync context in JS export callbacks by @kekekeks in #22293
Full Changelog: 12.1.3...12.1.4
12.1.3
What's Changed
Enhancements
- Core – Handle
DataValidationErrornotifications returned byConvertBackby @Evan260 in #22171 - Core – Make word segmentation linear in the length of a regional indicator run by @Gillibald in #22197
- Core – Implement
TopLevel.OpenedPopupsby @maxkatz6 in #22074 - Controls – Ignore child margins when positioning a popup by @MrJul in #21856
- Controls – Add
TableViewColumn.IsVisibleproperty by @OleRoss in #22162 - Windows – Support shell virtual files in drag and drop by @YoshihiroIto in #21907
- Headless – Enable popups by @kekekeks in #21889
- Headless – Use
MouseDevice.Primaryfor consistency with desktop platforms in #22008 - Headless – Add touch input simulation by @kekekeks in #22084
Fixes
- Core – Cache synthetic/nearest glyph typefaces under the requested family name by @ronnycohen in #21993
- Core – Fix
AssemblyDescriptorResolver.GetAssemblyto not throwCultureNotFoundExceptionby @AhtenYa in #22137 - Core – Match font family names case-insensitively by @Gillibald in #22163
- Core – Fix
SplineEasingconstructor overwritingY1instead of settingY2by @Shirasagi0012 in #22169 - Core – Short-circuit a null-conditional operator after a cast by @Evan260 in #22174
- Core – Fix
StreamGeometryCloneandOpenwhen aTransformis set by @Evan260 in #22213 - Core – Yield from dispatcher more eagerly during shutdown by @kekekeks in #22240
- Controls – Make fullscreen reveal bar non-draggable by @massimopaganigh in #21548
- Controls – Fix
TrayIconattachment lifecycle by @Linlccc in #22118 - Controls – Rebuild
TextBlocktext runs only when the content changes by @Gillibald in #22149 - Controls – Fix
DateTimePickerPanelItemHeightupdates by @zrt2399 in #22158 - Controls – Fix
ListBoxghost items by @timunie in #22165 - Controls – Fix
CalendarDatePicker.Focus()not focusing the text box by @Evan260 in #22170 - Controls – Measure the caret outside the text layout getter by @Gillibald in #22176
- Controls – Fix crash when switching themes by @timunie in #22189
- Controls – Keep the selection when right-clicking below the text in
SelectableTextBlockby @Evan260 in #22212 - XAML – Allow casting to a nested type in a binding path by @Evan260 in #22173
- XAML – Run
GenerateAvaloniaResourcesbefore_InjectAvaloniaAdditionalFilesby @Evan260 in #22175 - Windows – Fix UIA selection never reaching the client by @grokys in #22151
- Windows – Throw from
BeginMoveDragbefore posting the drag by @Evan260 in #22228 - macOS – Fix accent color not respecting the current theme by @MrJul in #22143
- macOS – Fix an issue when
WindowTransparencyLevelis set toAcrylicBlurby @Linlccc in #22144 - macOS – Dispose COM platform object on native app termination by @MrJul in #22200
- macOS – Make sure child window layer is not lower than parent window by @maxkatz6 in #22221
- X11 – Fix
LeaveWindownot raised with software rendering by @MrJul in #22120 - X11 – Send a synthetic
UnmapNotifywhen hiding a window by @liu-xindi in #22135 - X11 – Fix use-after-free from non-idempotent
SmcCloseConnectionby @hartmark in #22190 - X11 – Fix default window size being scaled twice on HiDPI screens by @grokys in #22255
- Wayland – Fix scroll axis units by @George-Payne in #22207
- Wayland – Properly report desktop scaling as 1 by @kekekeks in #22245
- Wayland – Don't set
O_NONBLOCKonPipe2Streamunconditionally by @MrJul in #22248 - Linux – Fix duplicated and crashing DBus tray icon by @bolikcraft in #21980
- Browser – Fix undisposed
PointerEventJSObjecton pointer move by @appel1 in #22112 - Headless – Fix headless session startup and disposal races by @PrzemyslawKlys in #22222
Full Changelog: 12.1.2...12.1.3
11.3.22
11.3.21
What's Changed
Fixes
- Core – Fix init order of
SetupWithClassicDesktopLifetimeby @MrJul in #21954 - macOS – Fix
keyDownevent handling for input methods by @Gillibald in #21906 - X11 – Fix
LeaveWindownot raised with software rendering by @MrJul in #22120
Full Changelog: 11.3.20...11.3.21
12.1.2
What's Changed
Enhancements
- Core – Preserve current
Animationprogress ifSpeedRatioorPlaybackDirectionchanges by @timiimit-tam in #19830 - Core – Add
TextInputOptions.HintLocalesby @kerams in #21528 - Controls – Implement
VerticalContentAlignmentforDatePickerandTimePickerby @JoaoMSSCruz in #21464 - Controls – Add
:emptypseudoclass forContentControlby @zrt2399 in #21829 - Controls – Propagate
Popup.IsHitTestVisibletoIPopupImplto skip hit-testing popups on the OS level if available by @kekekeks in #21916 - Controls – Add
Contentattribute toContentPresenterby @zrt2399 in #21997 - Controls – Don't build the selected text just to check whether a selection exists by @NathanDrake2406 in #22100
- macOS – Enable picking
.app-packages as a folder by @jakobhellermann in #21925 - Linux – Select a KMS-capable DRM card automatically by @Illustar0 in #21923
- Android – Support
TextInputOptions.IsSensitiveandContentTypePin by @dariostrm in #22110 - iOS – Implement VoiceOver support by @IsaMorphic in #18016
Fixes
- Core – Fix
GeometryBuilder.DrawRoundedCornersRectangleforRectby @robloo in #21482 - Core – Fix Vulkan image layout in GPU interop by @nateglasser in #21787
- Core – Fix
ServerCompositionDrawingSurfaceorphaning GPU snapshots when an update is processed afterDisposeby @ddunham121 in #21876 - Core – Fix
Loadedevent processing after a handler throws by @NathanDrake2406 in #21877 - Core – Keep transform playback in sync when hidden by @NathanDrake2406 in #21896
- Core – Fix vector geometry anti-aliasing regression by making stencil buffers opt-in by @NathanDrake2406 in #21899
- Core – Fix
AccessKeyHandlerwhen no descendant control has focus by @AutumnYuanc in #21920 - Core – Ensure that
ActualThemeVariantalways has a proper value by @MrJul in #21930 - Core – Fix init order of
SetupWithClassicDesktopLifetimeby @MrJul in #21954 - Core – Raise
TopLevel.Closedfrom managedDisposepaths by @kekekeks in #22045 - Core – Ignore default ignorable codepoints in font fallback by @Gillibald in #22059
- Core – Justify word gaps that fall on a run boundary by @Gillibald in #22065
- Core – Snap a right-to-left buffer split to the cluster boundary by @Gillibald in #22066
- Core – Do not shape the space after fallback text with the fallback font by @Gillibald in #22067
- Core – Use effective capturer (which can be recognizer) for
PlatformCaptureby @kekekeks in #22076 - Core – Short-circuit the binding chain on a null-conditional operator by @grokys in #22082
- Core – Fix dispatcher frame capturing wrong dispatcher by @kekekeks in #22086
- Core – Fix memory leak when binding to observables by @grokys in #22097
- Core – Fix data validation errors not showing for
OneWayToSourcebindings by @grokys in #22103 - Core – Fix focus being locked when restoring focus to a control that's detached from the visual tree by @emmauss in #22113
- Core – Fix infinite loop when a text run shapes to no glyphs by @Gillibald in #22119
- Controls – Fix
SelectableTextBlockselection for centered and right-aligned text by @zrt2399 in #21369 - Controls – Use large scroll events for
ScrollBar'sScrollToHomeandScrollToEndby @zrt2399 in #21748 - Controls – Hide cached focused items in
VirtualizingStackPanelby @NathanDrake2406 in #21835 - Controls – Set the
LogicalParentof theTableViewColumnby @OleRoss in #21840 - Controls – Disconnect template descendants hosted inside
Viewboxwhen the template changes by @NathanDrake2406 in #21879 - Controls – Fix
SelectableTextBlockselection when text content changes by @zrt2399 in #21894 - Controls – Fix
TreeViewItem.BringIntoViewby @MrJul in #21918 - Controls – Use
ItemTemplateforComboBox's selection box for controls by @MrJul in #21937 - Controls – Fix
WrapPanellayout jitter withLineSpacingby @zrt2399 in #21942 - Controls – Fix tooltip flickering by @MrJul in #21965
- Controls – Fix
VirtualizingStackPaneloffset when scrolling to variable-sized items by @zrt2399 in #21975 - Controls – Update
TabbedPage.xamlcolor resources by @smaicas in #21994 - Controls – Fix multiple
ScrollContentPresenter.BringDescendantIntoViewcalls by @MrJul in #22001 - Controls – Fix icon not rendered for
CalendarDatePickerin some cases by @timunie in #22012 - Controls – Fix
VirtualizingStackPanelScrollToEndwith variable-sized items by @zrt2399 in #22014 - Controls – Fix
TextBlockellipsis not showing withTextWrappingandMaxLinesby @puk06 in #22017 - Controls – Show the
RefreshContainerrefresh indicator when refresh is triggered programmatically by @emmauss in #22020 - Controls – Fix
DatePickerandTimePickerseparator alignment withVerticalContentAlignmentby @zrt2399 in #22023 - Controls – Invalidate image measure when
DrawingImagesource invalidates by @emmauss in #22028 - Controls – Fix light dismiss behavior when opened from the
ContextMenuby @Linlccc in #22037 - Controls – Handle clipboard exceptions in
TextBox/SelectableTextBlockby @MrJul in #22052 - Controls – Revert "Stop
HotKeyManagerfrom triggering on hidden controls" by @grokys in #22071 - Controls – Fix auto-sized
VirtualizingStackPanelnot rendering by @MrJul in #22081 - Controls – Fix crash when changing source during
SelectionChangedby @grokys in #22102 - Windows – Drop dead
WM_POINTERDEVICEINRANGE/WM_POINTERDEVICEOUTOFRANGEhandling by @kekekeks in #22046 - Windows – Fix pointer capture cancellation by @kekekeks in #22054
- Windows – Fix hidden
TrayIconappearing after icon updates by @Linlccc in #22125 - macOS – Keep window creation on-screen during display reconfiguration by @brianwphamSF in #21543
- macOS – Fix
NSTextInputClientrange handling and null dereference issues by @Gillibald in #21885 - macOS – Open a submenu when its parent menu item is clicked by @AntonZelinsky in #21890
- macOS – Fix
keyDownevent handling for input methods by @Gillibald in #21906 - macOS – Use
NSTrackingInVisibleRectfor mouse movement tracking by @drasticactions in #21996 - macOS – Prevent title bar flash on fullscreen exit by @Illustar0 in #22101
- X11 – Fix
AVALONIA_SCREEN_SCALE_FACTORShandling by @lindexi in #22129 - Wayland – Handle (0,0) surface size by @MrJul in #21863
- Linux – Fix wrong escaping on
xdg-openby @ReinaS-64892 in #21936 - Linux – Free native DRM resources after enumeration by @Illustar0 in #21924
- Android – Fix multiline
TextBoxcaret staying on previous line after autocorrect + Enter by @Zeljko-Predjeskovic in #21900 - Android – Fix
TryGetFileFromPathAsync/TryGetFolderFromPathAsyncreturning null forcontent://URI by @lfeng1420 in #21986 - Android – Unregister automation peers when their control leaves the visual tree by @ronnycohen in #2202...
11.3.20
What's Changed
Fixes
- macOS – Fix
NSTextInputClientrange handling and null dereference issues by @Gillibald in #21885
Full Changelog: 11.3.19...11.3.20
11.3.19
What's Changed
Enhancements
- Core – Propagate
Popup.IsHitTestVisibletoIPopupImplto skip hit-testing popups on the OS level if available by @kekekeks in #21916
Fixes
- XAML – Don't include non-text files in Roslyn's
AdditionalFilesby @maxkatz6 in #21729 - X11 – Fix active window tracking by @kekekeks in #21846
Full Changelog: 11.3.18...11.3.19
12.1.1
What's Changed
Enhancements
- Controls – Add
ToolTip.ShouldUseOverlayLayerattached property by @rabbitism in #21830 - XAML – Allow single parameter with any type when binding to a method by @MrJul in #21867
- Wayland – Add
UseWaylandWithFallbackby @kekekeks in #21734 - Android – Expose
AutomationIdas resource-id for Android automation by @stevemonaco in #21780
Fixes
- Core – Fix
Dispatcher.ReplaceImplementationby @kekekeks in #21735 - Core – Reapply cached binding source values during
UpdateTargetby @NathanDrake2406 in #21756 - Core – Fix custom-hit-test optimization by @kekekeks in #21769
- Core – Detach platform input when presentation source closes by @NathanDrake2406 in #21782
- Core – Fix line break enumerator infinite loop by @rabbitism in #21808
- Core – Fix EGL surface recreation after native handle changes by @AB901 in #21816
- Core – Fix stale
_usedCachevalue that wasn't reset properly in compositor by @kekekeks in #21823 - Core – Properly wire
CompositionInterop.IsLostby @kekekeks in #21824 - Core – Preserve lines at rounded fractional heights by @NathanDrake2406 in #21834
- Controls – Correct nested
TreeViewItemselection behaviour on pointer release by @TomEdwardsEnscape in #21705 - Controls – Fix some issues on
SelectingItemsControlswhen items or control changes visibility by @timunie in #20798 - Controls – Stop
HotKeyManagerfrom triggering on hidden controls (#21708) by @1419323749 in #21714 - Controls – Fix
SplitViewstealing BackRequested when its pane is closed (#21740) by @gentledepp in #21741 - Controls – Fix
CommandBarsecondary visibility during overflow open by @NathanDrake2406 in #21742 - Controls – Fix
AutoCompleteBoxpopup not closing on focus lost by @MrJul in #21749 - Controls – Position popup using the screen containing the anchor point by @MrJul in #21750
- Controls – Keep page in
NavigationPage's logical tree until animation is complete by @MrJul in #21751 - Controls – Fix
SimpleThemefocus adorner contrast in dark mode by @iamvalenciia in #21753 - Controls – Fix
ComboBoxdropdown not scrolling to selected item when opened by @zrt2399 in #21764 - Controls – Allow
Gridshared size groups to shrink by @NathanDrake2406 in #21837 - Controls – Fix
ListBoxcrash when scrolling after item removal by @NathanDrake2406 in #21838 - Controls – Clear
TextBoxundo history on external text updates by @NathanDrake2406 in #21839 - Controls – Register
Gridassigned definition collections with their shared size group by @NathanDrake2406 in #21848 - Controls – Initialize
TextBoxcommand states in constructor by @zrt2399 in #21859 - Controls – Fix infinite loop in tab stop search with
TabNavigation=Onceby @maggch97 in #21864 - Controls – Handle
Paddingcorrectly inScrollContentPresenterby @MrJul in #21872 - XAML – Respect disabled Avalonia name generator by @mklts in #21804
- XAML – Support
{Binding ^}pattern forIObservableDataContextby @rabbitism in #21812 - Windows – Fix Vulkan popup transparency by @the-bla in #21802
- macOS – Fix IME preedit lost on focus change by @hyunq21 in #21601
- macOS – Fix off-thread accessibility hit-test crash by @VicChelaru in #21779
- macOS – Fix app activation by @JakobScholer in #21799
- X11 – Fix active window tracking by @kekekeks in #21846
- X11/Wayland – Fix
DBusPlatformSettingsNullReferenceExceptionby @pos777 in #21831 - Wayland – Report disposed
WaylandEglWsiSurfacerender target by @MrJul in #21857 - Wayland – Destroy transient framebuffer SHM pools by @jmacato in #21870
- Android – Fix multiline
TextBoxIME offsets by @AlexSCcon in #21680 - iOS – Block external roles from activating
UISceneby @drasticactions in #21844 - Headless – Fix headless session hang when cleanup throws by @NathanDrake2406 in #21781
Full Changelog: 12.1.0...12.1.1
12.1.0
General
Read our release blog post for more information about new features in Avalonia 12.1.0!
What's Changed
Enhancements
- Core – Allow setting
ThemeVarianttoDefaultto reset theme to system on android by @emmauss in #16340 - Core – Allow
Dispatcherto be converted to aTaskSchedulerby @TomEdwardsEnscape in #21032 - Core – Remove obsolete int32 limit on
DispatcherTimer.Intervalby @TomEdwardsEnscape in #21113 - Core – Bump MicroCOM and use source generators by @maxkatz6 in #21218
- Core – Improve composition hit testing performance with per-visual AABBs by @hez2010 in #21310
- Core – Tests/render data drawing context coverage by @ZehMatt in #21341
- Core – Align Touch/Pen capture semantics with Mouse (#21325) by @miloush in #21363
- Core – Refactor per-draw render data allocations with a binary opcode stream by @ZehMatt in #21366
- Core – Allow attaching a platform-specific event cookie to platform events by @kekekeks in #21378
- Core – Pass original logical size to render targets by @kekekeks in #21380
- Core – Pass shadow extents to the platform by @kekekeks in #21385
- Core – A bit better handling of gpu context loss by @kekekeks in #21387
- Core – Platform event to toggle drawn decorations state by @kekekeks in #21388
- Core – Use
eglGetProcAddressinstead ofNativeLibrary.TryGetExportby @kekekeks in #21392 - Core – Support desktop OpenGL profiles via EGL by @kekekeks in #21393
- Core – Implement
IStorageProvider.OpenFileWithResultAsyncby @MrJul in #21418 - Core – Implement
Bitmap.Savewith a format by @MrJul in #21455 - Core – Disable region dirty rect clipping by default by @MrJul in #21553
- Core – Enable stencil buffers by default + add configurable option by @MrJul in #21586
- Core – avoid
SKBitmap.Copywhen creatingImmutableBitmapfrom pixels by @kekekeks in #21675 - Core – Generate a CycloneDX SBOM per published NuGet package by @grokys in #21681
- Core – Composition-aware geometries and drawing change detection by @MrJul in #21682
- Controls – Improve pull-to-refresh usability in
RefreshContainerby @gentledepp in #18617 - Controls – Add
ScrollbarContext Menu by @drasticactions in #19413 - Controls – Add custom
CalendarDatePickerdate parsing to allow for multiple user input formats by @Deadpikle in #21193 - Controls – Implement
TableViewby @MrJul in #21511 - Controls – Show checkerboard background for transparent ColorView palette items by @Jaex in #21613
- Controls – Allow copying and cutting revealed TextBox passwords by @zrt2399 in #21710
- Windows – Optimize rendering performance by reducing premultiplied AlphaMode by @lindexi in #20757
- Windows – Create
Avalonia.WinUIfor initial WinUI embed support by @drasticactions in #21430 - Windows – Implement
Win32Properties.WindowCornerPreferenceby @MrJul in #21615 - Windows – Support rendering at max refresh rate of current displays by @emmauss in #21643
- Windows – Let
GraphicsAdapterSelectionCallbacksee unfiltered adapters and warn on Adreno WARP fallback by @nickna in #21695 - X11 – Implement automatic fps detection by @kekekeks in #18558
- X11 – Implement XDND: drag-and-drop support for Linux by @MrJul in #20926
- X11/Wayland – Update to latest
Tmds.DBus.Protocolby @tmds in #21472 - X11/Wayland – Better platform window handle abstraction for
DBusSystemDialogby @kekekeks in #21379 - X11/Wayland – Introduce cross-thread support for
AutomaticRawEventGrouperDispatchQueueby @kekekeks in #21386 - X11/Wayland – Workarounds for NVIDIA EGL drivers by @kekekeks in #21590
- Wayland – Wayland-specific handling for platform surface readiness by @kekekeks in #21382
- Wayland – Roslyn generator for generating cross-thread call proxies by @kekekeks in #21384
- Wayland – Wayland protocol support by @kekekeks in #21448
- Wayland – Added GLib event loop support to wayland backend by @kekekeks in #21669
- Android/iOS – Add platform feedback api for sound and haptic feedback by @emmauss in #21189
- Android – Use BCL storage for
TryGetapi by @emmauss in #21641
Fixes
- Core – Remove dead code in
AvaloniaObjectby @grokys in #21452 - Core – Fix text selection brush not applying when text selection changes by @emmauss in #21480
- Core – Fix
RequestedThemeVariantdefault value by @MrJul in #21624 - Core – Rework text fallback itemization by @Gillibald in #21631
- Core –
InterWordJustificationfixes by @Gillibald in #21701 - Core – Fix
BclLauncher.Execthrowing instead of returning false by @Misaka-L in #21704 - Controls – Return false by default from
FocusManager.CanHaveFocusableChildrenby @freddiesmartbox in #21640 - Controls – Fix
SelectableTextBlockselection offset withInlineUIContainerby @JoshuaRowePhantom in #21646 - Controls – Fix
PART_OnContentPresentername typo inToggleSwitchby @zrt2399 in #21728 - XAML – Compiled Bindings: Fix unpredictable binding to method selection by @maxkatz6 in #21617
- XAML – Don't include non-text files in Roslyn's
AdditionalFilesby @maxkatz6 in #21729 - Windows – Fix
TopMosthandling for Popups by @StefanKoell in #17841 - Windows – Support decimal in automation
ComVariant(fixesNumericUpDowncrash under UIA) by @valentino-saitz-optris in #21634 - Windows – Respect IME preedit cursor position by @gotoh in #21632
- Windows – Align
ExpandCollapseStatemember order with UIA by @jmacato in #21693 - Windows – Fix working area changed won't update screen by @Misaka-L in #21707
- Windows – Fix empty automation bounds for custom root providers by @jmacato in #21730
- X11 – Fix mishandled cancellation in
DBusTextInputMethodBaseby @deryaza in #21527 - X11 – Re-read
_NET_WORKAREAon WMPropertyNotifyby @lambgoesbaa in #21651 - X11 – Fix XEmbed client by @kekekeks in #21677
- Android – TalkBack should still respond to all hover events by @IsaMorphic in #21644
- Android – TalkBack should highlight controls instead of their ancestors by @IsaMorphic in #21654
- Android – Fix crash populating accessibility node for some peers by @mikegoatly in #21726
- Android – Fix AvaloniaView double root creation by @MrJul in #21738
- Browser – Fix typo:
verityPermissions->verifyPermissionsby @Frederisk in #21281 - Headless – Fix hang if exception is thrown during headless session app construction by @ThadHouse in #21688
Misc
- Samples – Update ControlCatalog to use the Page system by @emmauss in #21044
- Samples – Fix OpenGL Lease page not showing in ControlCatalog by @MrJul in #21198
- Samples – Improve ControlCatalog sidebar search by @jsuarezruiz in #21236
- Samples – ControlCatalog: improve transparent appearance by @MrJul in #21441
- ...