From 182cda5275229c59d50d62cb1ba1fc1bee335f99 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 8419e7dab2..2d124fff67 100644 --- a/src/Avalonia.X11/X11Window.cs +++ b/src/Avalonia.X11/X11Window.cs @@ -758,7 +758,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()