Browse Source

creating only one gtk thread (#12830)

Co-authored-by: Herman Kirshin <herman.kirshin@jetbrains.com>
release/11.0.5-rc1
Herman K 3 years ago
committed by Steven Kirk
parent
commit
61f41e6301
  1. 6
      src/Avalonia.X11/NativeDialogs/Gtk.cs

6
src/Avalonia.X11/NativeDialogs/Gtk.cs

@ -256,9 +256,13 @@ namespace Avalonia.X11.NativeDialogs
public static IntPtr GetForeignWindow(IntPtr xid) => gdk_x11_window_foreign_new_for_display(s_display, xid);
static object s_startGtkLock = new();
static Task<bool> s_startGtkTask;
public static Task<bool> StartGtk()
{
return StartGtkCore();
lock (s_startGtkLock)
return s_startGtkTask ??= StartGtkCore();
}
private static void GtkThread(TaskCompletionSource<bool> tcs)

Loading…
Cancel
Save