parent
e9e8852634
commit
e2f7e6bc81
@ -1 +1 @@
|
||||
SOURCES/xdg-desktop-portal-gnome-45.1.tar.xz
|
||||
SOURCES/xdg-desktop-portal-gnome-46.2.tar.xz
|
||||
|
@ -1 +1 @@
|
||||
08966f84d4debab6fb635a7fcd63326b8394b133 SOURCES/xdg-desktop-portal-gnome-45.1.tar.xz
|
||||
ef000cab9039c0e7a4c0ba3385242ecca2a7b1e4 SOURCES/xdg-desktop-portal-gnome-46.2.tar.xz
|
||||
|
@ -1,81 +0,0 @@
|
||||
commit d0428d7b1aaf2c73293bdc003facc4cabe862e5d
|
||||
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
|
||||
Date: Wed Dec 20 19:07:16 2023 -0300
|
||||
|
||||
inputcapture: Store dialog as a GtkWindow
|
||||
|
||||
This allows calling g_clear_pointer() without a cast.
|
||||
|
||||
Closes:
|
||||
https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/113
|
||||
|
||||
diff --git a/src/inputcapture.c b/src/inputcapture.c
|
||||
index ffa91a1dacbbeee2..7dfefe1b2995f246 100644
|
||||
--- a/src/inputcapture.c
|
||||
+++ b/src/inputcapture.c
|
||||
@@ -70,7 +70,7 @@ typedef struct _InputCaptureDialogHandle
|
||||
char *session_handle;
|
||||
GDBusMethodInvocation *create_session_invocation;
|
||||
|
||||
- GtkWidget *dialog;
|
||||
+ GtkWindow *dialog;
|
||||
ExternalWindow *external_parent;
|
||||
|
||||
unsigned int capabilities;
|
||||
@@ -89,7 +89,7 @@ G_DEFINE_TYPE (InputCaptureSession, input_capture_session, session_get_type ())
|
||||
static void
|
||||
input_capture_dialog_handle_free (InputCaptureDialogHandle *dialog_handle)
|
||||
{
|
||||
- g_clear_pointer ((GtkWindow**)&dialog_handle->dialog, gtk_window_destroy);
|
||||
+ g_clear_pointer (&dialog_handle->dialog, gtk_window_destroy);
|
||||
g_clear_object (&dialog_handle->external_parent);
|
||||
g_object_unref (dialog_handle->request);
|
||||
g_free (dialog_handle->session_handle);
|
||||
@@ -150,8 +150,7 @@ on_request_handle_close_cb (XdpImplRequest *object,
|
||||
GDBusMethodInvocation *invocation,
|
||||
InputCaptureDialogHandle *dialog_handle)
|
||||
{
|
||||
- gtk_window_close (GTK_WINDOW (dialog_handle->dialog));
|
||||
-
|
||||
+ gtk_window_close (dialog_handle->dialog);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -387,7 +386,7 @@ create_input_capture_dialog (GDBusMethodInvocation *invocation,
|
||||
ExternalWindow *external_parent;
|
||||
GdkSurface *surface;
|
||||
GtkWidget *fake_parent;
|
||||
- GtkWidget *dialog;
|
||||
+ GtkWindow *dialog;
|
||||
|
||||
if (parent_window)
|
||||
{
|
||||
@@ -404,9 +403,9 @@ create_input_capture_dialog (GDBusMethodInvocation *invocation,
|
||||
fake_parent = g_object_new (GTK_TYPE_WINDOW, NULL);
|
||||
g_object_ref_sink (fake_parent);
|
||||
|
||||
- dialog = GTK_WIDGET (input_capture_dialog_new (request->app_id));
|
||||
- gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (fake_parent));
|
||||
- gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
|
||||
+ dialog = GTK_WINDOW (input_capture_dialog_new (request->app_id));
|
||||
+ gtk_window_set_transient_for (dialog, GTK_WINDOW (fake_parent));
|
||||
+ gtk_window_set_modal (dialog, TRUE);
|
||||
|
||||
window_group = gtk_window_group_new ();
|
||||
gtk_window_group_add_window (window_group, dialog);
|
||||
@@ -424,13 +423,13 @@ create_input_capture_dialog (GDBusMethodInvocation *invocation,
|
||||
g_signal_connect (dialog, "done",
|
||||
G_CALLBACK (on_input_capture_dialog_done_cb), dialog_handle);
|
||||
|
||||
- gtk_widget_realize (dialog);
|
||||
+ gtk_widget_realize (GTK_WIDGET (dialog));
|
||||
|
||||
surface = gtk_native_get_surface (GTK_NATIVE (dialog));
|
||||
if (external_parent)
|
||||
external_window_set_parent_of (external_parent, surface);
|
||||
|
||||
- gtk_widget_show (dialog);
|
||||
+ gtk_window_present (dialog);
|
||||
}
|
||||
|
||||
static gboolean
|
Loading…
Reference in new issue