From 44f10ebfe3c6a3902c634d104ab9d052ddd358cd Mon Sep 17 00:00:00 2001 From: Manuel Allenspach Date: Mon, 24 Feb 2025 17:20:14 +0100 Subject: [PATCH] Allow NULL parent window in async dialog functions --- src/Libs/Gtk-4.0/Public/AlertDialog.cs | 4 ++-- src/Libs/Gtk-4.0/Public/FileDialog.cs | 20 ++++++++++---------- src/Libs/Gtk-4.0/Public/FileLauncher.cs | 8 ++++---- src/Libs/Gtk-4.0/Public/FontDialog.cs | 12 ++++++------ src/Libs/Gtk-4.0/Public/UriLauncher.cs | 4 ++-- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/Libs/Gtk-4.0/Public/AlertDialog.cs b/src/Libs/Gtk-4.0/Public/AlertDialog.cs index 6a1168d2c..3ecd960eb 100644 --- a/src/Libs/Gtk-4.0/Public/AlertDialog.cs +++ b/src/Libs/Gtk-4.0/Public/AlertDialog.cs @@ -6,7 +6,7 @@ namespace Gtk; public partial class AlertDialog { //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task ChooseAsync(Window parent) + public Task ChooseAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -28,7 +28,7 @@ public Task ChooseAsync(Window parent) Internal.AlertDialog.Choose( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero diff --git a/src/Libs/Gtk-4.0/Public/FileDialog.cs b/src/Libs/Gtk-4.0/Public/FileDialog.cs index ef9ad4ff8..1931bf8f5 100644 --- a/src/Libs/Gtk-4.0/Public/FileDialog.cs +++ b/src/Libs/Gtk-4.0/Public/FileDialog.cs @@ -6,7 +6,7 @@ namespace Gtk; public partial class FileDialog { //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task OpenAsync(Window parent) + public Task OpenAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -30,7 +30,7 @@ public partial class FileDialog Internal.FileDialog.Open( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero @@ -40,7 +40,7 @@ public partial class FileDialog } //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task OpenMultipleAsync(Window parent) + public Task OpenMultipleAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -64,7 +64,7 @@ public partial class FileDialog Internal.FileDialog.OpenMultiple( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero @@ -74,7 +74,7 @@ public partial class FileDialog } //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task SaveAsync(Window parent) + public Task SaveAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -98,7 +98,7 @@ public partial class FileDialog Internal.FileDialog.Save( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero @@ -109,7 +109,7 @@ public partial class FileDialog //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task SelectFolderAsync(Window parent) + public Task SelectFolderAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -133,7 +133,7 @@ public partial class FileDialog Internal.FileDialog.SelectFolder( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero @@ -143,7 +143,7 @@ public partial class FileDialog } //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task SelectMultipleFoldersAsync(Window parent) + public Task SelectMultipleFoldersAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -167,7 +167,7 @@ public partial class FileDialog Internal.FileDialog.SelectMultipleFolders( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero diff --git a/src/Libs/Gtk-4.0/Public/FileLauncher.cs b/src/Libs/Gtk-4.0/Public/FileLauncher.cs index 0bf139379..d8abdd2c8 100644 --- a/src/Libs/Gtk-4.0/Public/FileLauncher.cs +++ b/src/Libs/Gtk-4.0/Public/FileLauncher.cs @@ -6,7 +6,7 @@ namespace Gtk; public partial class FileLauncher { //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task LaunchAsync(Window parent) + public Task LaunchAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -28,7 +28,7 @@ public Task LaunchAsync(Window parent) Internal.FileLauncher.Launch( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero @@ -38,7 +38,7 @@ public Task LaunchAsync(Window parent) } //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task OpenContainingFolderAsync(Window parent) + public Task OpenContainingFolderAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -60,7 +60,7 @@ public Task OpenContainingFolderAsync(Window parent) Internal.FileLauncher.OpenContainingFolder( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero diff --git a/src/Libs/Gtk-4.0/Public/FontDialog.cs b/src/Libs/Gtk-4.0/Public/FontDialog.cs index 95100330e..054435966 100644 --- a/src/Libs/Gtk-4.0/Public/FontDialog.cs +++ b/src/Libs/Gtk-4.0/Public/FontDialog.cs @@ -6,7 +6,7 @@ namespace Gtk; public partial class FontDialog { //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task ChooseFaceAsync(Window parent, Pango.FontFace? fontFace) + public Task ChooseFaceAsync(Window? parent, Pango.FontFace? fontFace) { var tcs = new TaskCompletionSource(); @@ -30,7 +30,7 @@ public partial class FontDialog Internal.FontDialog.ChooseFace( Handle.DangerousGetHandle(), - parent.Handle.DangerousGetHandle(), + parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, fontFace?.Handle.DangerousGetHandle() ?? IntPtr.Zero, IntPtr.Zero, callbackHandler.NativeCallback, @@ -41,7 +41,7 @@ public partial class FontDialog } //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task ChooseFamilyAsync(Window parent, Pango.FontFamily? fontFamily) + public Task ChooseFamilyAsync(Window? parent, Pango.FontFamily? fontFamily) { var tcs = new TaskCompletionSource(); @@ -65,7 +65,7 @@ public partial class FontDialog Internal.FontDialog.ChooseFamily( Handle.DangerousGetHandle(), - parent.Handle.DangerousGetHandle(), + parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, fontFamily?.Handle.DangerousGetHandle() ?? IntPtr.Zero, IntPtr.Zero, callbackHandler.NativeCallback, @@ -76,7 +76,7 @@ public partial class FontDialog } //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task ChooseFontAsync(Window parent, Pango.FontDescription? fontDescription) + public Task ChooseFontAsync(Window? parent, Pango.FontDescription? fontDescription) { var tcs = new TaskCompletionSource(); @@ -101,7 +101,7 @@ public partial class FontDialog var initialValue = (Pango.Internal.FontDescriptionHandle?) fontDescription?.Handle ?? Pango.Internal.FontDescriptionUnownedHandle.NullHandle; Internal.FontDialog.ChooseFont( Handle.DangerousGetHandle(), - parent.Handle.DangerousGetHandle(), + parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, initialValue, IntPtr.Zero, callbackHandler.NativeCallback, diff --git a/src/Libs/Gtk-4.0/Public/UriLauncher.cs b/src/Libs/Gtk-4.0/Public/UriLauncher.cs index 1851f3b49..7f7b488d2 100644 --- a/src/Libs/Gtk-4.0/Public/UriLauncher.cs +++ b/src/Libs/Gtk-4.0/Public/UriLauncher.cs @@ -6,7 +6,7 @@ namespace Gtk; public partial class UriLauncher { //TODO: Async methods should be generated automatically (https://github.com/gircore/gir.core/issues/893) - public Task LaunchAsync(Window parent) + public Task LaunchAsync(Window? parent) { var tcs = new TaskCompletionSource(); @@ -28,7 +28,7 @@ public Task LaunchAsync(Window parent) Internal.UriLauncher.Launch( self: Handle.DangerousGetHandle(), - parent: parent.Handle.DangerousGetHandle(), + parent: parent?.Handle.DangerousGetHandle() ?? IntPtr.Zero, cancellable: IntPtr.Zero, callback: callbackHandler.NativeCallback, userData: IntPtr.Zero