[Xfce4-commits] [apps/gigolo] 13/35: Drop now useless old glue compat code for ancient Gtks

noreply at xfce.org noreply at xfce.org
Mon Oct 31 18:18:47 CET 2016


This is an automated email from the git hooks/post-receive script.

landry pushed a commit to branch master
in repository apps/gigolo.

commit e81fab603554a106bc823b1c44de1d549ec6fa26
Author: Landry Breuil <landry at xfce.org>
Date:   Fri Jun 17 22:50:51 2016 +0200

    Drop now useless old glue compat code for ancient Gtks
---
 po/POTFILES.in       |   3 -
 src/Makefile.am      |   3 -
 src/compat.c         |  95 --------
 src/compat.h         |  37 ---
 src/mountoperation.c | 631 ---------------------------------------------------
 src/mountoperation.h |  51 -----
 src/singleinstance.c | 282 -----------------------
 src/singleinstance.h |  52 -----
 8 files changed, 1154 deletions(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index 4f63303..06667fb 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,13 +1,11 @@
 # List of source files containing translatable strings.
 
 src/main.c
-src/compat.c
 src/common.c
 src/window.c
 src/bookmark.c
 src/settings.c
 src/menubuttonaction.c
-src/mountoperation.c
 src/bookmarkdialog.c
 src/bookmarkeditdialog.c
 src/preferencesdialog.c
@@ -15,5 +13,4 @@ src/backendgvfs.c
 src/mountdialog.c
 src/browsenetworkpanel.c
 src/bookmarkpanel.c
-src/singleinstance.c
 gigolo.desktop.in
diff --git a/src/Makefile.am b/src/Makefile.am
index a3588d7..d96b04b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -3,7 +3,6 @@ bin_PROGRAMS = gigolo
 
 gigolo_SOURCES =								\
 	main.c main.h								\
-	compat.c compat.h							\
 	common.c common.h							\
 	window.c window.h							\
 	bookmark.c bookmark.h						\
@@ -11,12 +10,10 @@ gigolo_SOURCES =								\
 	backendgvfs.c backendgvfs.h					\
 	menubuttonaction.c menubuttonaction.h		\
 	mountdialog.c mountdialog.h					\
-	mountoperation.c mountoperation.h			\
 	bookmarkpanel.c bookmarkpanel.h				\
 	bookmarkdialog.c bookmarkdialog.h			\
 	bookmarkeditdialog.c bookmarkeditdialog.h	\
 	browsenetworkpanel.c browsenetworkpanel.h	\
-	singleinstance.c singleinstance.h			\
 	preferencesdialog.c preferencesdialog.h
 
 
diff --git a/src/compat.c b/src/compat.c
deleted file mode 100644
index d6b3ad1..0000000
--- a/src/compat.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- *      compat.c
- *
- *      Copyright 2008-2011 Enrico Tröger <enrico(at)xfce(dot)org>
- *
- *      This program is free software; you can redistribute it and/or modify
- *      it under the terms of the GNU General Public License as published by
- *      the Free Software Foundation; version 2 of the License.
- *
- *      This program is distributed in the hope that it will be useful,
- *      but WITHOUT ANY WARRANTY; without even the implied warranty of
- *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *      GNU General Public License for more details.
- *
- *      You should have received a copy of the GNU General Public License
- *      along with this program; if not, write to the Free Software
- *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-
-#include "config.h"
-
-#include <gtk/gtk.h>
-
-#include "compat.h"
-
-
-GdkWindow *gigolo_widget_get_window(GtkWidget *widget)
-{
-#if GTK_CHECK_VERSION(2, 14, 0)
-	return gtk_widget_get_window(widget);
-#else
-	return widget->window;
-#endif
-}
-
-
-GtkWidget *gigolo_dialog_get_content_area(GtkDialog *dialog)
-{
-#if GTK_CHECK_VERSION(2, 14, 0)
-	return gtk_dialog_get_content_area(dialog);
-#else
-	return dialog->vbox;
-#endif
-}
-
-
-GtkWidget *gigolo_dialog_get_action_area(GtkDialog *dialog)
-{
-#if GTK_CHECK_VERSION(2, 14, 0)
-	return gtk_dialog_get_action_area(dialog);
-#else
-	return dialog->action_area;
-#endif
-}
-
-
-guint32 gigolo_widget_get_flags(GtkWidget *widget)
-{
-#ifdef GSEAL_ENABLE
-	/* This is an ugly hack to get GTK_WIDGET_FLAGS() flags working with GSEAL enabled,
-	 * we simply create a fake object which looks like a GtkObject and then access its flags field */
-	typedef struct
-	{
-		GInitiallyUnowned parent_instance;
-		guint32 flags;
-	} FakeGtkObject;
-	FakeGtkObject *fgo = (FakeGtkObject*) widget;
-
-	return fgo->flags;
-#else
-	return GTK_OBJECT(widget)->flags;
-#endif
-}
-
-
-void gigolo_status_icon_set_tooltip_text(GtkStatusIcon *status_icon, const gchar *tooltip_text)
-{
-#if GTK_CHECK_VERSION(2, 16, 0)
-	gtk_status_icon_set_tooltip_text(status_icon, tooltip_text);
-#else
-	gtk_status_icon_set_tooltip(status_icon, tooltip_text);
-#endif
-}
-
-
-void gigolo_toolbar_set_orientation(GtkToolbar *toolbar, GtkOrientation orientation)
-{
-#if GTK_CHECK_VERSION(2, 16, 0)
-	gtk_orientable_set_orientation(GTK_ORIENTABLE(toolbar), orientation);
-#else
-	gtk_toolbar_set_orientation(toolbar, orientation);
-#endif
-}
-
diff --git a/src/compat.h b/src/compat.h
deleted file mode 100644
index 2cefee8..0000000
--- a/src/compat.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- *      compat.h
- *
- *      Copyright 2008-2011 Enrico Tröger <enrico(at)xfce(dot)org>
- *
- *      This program is free software; you can redistribute it and/or modify
- *      it under the terms of the GNU General Public License as published by
- *      the Free Software Foundation; version 2 of the License.
- *
- *      This program is distributed in the hope that it will be useful,
- *      but WITHOUT ANY WARRANTY; without even the implied warranty of
- *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *      GNU General Public License for more details.
- *
- *      You should have received a copy of the GNU General Public License
- *      along with this program; if not, write to the Free Software
- *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef __COMPAT_H__
-#define __COMPAT_H__
-
-
-GdkWindow *gigolo_widget_get_window(GtkWidget *widget);
-
-GtkWidget *gigolo_dialog_get_content_area(GtkDialog *dialog);
-
-GtkWidget *gigolo_dialog_get_action_area(GtkDialog *dialog);
-
-void gigolo_status_icon_set_tooltip_text(GtkStatusIcon *status_icon, const gchar *tooltip_text);
-
-guint32 gigolo_widget_get_flags(GtkWidget *widget);
-
-void gigolo_toolbar_set_orientation(GtkToolbar *toolbar, GtkOrientation orientation);
-
-#endif /* __COMPAT_H__ */
-
diff --git a/src/mountoperation.c b/src/mountoperation.c
deleted file mode 100644
index 9cf0d52..0000000
--- a/src/mountoperation.c
+++ /dev/null
@@ -1,631 +0,0 @@
-/*
- *      mountoperation.c
- *
- *      Copyright 2009-2011 Enrico Tröger <enrico(at)xfce(dot)org>
- *
- *      This program is free software; you can redistribute it and/or modify
- *      it under the terms of the GNU General Public License as published by
- *      the Free Software Foundation; either version 2 of the License, or
- *      (at your option) any later version.
- *
- *      This program is distributed in the hope that it will be useful,
- *      but WITHOUT ANY WARRANTY; without even the implied warranty of
- *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *      GNU General Public License for more details.
- *
- *      You should have received a copy of the GNU General Public License
- *      along with this program; if not, write to the Free Software
- *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include <config.h>
-
-#include <glib.h>
-#include <gio/gio.h>
-#include <gtk/gtk.h>
-#include <string.h>
-
-#include "compat.h"
-#include "mountoperation.h"
-
-
-/* This is a "light" version of GtkMountOperation for the case when Gigolo is compiled
- * against GTK 2.12. When compild against GTK 2.14 or later, the native GTK dialog is used.
- * Changes: removed the properties which we don't use and adjust coding style.
- * Strings are not marked as translatable on purpose to ease the life of translators because
- * the whole code in here is only used on GTK 2.12, GTK 2.14 and later provide the same dialog
- * with translated strings.
- */
-
-#if ! GTK_CHECK_VERSION(2, 14, 0)
-
-typedef struct _GigoloMountOperationPrivate			GigoloMountOperationPrivate;
-
-#define GIGOLO_MOUNT_OPERATION_GET_PRIVATE(obj)		(G_TYPE_INSTANCE_GET_PRIVATE((obj),\
-			GIGOLO_MOUNT_OPERATION_TYPE, GigoloMountOperationPrivate))
-
-struct _GigoloMountOperation
-{
-	GMountOperation parent;
-};
-
-struct _GigoloMountOperationClass
-{
-	GMountOperationClass parent_class;
-};
-
-struct _GigoloMountOperationPrivate
-{
-	GtkWindow *parent_window;
-	GtkDialog *dialog;
-
-	/* for the ask-password dialog */
-	GtkWidget *entry_container;
-	GtkWidget *username_entry;
-	GtkWidget *domain_entry;
-	GtkWidget *password_entry;
-	GtkWidget *anonymous_toggle;
-
-	GAskPasswordFlags ask_flags;
-	GPasswordSave     password_save;
-	gboolean          anonymous;
-};
-
-
-static void gigolo_mount_operation_ask_password(GMountOperation *op,
-                                                const gchar *message,
-                                                const gchar *default_user,
-                                                const gchar *default_domain,
-                                                GAskPasswordFlags flags);
-static void gigolo_mount_operation_ask_question(GMountOperation *op,
-                                                const gchar *message,
-												const gchar *choices[]);
-#if GLIB_CHECK_VERSION(2, 20, 0)
-static void gigolo_mount_operation_aborted(GMountOperation *op);
-#endif
-
-
-G_DEFINE_TYPE(GigoloMountOperation, gigolo_mount_operation, G_TYPE_MOUNT_OPERATION);
-
-
-static void gigolo_mount_operation_finalize(GObject *object)
-{
-	GigoloMountOperation *self;
-
-	g_return_if_fail(object != NULL);
-	g_return_if_fail(IS_GIGOLO_MOUNT_OPERATION(object));
-
-	self = GIGOLO_MOUNT_OPERATION(object);
-
-	G_OBJECT_CLASS(gigolo_mount_operation_parent_class)->finalize(object);
-}
-
-
-static void gigolo_mount_operation_init(G_GNUC_UNUSED GigoloMountOperation *self)
-{
-	/* nothing to do */
-}
-
-
-static void remember_button_toggled(GtkToggleButton *button, GigoloMountOperation *operation)
-{
-	if (gtk_toggle_button_get_active(button))
-	{
-		gpointer data;
-		GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(operation);
-
-		data = g_object_get_data(G_OBJECT(button), "password-save");
-		priv->password_save = GPOINTER_TO_INT(data);
-	}
-}
-
-
-static void pw_dialog_got_response(GtkDialog *dialog, gint response_id, GigoloMountOperation *g_op)
-{
-	GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(g_op);
-	GMountOperation *op = G_MOUNT_OPERATION(g_op);
-
-	if (response_id == GTK_RESPONSE_OK)
-	{
-		const char *text;
-
-		if (priv->ask_flags & G_ASK_PASSWORD_ANONYMOUS_SUPPORTED)
-			g_mount_operation_set_anonymous(op, priv->anonymous);
-
-		if (priv->username_entry)
-		{
-			text = gtk_entry_get_text(GTK_ENTRY(priv->username_entry));
-			g_mount_operation_set_username(op, text);
-		}
-
-		if (priv->domain_entry)
-		{
-			text = gtk_entry_get_text(GTK_ENTRY(priv->domain_entry));
-			g_mount_operation_set_domain(op, text);
-		}
-
-		if (priv->password_entry)
-		{
-			text = gtk_entry_get_text(GTK_ENTRY(priv->password_entry));
-			g_mount_operation_set_password(op, text);
-		}
-
-		if (priv->ask_flags & G_ASK_PASSWORD_SAVING_SUPPORTED)
-			g_mount_operation_set_password_save(op, priv->password_save);
-
-		g_mount_operation_reply(op, G_MOUNT_OPERATION_HANDLED);
-	}
-	else
-		g_mount_operation_reply(op, G_MOUNT_OPERATION_ABORTED);
-
-	priv->dialog = NULL;
-	gtk_widget_destroy(GTK_WIDGET(dialog));
-	g_object_unref(op);
-}
-
-
-static gboolean entry_has_input(GtkWidget *entry_widget)
-{
-	const gchar *text;
-
-	if (entry_widget == NULL)
-		return TRUE;
-
-	text = gtk_entry_get_text(GTK_ENTRY(entry_widget));
-
-	return text != NULL && text[0] != '\0';
-}
-
-
-static gboolean pw_dialog_input_is_valid(GigoloMountOperation *operation)
-{
-	GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(operation);
-	gboolean is_valid = TRUE;
-
-	/* We don't require password to be non-empty here
-	* since there are situations where it is not needed,
-	* see bug 578365.
-	* We may add a way for the backend to specify that it
-	* definitively needs a password.
-	*/
-	is_valid = entry_has_input(priv->username_entry) && entry_has_input(priv->domain_entry);
-
-	return is_valid;
-}
-
-
-static void pw_dialog_verify_input(G_GNUC_UNUSED GtkEditable *editable, GigoloMountOperation *op)
-{
-	GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(op);
-	gboolean is_valid;
-
-	is_valid = pw_dialog_input_is_valid(op);
-	gtk_dialog_set_response_sensitive(GTK_DIALOG(priv->dialog), GTK_RESPONSE_OK, is_valid);
-}
-
-
-static void pw_dialog_anonymous_toggled(GtkWidget *widget, GigoloMountOperation *operation)
-{
-	GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(operation);
-	gboolean is_valid;
-
-	priv->anonymous = (widget == priv->anonymous_toggle);
-
-	if (priv->anonymous)
-		is_valid = TRUE;
-	else
-		is_valid = pw_dialog_input_is_valid(operation);
-
-	gtk_widget_set_sensitive(priv->entry_container, (priv->anonymous == FALSE));
-	gtk_dialog_set_response_sensitive(GTK_DIALOG(priv->dialog), GTK_RESPONSE_OK, is_valid);
-}
-
-
-static void pw_dialog_cycle_focus(GtkWidget *widget, GigoloMountOperation *operation)
-{
-	GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(operation);
-	GtkWidget *next_widget = NULL;
-
-	priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(operation);
-
-	if (widget == priv->username_entry)
-	{
-		if (priv->domain_entry != NULL)
-			next_widget = priv->domain_entry;
-		else if (priv->password_entry != NULL)
-			next_widget = priv->password_entry;
-	}
-	else if (widget == priv->domain_entry && priv->password_entry)
-		next_widget = priv->password_entry;
-
-	if (next_widget)
-		gtk_widget_grab_focus(next_widget);
-	else if (pw_dialog_input_is_valid(operation))
-		gtk_window_activate_default(GTK_WINDOW(priv->dialog));
-}
-
-
-static GtkWidget *table_add_entry(GtkWidget *table, gint row, const gchar *label_text,
-								  const gchar *value, gpointer user_data)
-{
-	GtkWidget *entry;
-	GtkWidget *label;
-
-	label = gtk_label_new_with_mnemonic(label_text);
-	gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
-
-	entry = gtk_entry_new();
-
-	if (value)
-		gtk_entry_set_text(GTK_ENTRY(entry), value);
-
-	gtk_table_attach(GTK_TABLE(table), label, 0, 1, row, row + 1, GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
-	gtk_table_attach_defaults(GTK_TABLE(table), entry, 1, 2, row, row + 1);
-	gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
-
-	g_signal_connect(entry, "changed", G_CALLBACK(pw_dialog_verify_input), user_data);
-	g_signal_connect(entry, "activate", G_CALLBACK(pw_dialog_cycle_focus), user_data);
-
-	return entry;
-}
-
-
-static void gigolo_mount_operation_ask_password(GMountOperation *mount_op,
-												const gchar *message,
-												const gchar *default_user,
-												const gchar *default_domain,
-												GAskPasswordFlags flags)
-{
-	GigoloMountOperation *operation;
-	GigoloMountOperationPrivate *priv;
-	GtkWidget *widget;
-	GtkDialog *dialog;
-	GtkWindow *window;
-	GtkWidget *entry_container;
-	GtkWidget *hbox, *main_vbox, *vbox, *icon;
-	GtkWidget *table;
-	GtkWidget *message_label;
-	gboolean   can_anonymous;
-	guint      rows;
-	const gchar *secondary;
-
-	operation = GIGOLO_MOUNT_OPERATION(mount_op);
-	priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(operation);
-
-	priv->ask_flags = flags;
-
-	widget = gtk_dialog_new();
-	dialog = GTK_DIALOG(widget);
-	window = GTK_WINDOW(widget);
-
-	priv->dialog = dialog;
-
-	/* Set the dialog up with HIG properties */
-	gtk_dialog_set_has_separator(dialog, FALSE);
-	gtk_container_set_border_width(GTK_CONTAINER(dialog), 5);
-	gtk_box_set_spacing(GTK_BOX(gigolo_dialog_get_content_area(dialog)), 2);
-	/* 2 * 5 + 2 = 12 */
-	gtk_container_set_border_width(GTK_CONTAINER(gigolo_dialog_get_action_area(dialog)), 5);
-	gtk_box_set_spacing(GTK_BOX(gigolo_dialog_get_action_area(dialog)), 6);
-
-	gtk_window_set_resizable(window, FALSE);
-	gtk_window_set_title(window, "");
-	gtk_window_set_icon_name(window, GTK_STOCK_DIALOG_AUTHENTICATION);
-
-	gtk_dialog_add_buttons(dialog, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-		"Co_nnect", GTK_RESPONSE_OK, NULL);
-	gtk_dialog_set_default_response(dialog, GTK_RESPONSE_OK);
-
-	gtk_dialog_set_alternative_button_order(dialog, GTK_RESPONSE_OK, GTK_RESPONSE_CANCEL, -1);
-
-	/* Build contents */
-	hbox = gtk_hbox_new(FALSE, 12);
-	gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
-	gtk_box_pack_start(GTK_BOX(gigolo_dialog_get_content_area(dialog)), hbox, TRUE, TRUE, 0);
-
-	icon = gtk_image_new_from_stock(GTK_STOCK_DIALOG_AUTHENTICATION, GTK_ICON_SIZE_DIALOG);
-
-	gtk_misc_set_alignment(GTK_MISC(icon), 0.5, 0.0);
-	gtk_box_pack_start(GTK_BOX(hbox), icon, FALSE, FALSE, 0);
-
-	main_vbox = gtk_vbox_new(FALSE, 18);
-	gtk_box_pack_start(GTK_BOX(hbox), main_vbox, TRUE, TRUE, 0);
-
-	secondary = strstr(message, "\n");
-	if (secondary != NULL)
-	{
-		gchar *s;
-		gchar *primary;
-
-		primary = g_strndup(message, secondary - message + 1);
-		s = g_strdup_printf("<big><b>%s</b></big>%s", primary, secondary);
-
-		message_label = gtk_label_new(NULL);
-		gtk_label_set_markup(GTK_LABEL(message_label), s);
-		gtk_misc_set_alignment(GTK_MISC(message_label), 0.0, 0.5);
-		gtk_label_set_line_wrap(GTK_LABEL(message_label), TRUE);
-		gtk_box_pack_start(GTK_BOX(main_vbox), GTK_WIDGET(message_label), FALSE, TRUE, 0);
-
-		g_free(s);
-		g_free(primary);
-	}
-	else
-	{
-		message_label = gtk_label_new(message);
-		gtk_misc_set_alignment(GTK_MISC(message_label), 0.0, 0.5);
-		gtk_label_set_line_wrap(GTK_LABEL(message_label), TRUE);
-		gtk_box_pack_start(GTK_BOX(main_vbox), GTK_WIDGET(message_label), FALSE, FALSE, 0);
-	}
-
-	vbox = gtk_vbox_new(FALSE, 6);
-	gtk_box_pack_start(GTK_BOX(main_vbox), vbox, FALSE, FALSE, 0);
-
-	can_anonymous = flags & G_ASK_PASSWORD_ANONYMOUS_SUPPORTED;
-
-	priv->anonymous_toggle = NULL;
-	if (can_anonymous)
-	{
-		GtkWidget *anon_box;
-		GtkWidget *choice;
-		GSList    *group;
-
-		anon_box = gtk_vbox_new(FALSE, 6);
-		gtk_box_pack_start(GTK_BOX(vbox), anon_box, FALSE, FALSE, 0);
-
-		choice = gtk_radio_button_new_with_mnemonic(NULL, "Connect _anonymously");
-		gtk_box_pack_start(GTK_BOX(anon_box), choice, FALSE, FALSE, 0);
-		g_signal_connect(choice, "toggled", G_CALLBACK(pw_dialog_anonymous_toggled), operation);
-		priv->anonymous_toggle = choice;
-
-		group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(choice));
-		choice = gtk_radio_button_new_with_mnemonic(group, "Connect as u_ser:");
-		gtk_box_pack_start(GTK_BOX(anon_box), choice, FALSE, FALSE, 0);
-		g_signal_connect(choice, "toggled", G_CALLBACK(pw_dialog_anonymous_toggled), operation);
-	}
-
-	rows = 0;
-
-	if (flags & G_ASK_PASSWORD_NEED_PASSWORD)
-		rows++;
-
-	if (flags & G_ASK_PASSWORD_NEED_USERNAME)
-		rows++;
-
-	if (flags &G_ASK_PASSWORD_NEED_DOMAIN)
-		rows++;
-
-	/* The table that holds the entries */
-	entry_container = gtk_alignment_new(0.0, 0.0, 1.0, 1.0);
-
-	gtk_alignment_set_padding(GTK_ALIGNMENT(entry_container), 0, 0, can_anonymous ? 12 : 0, 0);
-
-	gtk_box_pack_start(GTK_BOX(vbox), entry_container, FALSE, FALSE, 0);
-	priv->entry_container = entry_container;
-
-	table = gtk_table_new(rows, 2, FALSE);
-	gtk_table_set_col_spacings(GTK_TABLE(table), 12);
-	gtk_table_set_row_spacings(GTK_TABLE(table), 6);
-	gtk_container_add(GTK_CONTAINER(entry_container), table);
-
-	rows = 0;
-
-	priv->username_entry = NULL;
-	if (flags & G_ASK_PASSWORD_NEED_USERNAME)
-		priv->username_entry = table_add_entry(table, rows++, "_Username:", default_user, operation);
-
-	priv->domain_entry = NULL;
-	if (flags & G_ASK_PASSWORD_NEED_DOMAIN)
-		priv->domain_entry = table_add_entry(table, rows++, "_Domain:", default_domain, operation);
-
-	priv->password_entry = NULL;
-	if (flags & G_ASK_PASSWORD_NEED_PASSWORD)
-	{
-		priv->password_entry = table_add_entry(table, rows++, "_Password:", NULL, operation);
-		gtk_entry_set_visibility(GTK_ENTRY(priv->password_entry), FALSE);
-	}
-
-	if (flags & G_ASK_PASSWORD_SAVING_SUPPORTED)
-	{
-		GtkWidget    *choice;
-		GtkWidget    *remember_box;
-		GSList       *group;
-		GPasswordSave password_save;
-
-		remember_box = gtk_vbox_new(FALSE, 6);
-		gtk_box_pack_start(GTK_BOX(vbox), remember_box,	FALSE, FALSE, 0);
-
-		password_save = g_mount_operation_get_password_save(mount_op);
-
-		choice = gtk_radio_button_new_with_mnemonic(NULL, "Forget password _immediately");
-		gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(choice),	password_save == G_PASSWORD_SAVE_NEVER);
-		g_object_set_data(G_OBJECT(choice), "password-save", GINT_TO_POINTER(G_PASSWORD_SAVE_NEVER));
-		g_signal_connect(choice, "toggled",	G_CALLBACK(remember_button_toggled), operation);
-		gtk_box_pack_start(GTK_BOX(remember_box), choice, FALSE, FALSE, 0);
-
-		group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(choice));
-		choice = gtk_radio_button_new_with_mnemonic(group, "Remember password until you _logout");
-		gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(choice),	password_save == G_PASSWORD_SAVE_FOR_SESSION);
-		g_object_set_data(G_OBJECT(choice), "password-save", GINT_TO_POINTER(G_PASSWORD_SAVE_FOR_SESSION));
-		g_signal_connect(choice, "toggled", G_CALLBACK(remember_button_toggled), operation);
-		gtk_box_pack_start(GTK_BOX(remember_box), choice, FALSE, FALSE, 0);
-
-		group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(choice));
-		choice = gtk_radio_button_new_with_mnemonic(group, "Remember _forever");
-		gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(choice), password_save == G_PASSWORD_SAVE_PERMANENTLY);
-		g_object_set_data(G_OBJECT(choice), "password-save", GINT_TO_POINTER(G_PASSWORD_SAVE_PERMANENTLY));
-		g_signal_connect(choice, "toggled",	G_CALLBACK(remember_button_toggled), operation);
-		gtk_box_pack_start(GTK_BOX(remember_box), choice, FALSE, FALSE, 0);
-	}
-
-	g_signal_connect(G_OBJECT(dialog), "response", G_CALLBACK(pw_dialog_got_response), operation);
-
-	if (can_anonymous)
-	{
-		/* The anonymous option will be active by default,
-		* ensure the toggled signal is emitted for it.
-		*/
-		gtk_toggle_button_toggled(GTK_TOGGLE_BUTTON(priv->anonymous_toggle));
-	}
-	else if (! pw_dialog_input_is_valid(operation))
-		gtk_dialog_set_response_sensitive(dialog, GTK_RESPONSE_OK, FALSE);
-
-	if (priv->parent_window)
-	{
-		gtk_window_set_transient_for(window, priv->parent_window);
-		gtk_window_set_modal(window, TRUE);
-	}
-
-	gtk_widget_show_all(GTK_WIDGET(dialog));
-	g_object_ref(operation);
-}
-
-
-static void question_dialog_button_clicked(GtkDialog *dialog, gint button_number, GMountOperation *op)
-{
-	GigoloMountOperationPrivate *priv;
-	GigoloMountOperation *operation;
-
-	operation = GIGOLO_MOUNT_OPERATION(op);
-	priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(priv);
-
-	if (button_number >= 0)
-	{
-		g_mount_operation_set_choice(op, button_number);
-		g_mount_operation_reply(op, G_MOUNT_OPERATION_HANDLED);
-	}
-	else
-		g_mount_operation_reply(op, G_MOUNT_OPERATION_ABORTED);
-
-	priv->dialog = NULL;
-	gtk_widget_destroy(GTK_WIDGET(dialog));
-	g_object_unref(op);
-}
-
-
-static void gigolo_mount_operation_ask_question(GMountOperation *op, const gchar *message,
-												const gchar *choices[])
-{
-	GigoloMountOperationPrivate *priv;
-	GtkWidget *dialog;
-	const gchar *secondary = NULL;
-	gchar *primary;
-	gint count, len = 0;
-
-	g_return_if_fail(IS_GIGOLO_MOUNT_OPERATION(op));
-	g_return_if_fail(message != NULL);
-	g_return_if_fail(choices != NULL);
-
-	priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(priv);
-
-	primary = strstr(message, "\n");
-	if (primary)
-	{
-		secondary = primary + 1;
-		primary = g_strndup(message, primary - message);
-	}
-
-	dialog = gtk_message_dialog_new(priv->parent_window, 0,
-								   GTK_MESSAGE_QUESTION,
-								   GTK_BUTTONS_NONE, "%s",
-								   primary != NULL ? primary : message);
-	g_free(primary);
-
-	if (secondary)
-		gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog), "%s", secondary);
-
-	/* First count the items in the list then add the buttons in reverse order */
-	while (choices[len] != NULL)
-		len++;
-
-	for (count = len - 1; count >= 0; count--)
-		gtk_dialog_add_button(GTK_DIALOG(dialog), choices[count], count);
-
-	g_signal_connect(G_OBJECT(dialog), "response", G_CALLBACK(question_dialog_button_clicked), op);
-
-	priv->dialog = GTK_DIALOG(dialog);
-
-	gtk_widget_show(dialog);
-	g_object_ref(op);
-}
-
-
-#if GLIB_CHECK_VERSION(2, 20, 0)
-static void gigolo_mount_operation_aborted(GMountOperation *op)
-{
-	GigoloMountOperationPrivate *priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(priv);
-
-	if (priv->dialog != NULL)
-	{
-		gtk_widget_destroy(GTK_WIDGET(priv->dialog));
-		priv->dialog = NULL;
-		g_object_unref(op);
-	}
-}
-#endif
-
-
-static void gigolo_mount_operation_set_parent(GigoloMountOperation *op, GtkWindow *parent)
-{
-	GigoloMountOperationPrivate *priv;
-
-	g_return_if_fail(IS_GIGOLO_MOUNT_OPERATION(op));
-	g_return_if_fail(parent == NULL || GTK_IS_WINDOW(parent));
-
-	priv = GIGOLO_MOUNT_OPERATION_GET_PRIVATE(op);
-
-	if (priv->parent_window == parent)
-		return;
-
-	if (priv->parent_window)
-	{
-		g_signal_handlers_disconnect_by_func(priv->parent_window,
-			gtk_widget_destroyed, &priv->parent_window);
-		priv->parent_window = NULL;
-	}
-
-	if (parent)
-	{
-		priv->parent_window = g_object_ref(parent);
-
-		g_signal_connect(parent, "destroy", G_CALLBACK(gtk_widget_destroyed), &priv->parent_window);
-		if (priv->dialog)
-			gtk_window_set_transient_for(GTK_WINDOW(priv->dialog), parent);
-	}
-}
-
-
-static void gigolo_mount_operation_class_init(GigoloMountOperationClass *klass)
-{
-	GObjectClass *g_object_class;
-	GMountOperationClass *mount_op_class = G_MOUNT_OPERATION_CLASS(klass);
-
-	g_object_class = G_OBJECT_CLASS(klass);
-
-	g_object_class->finalize = gigolo_mount_operation_finalize;
-
-	g_type_class_add_private(klass, sizeof(GigoloMountOperationPrivate));
-
-	mount_op_class->ask_password = gigolo_mount_operation_ask_password;
-	mount_op_class->ask_question = gigolo_mount_operation_ask_question;
-#if GLIB_CHECK_VERSION(2, 20, 0)
-	mount_op_class->aborted = gigolo_mount_operation_aborted;
-#endif
-}
-#endif
-
-
-GMountOperation *gigolo_mount_operation_new(GtkWindow *parent)
-{
-#if GTK_CHECK_VERSION(2, 14, 0)
-	return gtk_mount_operation_new(parent);
-#else
-	GMountOperation *op;
-
-	op = g_object_new(GIGOLO_MOUNT_OPERATION_TYPE, NULL);
-	gigolo_mount_operation_set_parent(GIGOLO_MOUNT_OPERATION(op), parent);
-
-	return op;
-#endif
-}
-
-
diff --git a/src/mountoperation.h b/src/mountoperation.h
deleted file mode 100644
index 5693cb4..0000000
--- a/src/mountoperation.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- *      mountoperation.h
- *
- *      Copyright 2009-2011 Enrico Tröger <enrico(at)xfce(dot)org>
- *
- *      This program is free software; you can redistribute it and/or modify
- *      it under the terms of the GNU General Public License as published by
- *      the Free Software Foundation; either version 2 of the License, or
- *      (at your option) any later version.
- *
- *      This program is distributed in the hope that it will be useful,
- *      but WITHOUT ANY WARRANTY; without even the implied warranty of
- *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *      GNU General Public License for more details.
- *
- *      You should have received a copy of the GNU General Public License
- *      along with this program; if not, write to the Free Software
- *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-
-#ifndef __MOUNTOPERATION_H__
-#define __MOUNTOPERATION_H__
-
-G_BEGIN_DECLS
-
-#if ! GTK_CHECK_VERSION(2, 14, 0)
-
-#define GIGOLO_MOUNT_OPERATION_TYPE				(gigolo_mount_operation_get_type())
-#define GIGOLO_MOUNT_OPERATION(obj)				(G_TYPE_CHECK_INSTANCE_CAST((obj),\
-			GIGOLO_MOUNT_OPERATION_TYPE, GigoloMountOperation))
-#define GIGOLO_MOUNT_OPERATION_CLASS(klass)		(G_TYPE_CHECK_CLASS_CAST((klass),\
-			GIGOLO_MOUNT_OPERATION_TYPE, GigoloMountOperationClass))
-#define IS_GIGOLO_MOUNT_OPERATION(obj)			(G_TYPE_CHECK_INSTANCE_TYPE((obj),\
-			GIGOLO_MOUNT_OPERATION_TYPE))
-#define IS_GIGOLO_MOUNT_OPERATION_CLASS(klass)	(G_TYPE_CHECK_CLASS_TYPE((klass),\
-			GIGOLO_MOUNT_OPERATION_TYPE))
-
-typedef struct _GigoloMountOperation					GigoloMountOperation;
-typedef struct _GigoloMountOperationClass				GigoloMountOperationClass;
-
-
-GType				gigolo_mount_operation_get_type		(void);
-
-#endif
-
-GMountOperation*	gigolo_mount_operation_new			(GtkWindow	*parent);
-
-G_END_DECLS
-
-#endif /* __MOUNTOPERATION_H__ */
diff --git a/src/singleinstance.c b/src/singleinstance.c
deleted file mode 100644
index cdea763..0000000
--- a/src/singleinstance.c
+++ /dev/null
@@ -1,282 +0,0 @@
-/*
- *      singleinstance.c
- *
- *      Copyright 2009-2011 Enrico Tröger <enrico(at)xfce(dot)org>
- *      Copyright 2006      Darren Salt
- *      Copyright 2002-2006 Olivier Fourdan
- *
- *      This program is free software; you can redistribute it and/or modify
- *      it under the terms of the GNU General Public License as published by
- *      the Free Software Foundation; either version 2 of the License, or
- *      (at your option) any later version.
- *
- *      This program is distributed in the hope that it will be useful,
- *      but WITHOUT ANY WARRANTY; without even the implied warranty of
- *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *      GNU General Public License for more details.
- *
- *      You should have received a copy of the GNU General Public License
- *      along with this program; if not, write to the Free Software
- *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- *      MA 02110-1301, USA.
- */
-
-
-/*
- * This is very simple detection of an already running by using XSelections.
- */
-
-#include "config.h"
-
-#include <glib-object.h>
-#include <gtk/gtk.h>
-#include <gdk/gdkx.h>
-#include <X11/Xlib.h>
-
-#include "singleinstance.h"
-#include "common.h"
-#include "compat.h"
-#include "main.h"
-
-
-#define GIGOLO_SI_NAME "GIGOLO_SEL"
-#define GIGOLO_SI_CMD "gigolo_show_window"
-
-
-enum
-{
-	PROP_0,
-
-	PROP_PARENT
-};
-
-
-struct _GigoloSingleInstance
-{
-	GObject parent;
-};
-
-struct _GigoloSingleInstanceClass
-{
-	GObjectClass parent_class;
-};
-
-typedef struct _GigoloSingleInstancePrivate			GigoloSingleInstancePrivate;
-
-#define GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(obj)		(G_TYPE_INSTANCE_GET_PRIVATE((obj),\
-			GIGOLO_SINGLE_INSTANCE_TYPE, GigoloSingleInstancePrivate))
-
-
-struct _GigoloSingleInstancePrivate
-{
-	gboolean	 found_instance;
-	Window		 id;
-	GtkWidget	*window;
-
-	GtkWindow	*parent;
-};
-
-static void gigolo_single_instance_finalize  			(GObject *object);
-
-
-G_DEFINE_TYPE(GigoloSingleInstance, gigolo_single_instance, G_TYPE_OBJECT);
-
-
-void gigolo_single_instance_set_parent(GigoloSingleInstance *gis, GtkWindow *parent)
-{
-	GigoloSingleInstancePrivate *priv;
-
-	g_return_if_fail(gis != NULL);
-	g_return_if_fail(parent != NULL);
-
-	priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(gis);
-	priv->parent = parent;
-}
-
-
-static void gigolo_single_instance_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
-{
-	switch (prop_id)
-	{
-	case PROP_PARENT:
-		gigolo_single_instance_set_parent(GIGOLO_SINGLE_INSTANCE(object), g_value_get_object(value));
-		break;
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
-		break;
-	}
-}
-
-
-static void gigolo_single_instance_class_init(GigoloSingleInstanceClass *klass)
-{
-	GObjectClass *g_object_class;
-
-	g_object_class = G_OBJECT_CLASS(klass);
-	g_object_class->finalize = gigolo_single_instance_finalize;
-	g_object_class->set_property = gigolo_single_instance_set_property;
-
-	g_type_class_add_private(klass, sizeof(GigoloSingleInstancePrivate));
-
-	g_object_class_install_property(g_object_class,
-									PROP_PARENT,
-									g_param_spec_object(
-									"parent",
-									"Parent",
-									"The Gigolo main window which gets popped up by the remote instance.",
-									GTK_TYPE_WINDOW,
-									G_PARAM_WRITABLE));
-}
-
-
-static void gigolo_single_instance_finalize(GObject *object)
-{
-	GigoloSingleInstancePrivate *priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(object);
-
-	if (priv->window != NULL)
-		gtk_widget_destroy(priv->window);
-
-	G_OBJECT_CLASS(gigolo_single_instance_parent_class)->finalize(object);
-}
-
-
-static gboolean message_received(G_GNUC_UNUSED GtkWidget *widget,
-								 GdkEventClient *ev, GigoloSingleInstance *gis)
-{
-	if (ev->data_format == 8 && gigolo_str_equal(ev->data.b, GIGOLO_SI_CMD))
-	{
-		GigoloSingleInstancePrivate *priv;
-
-		g_return_val_if_fail(gis != NULL, FALSE);
-
-		priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(gis);
-		gtk_window_present(priv->parent);
-
-		return TRUE;
-	}
-
-	return FALSE;
-}
-
-
-static void setup_selection(GigoloSingleInstance *gis)
-{
-	GdkScreen *gscreen;
-	gchar      selection_name[32];
-	Atom       selection_atom;
-	GtkWidget *win;
-	Window     xwin;
-
-	win = gtk_invisible_new();
-	gtk_widget_realize(win);
-	xwin = GDK_WINDOW_XID(gigolo_widget_get_window(GTK_WIDGET(win)));
-
-	gscreen = gtk_widget_get_screen(win);
-	g_snprintf(selection_name, sizeof(selection_name),
-		GIGOLO_SI_NAME"%d", gdk_screen_get_number(gscreen));
-	selection_atom = XInternAtom(GDK_DISPLAY(), selection_name, False);
-
-	if (XGetSelectionOwner(GDK_DISPLAY(), selection_atom))
-	{
-		gtk_widget_destroy(win);
-		return;
-	}
-
-	XSelectInput(GDK_DISPLAY(), xwin, PropertyChangeMask);
-	XSetSelectionOwner(GDK_DISPLAY(), selection_atom, xwin, GDK_CURRENT_TIME);
-
-	g_signal_connect(G_OBJECT(win), "client-event", G_CALLBACK(message_received), gis);
-}
-
-
-static void gigolo_single_instance_init(GigoloSingleInstance *self)
-{
-	GigoloSingleInstancePrivate *priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(self);
-
-	priv->found_instance = FALSE;
-	priv->window = NULL;
-}
-
-
-gboolean gigolo_single_instance_is_running(GigoloSingleInstance *gis)
-{
-	GigoloSingleInstancePrivate *priv;
-
-	g_return_val_if_fail(gis != NULL, FALSE);
-
-	priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(gis);
-
-	return priv->found_instance;
-}
-
-
-static gboolean find_running_instance(GigoloSingleInstance *gis)
-{
-	GdkScreen *gscreen;
-	gchar selection_name[32];
-	Atom selection_atom;
-	GigoloSingleInstancePrivate *priv;
-
-	g_return_val_if_fail(gis != NULL, FALSE);
-
-	priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(gis);
-	priv->window = gtk_invisible_new();
-	gtk_widget_realize(priv->window);
-
-	gscreen = gtk_widget_get_screen(priv->window);
-	g_snprintf(selection_name, sizeof(selection_name),
-		GIGOLO_SI_NAME"%d", gdk_screen_get_number(gscreen));
-	selection_atom = XInternAtom(GDK_DISPLAY(), selection_name, False);
-
-	priv->id = XGetSelectionOwner(GDK_DISPLAY(), selection_atom);
-
-	gdk_flush();
-
-	return (priv->id != None);
-}
-
-
-void gigolo_single_instance_present(GigoloSingleInstance *gis)
-{
-	GigoloSingleInstancePrivate *priv;
-
-	g_return_if_fail(gis != NULL);
-
-	priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(gis);
-	if (priv->id != None && priv->found_instance)
-	{
-		GdkEventClient gev;
-
-		gev.type = GDK_CLIENT_EVENT;
-		gev.window = gigolo_widget_get_window(priv->window);
-		gev.send_event = TRUE;
-		gev.message_type = gdk_atom_intern("STRING", FALSE);
-		gev.data_format = 8;
-		g_strlcpy(gev.data.b, GIGOLO_SI_CMD, sizeof(gev.data.b));
-
-		gdk_event_send_client_message((GdkEvent*) &gev, (GdkNativeWindow) priv->id);
-	}
-}
-
-
-/* When creating a new object of this class we search an already running instance of Gigolo
- * and in case we found one, we set the 'found_instance' member to TRUE.
- * Otherwise, we register ourselves as new single running instance. */
-GigoloSingleInstance *
-gigolo_single_instance_new(void)
-{
-	GigoloSingleInstance *gis = g_object_new(GIGOLO_SINGLE_INSTANCE_TYPE, NULL);
-	GigoloSingleInstancePrivate *priv = GIGOLO_SINGLE_INSTANCE_GET_PRIVATE(gis);
-
-	if (find_running_instance(gis))
-	{
-		priv->found_instance = TRUE;
-	}
-	else
-	{
-		setup_selection(gis);
-	}
-
-	return gis;
-}
-
diff --git a/src/singleinstance.h b/src/singleinstance.h
deleted file mode 100644
index 9564023..0000000
--- a/src/singleinstance.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- *      singleinstance.h
- *
- *      Copyright 2009-2011 Enrico Tröger <enrico(at)xfce(dot)org>
- *
- *      This program is free software; you can redistribute it and/or modify
- *      it under the terms of the GNU General Public License as published by
- *      the Free Software Foundation; either version 2 of the License, or
- *      (at your option) any later version.
- *
- *      This program is distributed in the hope that it will be useful,
- *      but WITHOUT ANY WARRANTY; without even the implied warranty of
- *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *      GNU General Public License for more details.
- *
- *      You should have received a copy of the GNU General Public License
- *      along with this program; if not, write to the Free Software
- *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- *      MA 02110-1301, USA.
- */
-
-
-#ifndef __SINGLEINSTANCE_H__
-#define __SINGLEINSTANCE_H__
-
-G_BEGIN_DECLS
-
-#define GIGOLO_SINGLE_INSTANCE_TYPE				(gigolo_single_instance_get_type())
-#define GIGOLO_SINGLE_INSTANCE(obj)				(G_TYPE_CHECK_INSTANCE_CAST((obj),\
-			GIGOLO_SINGLE_INSTANCE_TYPE, GigoloSingleInstance))
-#define GIGOLO_SINGLE_INSTANCE_CLASS(klass)		(G_TYPE_CHECK_CLASS_CAST((klass),\
-			GIGOLO_SINGLE_INSTANCE_TYPE, GigoloSingleInstanceClass))
-#define IS_GIGOLO_SINGLE_INSTANCE(obj)			(G_TYPE_CHECK_INSTANCE_TYPE((obj),\
-			GIGOLO_SINGLE_INSTANCE_TYPE))
-#define IS_GIGOLO_SINGLE_INSTANCE_CLASS(klass)	(G_TYPE_CHECK_CLASS_TYPE((klass),\
-			GIGOLO_SINGLE_INSTANCE_TYPE))
-
-typedef struct _GigoloSingleInstance			GigoloSingleInstance;
-typedef struct _GigoloSingleInstanceClass		GigoloSingleInstanceClass;
-
-GType					gigolo_single_instance_get_type		(void);
-GigoloSingleInstance*	gigolo_single_instance_new			(void);
-
-gboolean				gigolo_single_instance_is_running	(GigoloSingleInstance *gis);
-void					gigolo_single_instance_present		(GigoloSingleInstance *gis);
-
-void					gigolo_single_instance_set_parent	(GigoloSingleInstance *gis,
-															 GtkWindow *parent);
-
-G_END_DECLS
-
-#endif /* __SINGLEINSTANCE_H__ */

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list