Julien Lebosquain
3 weeks ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with
40 additions and
2 deletions
-
src/Skia/Avalonia.Skia/DrawingContextImpl.Effects.cs
-
tests/Avalonia.RenderTests/Media/EffectTests.cs
-
BIN
tests/TestFiles/Skia/Media/Effects/EffectFollowedByNonEffect.expected.png
|
|
|
@ -23,7 +23,7 @@ partial class DrawingContextImpl |
|
|
|
public void PopEffect() |
|
|
|
{ |
|
|
|
CheckLease(); |
|
|
|
Canvas.Restore(); |
|
|
|
RestoreCanvas(); |
|
|
|
} |
|
|
|
|
|
|
|
SKImageFilter? CreateEffect(IEffect effect) |
|
|
|
|
|
|
|
@ -1,5 +1,6 @@ |
|
|
|
using System.Threading.Tasks; |
|
|
|
using Avalonia.Controls; |
|
|
|
using Avalonia.Controls.Shapes; |
|
|
|
using Avalonia.Media; |
|
|
|
using Xunit; |
|
|
|
#pragma warning disable CS0649
|
|
|
|
@ -38,6 +39,43 @@ public class EffectTests : TestBase |
|
|
|
await RenderToFile(target); |
|
|
|
CompareImages(skipImmediate: true); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public async Task EffectFollowedByNonEffect() |
|
|
|
{ |
|
|
|
var target = new Border |
|
|
|
{ |
|
|
|
Background = Brushes.White, |
|
|
|
Width = 200, |
|
|
|
Height = 200, |
|
|
|
Child = new Panel |
|
|
|
{ |
|
|
|
Margin = new Thickness(25), |
|
|
|
Children = |
|
|
|
{ |
|
|
|
new Rectangle |
|
|
|
{ |
|
|
|
Fill = Brushes.Yellow, |
|
|
|
Effect = new DropShadowEffect |
|
|
|
{ |
|
|
|
Opacity = 1, |
|
|
|
OffsetX = 0, |
|
|
|
OffsetY = 0, |
|
|
|
Color = Colors.Black, |
|
|
|
BlurRadius = 50 |
|
|
|
} |
|
|
|
}, |
|
|
|
new Rectangle |
|
|
|
{ |
|
|
|
Fill = new SolidColorBrush(0x7F007FFF) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
await RenderToFile(target); |
|
|
|
CompareImages(skipImmediate: true); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
Width:
|
Height:
|
Size: 3.9 KiB
|