* Update to xunit.v3
* Little more progress
* More fixes
* Keep VSTest supported
* Adjust Nuke
* Few fixes
* Fix for xunit 2
* Fix GetData override
* Adjust
* Use MTP for xunit 2
* Fix test
* Better fix
* --no-progress
* Few more fixes
* no progress
* Fix test
* Better fix
* TRX
* Move to Directory.Build.props
* Unify on MTP v2
* Update
* Update to stable
* 1.0.1
* 1.0.2
* Fix some warnings
* Fix more warnings
* Fix more warnings
* Update ncrunch config.
* Tidy up reflection and multi-binding APIs:
- Move `BindingBase` and `MultiBinding` into Avalonia.Base
- `BindingBase` becomes a true base class for all bindings, and contains only the `Instance` method
- Properties common between reflection and compiled bindings are moved into `StandardBindingBase`
- `Binding` is moved to Avalonia.Base and renamed to `ReflectionBinding`
- A compatibility shim for `Binding` remains in Avalonia.Markup
- Remove `IBinding` and `IBinding2`
- Remove `ITreeDataTemplate's usage of `InstancedBinding`
- Remove `NativeMenuBarPresenter`s usage of `InstancedBinding`
- Remove `InstancedBinding` as it is now unused
This required an update to the DataGrid submodule: cell data validation has been temporarily removed as this used `InstancedBinding`.
* `Instance()` => `CreateInstance()`.
The use of "Instance" as a verb is quite unusual apparently ;)
* Seal classes where appropriate.
* Seal classes where appropriate.
* Remove `StandardBindingBase`.
Simply duplicate the members in reflection and compiled binding classes.
* Delete deleted submodule directory.
* Add missing attribute.
Fixes compile error.
* Fix reference to removed class.
* Update suppressions.
When Avalonia updated to `net10.0` it broke the ncrunch configuration. I re-configured everything from scratch here as now we're not targeting `netstandard2.0` by default we only really need to test our current target framework (`net10.0`).
Also made it so that every project was ignored by default and projects that are needed are whitelisted. This should mean that things don't break when new projects are added that are unrelated to things that will be tested.
* Specifiy explicit interface method when inheritdoc has ambiguous base candidates
* Explicitly write out Dispatcher.Post(Action,DispatcherPriority) documentation
* Move Post(Action,DispatcherPriority) next to Post(SendOrPostCallback,object?,DispatcherPriority) for clarity
* Fix Layoutable.ChildDesiredSizeChanged
Documentation sourced from 0e2cee8810
* Add specific invalidation xml doc to ExperimentalAcrylicMaterial.Invalidated
* Fix typos in FallbackColor xml doc
---------
Co-authored-by: Max Katz <maxkatz6@outlook.com>
* Added DrawingImage.Frame: a rectangular region of `Drawing`, in device independent pixels, to display when rendering the image
* Renamed Frame to Viewbox
Added test
* Enable nullability in RenderTests
* Enable nullability in LeakTests
* Enable nullability in Skia.UnitTests
* Enable nullability in Generators.Tests
* Enable nullability in DesignerSupport.Tests
* Enable nullability in Build.Tasks.UnitTests
* Enable nullability in UnitTests
* Enable nullability in Base.UnitTests
* Enable nullability in Markup.UnitTests
* Enable nullability in Markup.Xaml.UnitTests
* Add support for parsing BoxShadows with colors expressions with parentheses
* Added BoxShadowsTests
* BoxShadow parsing should also respect parentheses
* Add StringSplitter
* Fix test
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* StringSplitter should not accept same bracket pairs
* Returns empty array only when input is null
* Add StringSplitterTests
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Add NumericUpDown NumberFormat failing test
* Force text update when NumberFormat has changed
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* [X11] Clean up IME inconsistencies
* Fix where combinations like `GTK_IM_MODULE=none XMODIFIERS=@im=fcitx` can actually enable IME instead of forbid it - this is consistent with `AvaloniaX11Platform.EnableIme()`
* XIM should always be used if none of `IM_MODULE` is set (instead of only when they are explicitly set to `xim`)
* [X11] Try connecting to IMEs specified in `XMODIFIERS=@im=` through D-Bus before falling back to XIM
* [X11] Refine `XMODIFIERS=@im=` parsing
* Only the first one specified will be parsed and accepted
* Unify selection event handling for all SelectingItemsControl types plus TreeView
- Controls can decide whether to select on press/release, or introduce their own logic
- Container types handle events and can decide whether to forward them on to their owner
- Corrected various cases where controls checked whether a button was held when the event occurred, rather than whether it triggered the event
- Replaced various hardcoded modifier key checks with uses of PlatformHotkeyConfiguration
- ListBox no longer cares if you swipe before releasing touch (unless that triggers a gesture)
- TreeViewItem is now selected on touch/pen release
* API change requests
* Review comments
* Implement FillRuleProperty on Polyline
* Implement FillRule Property on Polygon
* Add tests
* Added comments to new public APIs
* Added more comments
* More tests
* More tests
* Updated API
* Added render tests
* More render tests
* Reintroducing the original PolylineGeometry constructor
* Updated API file
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* Try to fix dnx random failure
* Use full paths for WebAppDir everywhere
* Call dnx explicitly on CI
---------
Co-authored-by: Max Katz <maxkatz6@outlook.com>
* Reduce allocations for FontFamily.Parse
* Turn Trie data into static data
* Use static lambda in s_cachedLanguage.GetOrAdd
* Make LineBreakEnumerator+LineBreakState a ref struct to avoid allocations
* Use backing field for storing trie data in debug builds
* Replace node.js npm with bun
* Run bun test target, instead of direct npm, remove `SkipPreviewer` prop
* Add "--yes" argument to dnx command
* Remove unused scripts
* Add extended client area Win32 integration tests
* Fix Win32 extended client areas
* Run Win32 integration tests in pipelines
* Add extra tests and fixes when CanResize=false
* Use WM_GETMINMAXINFO to maximize captionless windows
* Use dotnet run on CI for IntegrationTests.Win32
* Address review
* Implement layout rounding for child sizes
Added layout rounding for child measurements in UniformGrid.
* Remove comment on child measurement in UniformGrid
Removed comment about measuring children in UniformGrid.
* Improved layout rounding logic for UniformGrid
* Grid_Ensures_Consistent_Cell_Width_When_UseLayoutRounding
* Fixed invalid renering of controls with non-zero bounds position.
Fixed text clipping of text elements inside LayoutTransformControl.
* Fixed rendering of VisualBrush.
* Fixed control clipping.
* Fixed opacity mask state.
* Reworked to skip rendering of elements out of clip.
* Code cleanup.
* Added unit test.
* Parameters order.
---------
Co-authored-by: PleshakovDV <pleshakovdv@ugpa.ru>
* Improve effect render performance by providing Skia with information about subscene bounds
* Fixed test
* apidiff
* Update API diff
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>