Nikita Tsukanov
fa7eb55902
Flakiness?
3 years ago
Nikita Tsukanov
f300a24402
Media system refactoring
- animation/layout/render cycle is now managed from a central location
- animations are now throttled if animation/layout/render pass takes longer than a frame which previously caused a soft-freeze with input not being processed
- the public API is trimmed to make sure that we can make other planned changes during the 11.x support cycle
"Changelog":
- IClock is hidden and is planned to be replaced later
- Animator classes are hidden and are planned to be refactored later
- IAnimation members are hidden, it's supposed to be a marker interface for Style.Animations collection now, to start animations manually use Animation.RunAsync
- Sealed several classes in Avalonia.Animation namespace
- Spring class is removed from the public API (it wasn't possible to use it directly in a meaningful way anyway)
- Sealed brushes, transforms, effects and drawings
- Removed separate dispatcher priorities for Layout and Composition, everything now happens from a central place with Render priority (same as WPF)
- - some private "hook" priorities are added for now, those will be removed later
- IRenderLoop is hidden and removed from locator
- IRenderer is hidden (the plan is to remove that concept later)
- - Renderer.Start/Stop exposed as StartRendering/StopRendering on the toplevel (will be on a CompositionTarget/PresentationSource-like type later)
- - Renderer.Diagnistics exposed as RendererDiagnostics (same)
- - Renderer is no longer created by the platform code and is created by TopLevel itself
- - From the user-code hit-testing should be done by VisualExtensions.GetVisual(s)At, which has the same features
- - For unit tests a separate IHitTester interface is added which can be changed for a particular toplevel
- ILayoutManager is hidden
- - LayoutManager.ExecuteLayoutPass() exposed as TopLevel.UpdateLayout()
- Custom animators now have a separate base class that only deals with interpolation
Minor improvements:
- Compositor has a mode that doesn't use DispatcherTimers, useful for unit tests
- Introduced ScopedTestBase that auto-resets the locator when test is finished
3 years ago
Benedikt Stebner
101cdc5257
Fix PushOpacity when ClipToBounds is false
3 years ago
Benedikt Stebner
f153c626f8
Fix TextLineImpl.GetCharacterHitFromDistance for lines that include a TextEndOfLine run
Fix overhang handling to prevent clipped text for slanted glyphs
Fix TextBox selection issues
3 years ago
Max Katz
810558140f
Introduce static AssetLoader
3 years ago
Max Katz
862d07fcaf
Support special case for points collection
3 years ago
Benedikt Stebner
0442c3b337
Introduce advanced render options
3 years ago
Nikita Tsukanov
cf28998a46
Bitmap effects support
3 years ago
Nikita Tsukanov
fc96e2949f
Fixed #10539
3 years ago
Nikita Tsukanov
530f176783
Added Rgb24 and Bgr24
3 years ago
Nikita Tsukanov
371251d58c
Review comments
3 years ago
Nikita Tsukanov
0f4ed2a4b9
Updated tests to use IDispatcherImpl
3 years ago
Nikita Tsukanov
17492be5b6
Removed RunLoop from IPlatformThreadingInterface
3 years ago
Nikita Tsukanov
bc3768c2a0
More platforms are now using IDispatcherImpl
3 years ago
Giuseppe Lippolis
3f306b48ab
fix(DrawingContext): CS0618 PushPreTransform(Matrix)' is obsolete: 'Use PushTransform'
```bash
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Direct2D1.RenderTests, Avalonia.Skia.RenderTests .\tests\Avalonia.RenderTests\Media\ConicGradientBrushTests.cs 203 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Direct2D1.RenderTests, Avalonia.Skia.RenderTests .\tests\Avalonia.RenderTests\Media\LinearGradientBrushTests.cs 98 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Direct2D1.RenderTests, Avalonia.Skia.RenderTests .\tests\Avalonia.RenderTests\Media\RadialGradientBrushTests.cs 188 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Direct2D1.RenderTests, Avalonia.Skia.RenderTests .\tests\Avalonia.RenderTests\Media\TextFormatting\TextLayoutTests.cs 315 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Skia.UnitTests .\tests\Avalonia.Skia.UnitTests\Media\TextFormatting\TextFormatterTests.cs 795 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' ControlCatalog (netstandard2.0) .\samples\ControlCatalog\Pages\CustomDrawingExampleControl.cs 136 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' ControlCatalog (netstandard2.0) .\samples\ControlCatalog\Pages\CustomDrawingExampleControl.cs 140 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' ControlCatalog (netstandard2.0) .\samples\ControlCatalog\Pages\CustomDrawingExampleControl.cs 144 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' ControlCatalog (netstandard2.0) .\samples\ControlCatalog\Pages\CustomDrawingExampleControl.cs 146 Active
Warning CS0618 'DrawingContext.PushPostTransform(Matrix)' is obsolete: 'Use PushTransform' RenderDemo .\samples\RenderDemo\Pages\RenderTargetBitmapPage.cs 32 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Base (net6.0), Avalonia.Base (netstandard2.0) .\src\Avalonia.Base\Media\DrawingGroup.cs 76 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Direct2D1.RenderTests, Avalonia.Skia.RenderTests .\tests\Avalonia.RenderTests\Controls\CustomRenderTests.cs 91 Active
Warning CS0618 'DrawingContext.PushPreTransform(Matrix)' is obsolete: 'Use PushTransform' Avalonia.Direct2D1.RenderTests, Avalonia.Skia.RenderTests .\tests\Avalonia.RenderTests\Controls\CustomRenderTests.cs 115 Active
```
3 years ago
Dan Walmsley
2b076322e5
check access before clearing job queue.
3 years ago
Dan Walmsley
a298ff55f9
clear dispatcher queue at the end of tests.
3 years ago
Benedikt Stebner
48a54d67d3
Use test font family for TextLayoutTests
3 years ago
Nikita Tsukanov
a9ef92bbeb
Implemented BeginFigure(isFilled: false)
3 years ago
Nikita Tsukanov
ae1fcfed51
Refactored DrawingContext and VisualBrush, added DrawingBrush ( #10419 )
Refactored DrawingContext and VisualBrush, added DrawingBrush
3 years ago
Benedikt Stebner
f5caa61051
[SKIA] UseOpacitySaveLayer feature switch ( #9964 )
* [SKIA] Introduce UseOpacitySaveLayer feature switch
* Only maintain _currentOpacity when OpacitySaveLayer is disabled
3 years ago
Nikita Tsukanov
95b6343f8f
Respect AdornerLayer.IsClipEnabled
3 years ago
Benedikt Stebner
07adf1d6dc
Try a different font
3 years ago
Benedikt Stebner
b0a2ae99e4
Fix default GlyphRun.BaselineOrigin
Add a unit test
3 years ago
Nikita Tsukanov
a0adee3d00
Added a ctor for populating WriteableBitmap with initial data
3 years ago
Nikita Tsukanov
abf8819947
Implemented pixel format transcoding for Bitmap and WriteableBitmap
3 years ago
Nikita Tsukanov
6bdf0eacc7
Removed legacy renderers
3 years ago
Julien Lebosquain
4144be11fe
Pass GlyphInfo directly to GlyphRun
3 years ago
Simon Cropp
fb37ab1e77
leverage GetRequiredService
3 years ago
Simon Cropp
dba476c11c
fix more typos
3 years ago
Nikita Tsukanov
5a3d9f1574
Use parent clip rect of the adorned visual
3 years ago
Nikita Tsukanov
eaf2ce38a4
Context management
3 years ago
Steven Kirk
ec74057151
Removed a number of interfaces.
`IAvaloniaObject`, `IControl`, `ILayoutable`, `IPanel`, `IStyledElement`, `IVisual`.
3 years ago
Benedikt
73a892f13e
Only run tests on Windows
3 years ago
Benedikt Stebner
b295935286
Fix unpositioned GlyphRuns
3 years ago
Benedikt Stebner
b4e5ad0435
Add failing tests
3 years ago
Giuseppe Lippolis
de4b55f8ee
feat(tests): Address rule CA1822
4 years ago
Takoooooo
825fcfab31
Remove obsolete members from Avalonia.Base namespace
4 years ago
Benedikt Stebner
bf9a0d8656
Use a different arabic font for tests
4 years ago
Benedikt Stebner
199d74332a
Add arabic test typeface
4 years ago
Nikita Tsukanov
b6b08155d8
[WIP] Run render tests for compositing renderer
4 years ago
Benedikt Stebner
71aba01b10
Implement FormattedText.BuildGeometry
4 years ago
Benedikt Stebner
e48c984443
Update tests
4 years ago
Benedikt Stebner
73c06b323e
Skia - Correctly translate current position when multiple glyphs are added to a path
4 years ago
Benedikt Stebner
7a533700d0
Implement GlyphRun.BuildGeometry
4 years ago
Patrick Tellier
e47b742d3e
Use own Pen (if set) in GeometryDrawing.GetBounds
4 years ago
Max Katz
ad0a06bf24
Merge PlatformSupport project into Avalonia.Base
4 years ago
Dariusz Komosinski
174b94f3b4
Replace ImageMagick with ImageSharp for render test comparisons.
4 years ago
Benedikt Stebner
a34e0f50e2
Bump
4 years ago
Benedikt Stebner
1db3296611
Fix TextBlock/TextPresenter measure/arrange
Fix TextTrimming for small width
Fix text splitting
Fix text editing shortcuts
4 years ago