From 7dadacd0eaf91f2a768da2b9996f62320d4b093e Mon Sep 17 00:00:00 2001 From: Nikita Tsukanov Date: Tue, 31 Mar 2020 21:31:10 +0300 Subject: [PATCH] [X11, FlyWM] Completely remove WM_TRANSIENT_FOR property --- src/Avalonia.X11/X11Window.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Avalonia.X11/X11Window.cs b/src/Avalonia.X11/X11Window.cs index 5da9021677..a2d48b9689 100644 --- a/src/Avalonia.X11/X11Window.cs +++ b/src/Avalonia.X11/X11Window.cs @@ -694,7 +694,15 @@ namespace Avalonia.X11 _transientParent = window; _transientParent?._transientChildren.Add(this); if (informServer) - XSetTransientForHint(_x11.Display, _handle, _transientParent?._handle ?? IntPtr.Zero); + SetTransientForHint(_transientParent?._handle); + } + + void SetTransientForHint(IntPtr? parent) + { + if (parent == null || parent == IntPtr.Zero) + XDeleteProperty(_x11.Display, _handle, _x11.Atoms.XA_WM_TRANSIENT_FOR); + else + XSetTransientForHint(_x11.Display, _handle, parent.Value); } public void Show()