From 7126b9a7650ac495e460a9921abf47482676d6f7 Mon Sep 17 00:00:00 2001 From: Nikita Tsukanov Date: Sun, 16 Jan 2022 16:55:44 +0300 Subject: [PATCH] Another workaround for broken TopLevel.cs causing crash on X11 --- src/Avalonia.X11/X11Window.cs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/Avalonia.X11/X11Window.cs b/src/Avalonia.X11/X11Window.cs index 211a8e4f79..d745b4765b 100644 --- a/src/Avalonia.X11/X11Window.cs +++ b/src/Avalonia.X11/X11Window.cs @@ -341,9 +341,13 @@ namespace Avalonia.X11 public Action TransparencyLevelChanged { - get => _transparencyHelper.TransparencyLevelChanged; - set => _transparencyHelper.TransparencyLevelChanged = value; - } + get => _transparencyHelper?.TransparencyLevelChanged; + set + { + if (_transparencyHelper != null) + _transparencyHelper.TransparencyLevelChanged = value; + } + } public Action ExtendClientAreaToDecorationsChanged { get; set; } @@ -1163,7 +1167,8 @@ namespace Avalonia.X11 { } - public WindowTransparencyLevel TransparencyLevel => _transparencyHelper.CurrentLevel; + public WindowTransparencyLevel TransparencyLevel => + _transparencyHelper?.CurrentLevel ?? WindowTransparencyLevel.None; public AcrylicPlatformCompensationLevels AcrylicCompensationLevels { get; } = new AcrylicPlatformCompensationLevels(1, 0.8, 0.8);