[gcr/wip/nielsdg/lose-x11-dependency: 2/5] prompt: Guard GDK-X11 code with the necessary #ifdefs
- From: Niels De Graef <nielsdg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gcr/wip/nielsdg/lose-x11-dependency: 2/5] prompt: Guard GDK-X11 code with the necessary #ifdefs
- Date: Wed, 13 Jan 2021 22:00:16 +0000 (UTC)
commit 2eaf6753bd08b2eead62b12002c26da2401dcdb3
Author: Niels De Graef <nielsdegraef gmail com>
Date: Tue Dec 3 08:38:50 2019 +0100
prompt: Guard GDK-X11 code with the necessary #ifdefs
This allows us to lose the hard dependency on `gtk-x11`.
configure.ac | 2 +-
ui/frob-prompt.c | 20 ++++++++++----------
ui/frob-system-prompt.c | 6 ++++--
ui/gcr-prompt-dialog.c | 6 +++++-
ui/gcr-prompter-tool.c | 2 --
5 files changed, 20 insertions(+), 16 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 2f6db657..9b7c5d7a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -119,7 +119,7 @@ AC_ARG_WITH(gtk, [
AM_CONDITIONAL(WITH_GTK, test "$with_gtk" != "no")
if test "x$with_gtk" != "xno"; then
- PKG_CHECK_MODULES(GTK, gtk+-3.0 >= $GTK_REQ gtk+-x11-3.0 >= $GTK_REQ)
+ PKG_CHECK_MODULES(GTK, gtk+-3.0 >= $GTK_REQ)
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
fi
diff --git a/ui/frob-prompt.c b/ui/frob-prompt.c
index 20462f6a..53955bef 100644
--- a/ui/frob-prompt.c
+++ b/ui/frob-prompt.c
@@ -63,7 +63,7 @@ prompt_perform (GtkWidget *parent)
file = g_key_file_new ();
if (!g_key_file_load_from_file (file, file_name, G_KEY_FILE_NONE, &error))
- errx (1, "couldn't load prompt info: %s", error->message);
+ g_error ("couldn't load prompt info: %s", error->message);
if (!prompt_type || g_str_equal (prompt_type, "dialog"))
prompt = g_object_new (GCR_TYPE_PROMPT_DIALOG, NULL);
@@ -72,10 +72,10 @@ prompt_perform (GtkWidget *parent)
else if (g_str_equal (prompt_type, "private"))
prompt = gcr_system_prompt_open_for_prompter ("org.gnome.keyring.PrivatePrompter", 5, NULL,
&error);
else
- errx (2, "invalid type: %s", prompt_type);
+ g_error ("invalid type: %s", prompt_type);
if (error != NULL)
- errx (1, "couldn't create prompt: %s", error->message);
+ g_error ("couldn't create prompt: %s", error->message);
if (parent) {
caller_id = g_strdup_printf ("%lu", (gulong)GDK_WINDOW_XID (gtk_widget_get_window (parent)));
@@ -99,7 +99,7 @@ prompt_perform (GtkWidget *parent)
continue;
spec = g_object_class_find_property (G_OBJECT_GET_CLASS (prompt), key);
if (spec == NULL)
- errx (1, "couldn't find property %s on prompt %s",
+ g_error ("couldn't find property %s on prompt %s",
key, G_OBJECT_TYPE_NAME (prompt));
g_value_init (&value, spec->value_type);
switch (spec->value_type) {
@@ -113,7 +113,7 @@ prompt_perform (GtkWidget *parent)
g_value_set_boolean (&value, g_key_file_get_boolean (file, groups[i], key,
NULL));
break;
default:
- errx (1, "unsupported type %s for property %s",
+ g_error ("unsupported type %s for property %s",
g_type_name (spec->value_type), key);
break;
}
@@ -128,18 +128,18 @@ prompt_perform (GtkWidget *parent)
if (g_strcmp0 (type, "password") == 0) {
password = gcr_prompt_password_run (prompt, NULL, &error);
if (error != NULL)
- errx (1, "couldn't prompt for password: %s", error->message);
+ g_error ("couldn't prompt for password: %s", error->message);
g_print ("prompt password: %s\n", password);
g_print ("password strength: %d\n", gcr_prompt_get_password_strength (prompt));
cont = (password != NULL);
} else if (g_strcmp0 (type, "confirm") == 0) {
reply = gcr_prompt_confirm_run (prompt, NULL, &error);
if (error != NULL)
- errx (1, "couldn't prompt for confirm: %s", error->message);
+ g_error ("couldn't prompt for confirm: %s", error->message);
g_print ("prompt confirm: %d\n", reply);
cont = (reply != GCR_PROMPT_REPLY_CANCEL);
} else {
- errx (1, "unsupported prompt type: %s", type);
+ g_error ("unsupported prompt type: %s", type);
}
g_free (type);
@@ -199,12 +199,12 @@ main (int argc, char *argv[])
g_option_context_add_group (context, gtk_get_option_group (TRUE));
if (!g_option_context_parse (context, &argc, &argv, &error))
- errx (2, "%s", error->message);
+ g_error ("%s", error->message);
g_option_context_free (context);
if (argc < 2)
- errx (2, "specify file");
+ g_error ("specify file");
file_name = argv[1];
if (prompt_window) {
diff --git a/ui/frob-system-prompt.c b/ui/frob-system-prompt.c
index e08114fd..02bdc285 100644
--- a/ui/frob-system-prompt.c
+++ b/ui/frob-system-prompt.c
@@ -23,10 +23,10 @@
#include "gcr/gcr.h"
-#include "egg/egg-testing.h"
-
#include <gtk/gtk.h>
+#ifdef GDK_WINDOWING_X11
#include <gdk/gdkx.h>
+#endif
#include <unistd.h>
#include <string.h>
@@ -54,9 +54,11 @@ on_prompt_clicked (GtkToolButton *button,
gcr_prompt_set_message (GCR_PROMPT (prompt), "This is the message");
gcr_prompt_set_description (GCR_PROMPT (prompt), "This is the description");
+#ifdef GDK_WINDOWING_X11
caller_id = g_strdup_printf ("%lu", (gulong)GDK_WINDOW_XID (gtk_widget_get_window (parent)));
gcr_prompt_set_caller_window (GCR_PROMPT (prompt), caller_id);
g_free (caller_id);
+#endif
password = gcr_prompt_password_run (GCR_PROMPT (prompt), NULL, &error);
if (error != NULL) {
diff --git a/ui/gcr-prompt-dialog.c b/ui/gcr-prompt-dialog.c
index 1b6de93f..11297d5a 100644
--- a/ui/gcr-prompt-dialog.c
+++ b/ui/gcr-prompt-dialog.c
@@ -27,7 +27,9 @@
#include "gcr-secure-entry-buffer.h"
#include <gtk/gtk.h>
+#ifdef GDK_WINDOWING_X11
#include <gdk/gdkx.h>
+#endif
#include <glib/gi18n.h>
/**
@@ -132,7 +134,7 @@ static void
update_transient_for (GcrPromptDialog *self)
{
GdkDisplay *display;
- GdkWindow *transient_for;
+ GdkWindow *transient_for = NULL;
GdkWindow *window;
gint64 handle;
gchar *end;
@@ -146,6 +148,7 @@ update_transient_for (GcrPromptDialog *self)
if (window == NULL)
return;
+#ifdef GDK_WINDOWING_X11
handle = g_ascii_strtoll (self->pv->caller_window, &end, 10);
if (!end || *end != '\0') {
g_warning ("couldn't parse caller-window property: %s", self->pv->caller_window);
@@ -161,6 +164,7 @@ update_transient_for (GcrPromptDialog *self)
gdk_window_set_transient_for (window, transient_for);
g_object_unref (transient_for);
}
+#endif
gtk_window_set_modal (GTK_WINDOW (self), TRUE);
}
diff --git a/ui/gcr-prompter-tool.c b/ui/gcr-prompter-tool.c
index cd1cc561..2d3f71ea 100644
--- a/ui/gcr-prompter-tool.c
+++ b/ui/gcr-prompter-tool.c
@@ -27,8 +27,6 @@
#include <glib/gi18n.h>
#include <gtk/gtk.h>
-#include <gdk/gdkx.h>
-#include <pango/pango.h>
#include <locale.h>
#include <stdlib.h>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]