github unoplatform/uno 3.11.6

latest releases: 4.1.0, 4.0.7, 4.0...
2 years ago

Uno Platform's 3.11 release ships 160+ features and bug fixes and adds support for  .NET 6 RTM with all related improvements.  

As Microsoft had announced the delay for .NET 6 support for Android and iOS, we've re-introduced Xamarin-based templates for Visual Studio 2022. Additionally, the support for preview .NET 6 Android and iOS has now been moved to 17.1 Preview 1.

In Visual Studio 2022, you'll find now two templates:

  • One named Multi-Platform App (UnoPlatform|xamarin), which uses the existing stable Xamarin "Classic". It is the same as found when using Visual Studio 2019.
  • One named Multi-Platform App (UnoPlatform|net6), which uses the .NET 6 preview support for iOS, Android, macOS and Catalyst and requires Visual Studio 17.1 preview 1.

You can setup your environment with Uno.Check 1.0.2 for Windows, macOS and Linux, which you can install as follows:

dotnet tool install -g uno.check

Then run:

uno-check

Here's a summary of the features for this release:

  • Support for VS 2022 and .NET 6 RTM
  • Drag and drop preview element support on iOS and Android
  • NumeralSystemTranslator for Arab Numeral System
  • Native pointer captures for GTK
  • FileSavePicker for Gtk
  • Support for RadioMenuFlyoutItem
  • Support for IncrementNumberRounder and SignificantDigitsNumberRounder
  • Support of GetPeerRadioAsync

As always, many thanks to our contributors:

You'll find below the full change log for this release.

Features

  • Android: Provide access to BaseActivity events from SpanningRectsExtension 23cca70
  • listview: [iOS] [Android] Support ItemsPresenter.MinHeight 486e8eb
  • vsix: Restore Xamarin template for VS2022 7fb276a
  • Add a FrameNavigationHelper to allow apps to access helper properties on Frame and its PackStackEntries 3826bf1
  • Add support for ios/android C# hot reload in net6 template 1414414
  • Add support for WinAppSDK 1.0-experimental1 31f45ea
  • GetRadiosAsync() for Android 110d466
  • implements AppMemoryUsage and AppMemoryUsageLimit for Android bd55b64, closes #5891
  • Improve generation cancellation for net5 and net6 4b612b6
  • Support Dark theme in Samples app 2f93a19
  • Border: Add ability to use GradientBrushes for BorderBrush af760ff
  • dragdrop: Add support of preview of dragged element on iOS and Android b749632
  • NumeralSystemTranslator: Implement TranslateNumerals method for Arab and ArabExt NumeralSystem value ee3e611
  • perf: Improve perf of the ObjectAnimationUsingKeyFrame 3818924
  • pointers: [GTK] Implement native pointer capture 624631a
  • VS2022: Add support for uno remote control 178f682
  • vsmac: Add support for unoapp template solution filters c240f34
  • Implement FileSavePicker for Gtk c946681
  • Implement MenuBarItemAutomationPeer ddd0bed
  • make versioned fluent resources linker friendly 52d3bcc
  • Port RadioMenuFlyoutItem 9b388c1
  • Replicates CalendarView style fixes for fluent 2 e61d99c
  • Upgrade to .NET 6 RC1 d110581
  • Vector3 XAML conversion 2aa0be9
  • IncrementNumberRounder: Implement RoundDouble Method 0fdab8e
  • SignificantDigitsNumberRounder: implement RoundDouble method e30b006

Performance Improvements

  • hotreload: Reduce the memory allocation d582d9e
  • reg: Fix performance regression in fast convert da59fc5
  • wasm: Place loaded/unloaded exception handling behind a flag 9cd9f35
  • Add the ability to disable SetTargetValue exception handling 9eb4efa
  • Additional changes to mitigate PG-AOT dotnet/runtime issue #56309 218fd00, closes #56309 #7005
  • Additional changes to mitigate PG-AOT dotnet/runtime issue #56309 ba58785, closes #56309 #7005
  • Adjust Grid, StoryBoard and VisualStatGroup enumerations 5b112e9
  • Apply various workarounds for dotnet/runtime issue #56309 5cbbec2, closes #56309
  • Remove foreach in FrameworkTemplatePool dc0bc5f
  • Remove foreach in ItemsControl.UpdateItems b34954e
  • Remove try/catch handling in OnFwElt Loading/Loaded/Unloaded 17f2e4f
  • wasm: Don't use try/finally in Grid measure/arrange fb22656

BREAKING CHANGES

  • fix!: Fix resource dictionary path handling 30f21ac
  • Source paths starting with '/' are now considered relative to project root instead of current file.

Bug Fixes

  • Fix the wasm only CalendarViewCrippledAnimationStyle for fluent v2 dd3ac57
  • animation: Fixed a problematic case where a native animation can be 'lost' if the GC is run during the duration of the animation, preventing the animation from being removed and leaving the UI in an undetermined undesired state. 81547ef
  • Border: Allow null BorderBrush to be set decb376
  • calendar: Fix CalendarDatePicker cannot be scrolled when re-opened d05bbc8
  • calendar: Fix initial scrolling state of the CalendarView 50829e8
  • DependencyObjectGenerator: Place BindableAttribute on the correct type 852265c
  • docs: Fix a few typos in VS2022 article f3e0a12
  • docs: Incorrect NuGet package name in logging.md c549ddc
  • dragdrop: Fix support of transparent control in DragUI ef0b6fd
  • effectiveviewport: [Android] The SCP is now the element flagged as ScrollHost, like on UWP 43f56d0
  • effectiveviewport: [iOS] The SCP is now flagged as ScrollHost f4b1937
  • effectiveviewport: Fix effective viewport computation 3448722
  • effectiveViewport: Make sure to raise the event when initializing multiple elements with EVP handlers 73d782d
  • HitTest: Check for Clip property for ClippingBounds 97152dd
  • ItemsControl: [Android] Adjust collection update reset for ComboBox 8581995
  • ItemsControl: avoid rebinding containers on collection change 4ed5bc4
  • ItemsControl: Fix for applying ItemContainerStyle dc7a7a9
  • listview: [Android] Correct scroll offsets if necessary when scrolling upwards in list 5e8bce5
  • listview: [Android] Fix crash on animated collection change 96cb63c
  • listview: [Android] Fix crash when animating item 7d05e4c
  • listview: [Android] Fix flicker and clipping when ListViewItem.Margin is set 7425947
  • listview: [iOS] Fix container reuse by template 868446f
  • listview: [WASM] [Skia] Correct scroll offsets if necessary when scrolling upwards in list cd74fd9
  • listview: [WASM] Support removing item while dragging 3c6e6e4
  • listview: Fix D&D UI not reporting move while reordering items 30fd8d3
  • menuflyout: Ensure MenuFlyout nested submenus stay on screen cd13998
  • perf: Do not box Point for equality check a4d673d
  • pointers: [iOS-simulator] Improve debug by starting a timer for Holding on iOS when in simulator 3c6ce3d
  • pointers: [Skia] Make sure to also release impiclit captures on pointer realease f3d53bc
  • pointers: Ensure that a manipulation cancelled by ManipStarting event is cleanup e1f5543
  • pointers: Improve relialibilty of hold gesture by always starting a timer on press when hold has been enabled. 4d18f58
  • pointers: Make sure to abort drag manipulation as soon as possible if not touch pointer 1045c76
  • pointers: Release implicit captures on manip completed d307101
  • reg: [Android] Fix application content squeezed top left 595d4ea
  • reg: ensure both net6/xamarin templates don't share ids 0f62edd
  • reg: Fix CornerRadius support on Border 9f0b463
  • reg: Fix EVP not progated on native elements 42ac6dc
  • reg: Fix EVP sometimes not propagated properly 932b82f
  • reg: Fix support of Android versions below 30 (including UI test failing on CI) 07c3d23
  • reg: Fix support of scroll offsets in ViusalTreeHelper c72890c
  • reg: Fix Viewport not updated on first load 7f2409b
  • reg: Popup light overlay's was not rendered properly c2fcd60
  • scrollviewer: [WASM] Make the SCP the "element which scrolls" (instead of the SV) ee21a4e
  • transformtovisual: [iOS] Fix TransformToVisual inside ListView 162dee5
  • [Android] LayoutSlot was including magrins and alignments 9743762
  • [Android] Window's visible bounds are incorrect 39ea361
  • Don't close ContentDialogs on showing MessageDialog cd4b9e4
  • Don't use nullable reference types in generated code b167107
  • scrollviewer: [WASM] Fix ScrollViewer incorrect offset after ChangeView() 7fddb8f
  • Fix lazy theme dictionary caching 8a43603
  • ios commandbar navigationcommand icon alignment 7497510
  • resourcedictionary: Improve performance of ResourceDictionary with not-implemented types 94aad18
  • scrollbar: Fix possible layout cycle when scrollbar is lower than the min size of the thumb ceba136
  • transformtovisual: Fix TransformToVisual on scrolled ScrollViewer df3f88d
  • viewport: Fix effective viewport adding scroll offsets twice d05ebc4
  • xBind: [Wasm] Fix invalid internal ElementStub state ef37b28
  • xBind: Fix xBind to other control without code-behind base class 76b2dba
  • xLoad: Fix x:Load nesting and ElementStub strong reference 9371f72
  • Assign ImageBrush on Android properly 118e4db
  • Convert resources to target property type in generated code 873251d
  • Reduce number of exception raised by RemoteControloClient cf45c19
  • Reduced the severity of the inconsistency message while adding/removing elements in Visual Tree on WASM. b8dfc4b
  • Respect Opacity when rendering gradient brushes b92cdd8
  • Update text according to AcceptsReturn d318146
  • xLoad: Adjust x:Load and x:Bind loading sequence a5217bf
  • Overwrite runtime tests results file if exists 9b399c3
  • wasm: Image/AcrylicBrush.AssignAndObserveBrush exception 73df35b
  • Add and apply NumberBox CommonStates 500c262
  • add missing progressbar changes in resources v2 b47e2ce
  • Add missing ProgressRing v2 style 4f23bf5
  • Adjust vsconfig to include iOS/Android workloads d262e3b
  • Apply visual states on date change cc08128
  • Changing Pivot.SelectedItem should reflect on Pivot.SelectedIndex 166e7a7
  • ComboBox WinUI 2.6 border workaround 1991964
  • Correctly change PivotHeaderItem content when PivotItem.Header changes 5a85199
  • Correctly handle whitespaces in XBind path rewriter dfeb4a5
  • Don't PreventDefault keydown event of TextBox 205e8fc
  • Don't underline HyperlinkButton if not ImplicitTextBlock c1ef8c1
  • Don't use cached value when it's no longer valid 8b94591
  • Downgrade template default to be net5.0 for VS2022 35234e8
  • Fix image flickering 9b6a8fc
  • Fix NREs in PersonPicture 876bdf1
  • Fix Selected state in PivotHeaderItem 603f42a
  • Fixed SignificantDigitsNumberRounder.RoundDouble bug 223d8d2
  • Flyout should return focus to previously focused 4d8af83
  • Generate analyzer suppressions properly edc8542
  • GridViewItems are not visible 8583c31
  • Handle converters and TargetNullValue in source generator 422e026
  • Hide open flyouts when MessageDialog is shown 0b00af4
  • HyperlinkButton underline 3c12d17
  • Initial focus on Page a444b7a
  • Invalid sourcegen update 6b3815b
  • Invalidate cached theme dictionary when theme dictionaries are added/removed 57068a3
  • Make sure that if TSInteropMarshaller.Allocate fails, we get the right exception ba663c0
  • Move Background in default app template to Page 3c03e70
  • Open suggestion list when focus, reflect text changes 8dc6472
  • Parse boolean correctly to not cause crash 0adb4fa
  • Popup should receive focus if its child is focusable e6c03bc
  • Promote RS0030 (banned API) diagnostic to error 2803f4c
  • restore net6.0 for WebAssembly, disable linker in debug 1d447ca
  • Reveal-based brushes crash on Skia 7aeb392
  • ToggleButton WinUI 2.6 border workaround d08d589
  • 2022: Fix remote control build under VS2022 1a1b091
  • Android: Fix NRE when TextBlock.FontFamily is null 5a428c9
  • commandbar: [iOS] Don't fetch the internal TitleView parent on invalidate measure 0a9a729
  • dragdrop: [wasm] Even if multi-window is not supported yet, instanciating a new Window without using it would crash the app due to D&D 53dc06d
  • dragdrop: Preserve DragDropExtension JS entrypoint a5ba887
  • FindName: Handle resources and non-FrameworkElement objects a4492c3
  • flyout: Take Flyout position into account correctly 73e5d83
  • listview: [Android] Fix drag-to-reorder not applying 4a49f7d
  • listview: [Android] Fix errors when dragging rapidly 1d94cf8
  • PersonPicture: Add v1 WASM workarounds to v2 style. Remove negative margin for clipping 0eae0c1
  • progressbar: Reverted to "v1" template for ProgressBar because the "fluent v2" is causing animation problems. 6fe3a0c
  • progressring: The AnimatedVisualSource was recreated too often, loosing the playing state of the current player. Logic has been added to only create a new source when required. 59c4904
  • reg: [Android] Fix icon cut off in NavViewItem in compact mode 5d2eac8
  • reg: Fix OAUKF tests 9098250
  • vsix: Add missing embedded resources a7e29c1
  • vsix: Don't enumerate nuget packages on the UI thread 42ec898
  • wasm: geometry not receiving pointer events 89ffb4f
  • xbind: x:bind may not be evaluated if x:Load is true during Loading cc665d2
  • xLoad: [Android] Fix invalid x:Load reentrancy issue 9784464
  • Retry on detached DOM element 3b9ab82
  • Revert "fix: Add and apply NumberBox CommonStates" 82116b4
  • Show error from DependencyObjectGenerator if type is android/ios/macos view symbol 4ea8c1f
  • Text selection on WASM 56f9afa
  • Unchecked CheckBox should not have visible glyph a9d201e
  • Update PathMarkupParser to latest from Avalonia 9a6ba19
  • Various visual issues in WinUI 2.6 styles 08e4dfb

Don't miss a new uno release

NewReleases is sending notifications on new releases.