]> git.0d.be Git - empathy.git/commitdiff
Remove calls to gtk_dialog_set_has_separator() if building against GTK+ 3
authorPhilip Withnall <philip.withnall@collabora.co.uk>
Tue, 7 Sep 2010 09:46:12 +0000 (10:46 +0100)
committerPhilip Withnall <philip.withnall@collabora.co.uk>
Tue, 7 Sep 2010 09:50:47 +0000 (10:50 +0100)
gtk_dialog_set_has_separator() has been removed in GTK+ 3, but can't be
removed (or the property's default value changed) in GTK+ 2 without breaking
API. This adds a wrapper macro to keep the calls when building against GTK+ 2,
and remove them when building against GTK+ 3.

12 files changed:
configure.ac
libempathy-gtk/empathy-contact-dialogs.c
libempathy-gtk/empathy-contact-selector-dialog.c
libempathy-gtk/empathy-individual-dialogs.c
libempathy-gtk/empathy-individual-edit-dialog.c
libempathy-gtk/empathy-individual-information-dialog.c
libempathy-gtk/empathy-linking-dialog.c
libempathy-gtk/empathy-status-preset-dialog.c
libempathy-gtk/empathy-ui-utils.h
src/empathy-accounts-dialog.c
src/empathy-import-dialog.c
src/empathy-preferences.c

index 5003809692aa1501c59616caed19d7ee77e0b5b7..93391dff92063c829c2a89c1c1ed922d0d40f2e3 100644 (file)
@@ -205,6 +205,8 @@ if test "x$have_gtk3" == "xyes"; then
    PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= $LIBNOTIFY_REQUIRED_GTK3)
    PKG_CHECK_MODULES(UNIQUE, unique-3.0 >= $UNIQUE_REQUIRED)
    PKG_CHECK_MODULES(GCR, gcr-3 >= $KEYRING_REQUIRED)
+
+   AC_DEFINE(HAVE_GTK3, 1, [Define if we're compiling against GTK+ 3])
 else
    PKG_CHECK_MODULES(GTK, gtk+-2.0 >= $GTK_REQUIRED)
 
index 003710b03107ece640a8ce9281038a1b85044769..6da181087cdf81b8534a97431a3fca004827aaef 100644 (file)
@@ -178,7 +178,7 @@ empathy_contact_information_dialog_show (EmpathyContact *contact,
 
        /* Create dialog */
        dialog = gtk_dialog_new ();
-       gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+       empathy_dialog_remove_separator (GTK_DIALOG (dialog));
        gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
        gtk_window_set_title (GTK_WINDOW (dialog),
                empathy_contact_get_alias (contact));
@@ -238,7 +238,7 @@ empathy_contact_edit_dialog_show (EmpathyContact *contact,
 
        /* Create dialog */
        dialog = gtk_dialog_new ();
-       gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+       empathy_dialog_remove_separator (GTK_DIALOG (dialog));
        gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
        gtk_window_set_title (GTK_WINDOW (dialog), _("Edit Contact Information"));
 
@@ -290,7 +290,7 @@ empathy_contact_personal_dialog_show (GtkWindow *parent)
 
        /* Create dialog */
        personal_dialog = gtk_dialog_new ();
-       gtk_dialog_set_has_separator (GTK_DIALOG (personal_dialog), FALSE);
+       empathy_dialog_remove_separator (GTK_DIALOG (personal_dialog));
        gtk_window_set_resizable (GTK_WINDOW (personal_dialog), FALSE);
        gtk_window_set_title (GTK_WINDOW (personal_dialog), _("Personal Information"));
 
@@ -396,7 +396,7 @@ empathy_new_contact_dialog_show_with_contact (GtkWindow *parent,
 
        /* Create dialog */
        dialog = gtk_dialog_new ();
-       gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+       empathy_dialog_remove_separator (GTK_DIALOG (dialog));
        gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
        gtk_window_set_title (GTK_WINDOW (dialog), _("New Contact"));
 
index 47a8402405e070863a1bff4784cec0a72294a453..7989e9cccdb22cb521a1d2e92c402a72f211d91d 100644 (file)
@@ -316,7 +316,7 @@ empathy_contact_selector_dialog_init (EmpathyContactSelectorDialog *dialog)
     GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
 
   /* Tweak the dialog */
-  gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+  empathy_dialog_remove_separator (GTK_DIALOG (dialog));
 
   gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
   gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER_ON_PARENT);
index cd5c0f3cd2db3533216808e66790a672a2312dd4..55682812efd588c3026cc34ca99df699cd81d524 100644 (file)
@@ -107,7 +107,7 @@ empathy_new_individual_dialog_show_with_individual (GtkWindow *parent,
 
   /* Create dialog */
   dialog = gtk_dialog_new ();
-  gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+  empathy_dialog_remove_separator (GTK_DIALOG (dialog));
   gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
   gtk_window_set_title (GTK_WINDOW (dialog), _("New Contact"));
 
index 3f5f35d452caf89ee0cf132d062efd59f0980b97..30ca1cc6658c871076396ef19ad48fa9f6c8ad38 100644 (file)
@@ -243,7 +243,7 @@ empathy_individual_edit_dialog_init (
   dialog->priv = priv;
   priv->individual = NULL;
 
-  gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+  empathy_dialog_remove_separator (GTK_DIALOG (dialog));
   gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
   gtk_window_set_title (GTK_WINDOW (dialog), _("Edit Contact Information"));
 
index 438c0bb37984dc8ab78c1ffa86d2737e6a6a4a8a..e6d4a90addb0788c3dcd12e0e9f2b5f3f2e52142 100644 (file)
@@ -273,7 +273,7 @@ empathy_individual_information_dialog_init (
   dialog->priv = priv;
   priv->individual = NULL;
 
-  gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+  empathy_dialog_remove_separator (GTK_DIALOG (dialog));
   gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE);
 
   content_area = GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog)));
index cb6461a815a3ec53ac3761bb7b4637e33b63a865..2e62e5d1e9c3bbe9a35bdc0ae0291e7d8ccb2c0c 100644 (file)
@@ -34,6 +34,7 @@
 
 #include "empathy-linking-dialog.h"
 #include "empathy-individual-linker.h"
+#include "empathy-ui-utils.h"
 
 /**
  * SECTION:empathy-individual-widget
@@ -107,7 +108,7 @@ empathy_linking_dialog_init (EmpathyLinkingDialog *self)
   dialog = GTK_DIALOG (self);
 
   /* Set up dialog */
-  gtk_dialog_set_has_separator (dialog, FALSE);
+  empathy_dialog_remove_separator (GTK_DIALOG (dialog));
   gtk_window_set_resizable (GTK_WINDOW (self), TRUE);
   /* Translators: this is the title of the linking dialogue (reached by
    * right-clicking on a contact and selecting "Linkā€¦"). "Link" in this title
index 315a750a51ce257f1dbbd03bcb782049a956e4d6..2a5904bfb0d8ba187e306f8efae4bf8a664223a1 100644 (file)
@@ -521,7 +521,7 @@ empathy_status_preset_dialog_init (EmpathyStatusPresetDialog *self)
 
        gtk_window_set_title (GTK_WINDOW (self),
                        _("Edit Custom Messages"));
-       gtk_dialog_set_has_separator (GTK_DIALOG (self), FALSE);
+       empathy_dialog_remove_separator (GTK_DIALOG (self));
        gtk_dialog_add_button (GTK_DIALOG (self),
                        GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE);
 
index 0b76d09a359495d869c8706f1974ff5464f3ff96..43da188dbe41f0808a00da0dbbd1dc92877fdae4 100644 (file)
@@ -129,6 +129,22 @@ void        empathy_window_iconify                      (GtkWindow        *windo
                                                         GtkStatusIcon    *status_icon);
 GtkWindow * empathy_get_toplevel_window                 (GtkWidget        *widget);
 
+/**
+ * empathy_dialog_remove_separator:
+ * @d: a #GtkDialog
+ *
+ * Replacement for gtk_dialog_set_has_separator(), which was removed for GTK+ 3.
+ * This is a no-op for GTK+ 3, and expands to a call to
+ * gtk_dialog_set_has_separator() with %FALSE for GTK+ 2.
+ *
+ * FIXME: Once we depend on GTK+ 3 unconditionally, this macro can be removed.
+ */
+#ifndef HAVE_GTK3
+#define empathy_dialog_remove_separator(d) gtk_dialog_set_has_separator(d, FALSE);
+#else
+#define empathy_dialog_remove_separator(d)
+#endif
+
 /* URL */
 gchar *     empathy_make_absolute_url                   (const gchar      *url);
 
index 4bf692778ec591a24f51cb60d0bf2caf84ad1ca4..2ad2fb759f8fbe343077dc6800aeb13437f5e610 100644 (file)
@@ -2155,7 +2155,10 @@ accounts_dialog_build_ui (EmpathyAccountsDialog *dialog)
 
   gtk_window_set_type_hint (GTK_WINDOW (dialog), GDK_WINDOW_TYPE_HINT_DIALOG);
 
+  /* FIXME: Remove this once we unconditionally depend on GTK+ 3 */
+#ifndef HAVE_GTK3
   gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+#endif
 
   /* add dialog buttons */
   gtk_button_box_set_layout (GTK_BUTTON_BOX (action_area), GTK_BUTTONBOX_END);
index e8b1ed87cef4d15c59cbd0d77997fb2248d8fcce..1fc00c0e5a86c67b5d9fcef1f4ce350dd4045e45 100644 (file)
@@ -198,7 +198,11 @@ empathy_import_dialog_init (EmpathyImportDialog *self)
   gtk_container_set_border_width (GTK_CONTAINER (self), 5);
   gtk_window_set_title (GTK_WINDOW (self), _("Import Accounts"));
   gtk_window_set_modal (GTK_WINDOW (self), TRUE);
+
+  /* FIXME: Remove this once we unconditionally depend on GTK+ 3 */
+#ifndef HAVE_GTK3
   gtk_dialog_set_has_separator (GTK_DIALOG (self), FALSE);
+#endif
 }
 
 static void
index acf5eab21b6e4fe7896290b3674698d4f433fe94..edc405974c924c4d1ca29a5fb567b9a84d540638 100644 (file)
@@ -884,7 +884,11 @@ empathy_preferences_init (EmpathyPreferences *preferences)
        gtk_window_set_position (GTK_WINDOW (preferences),
                                 GTK_WIN_POS_CENTER_ON_PARENT);
        gtk_window_set_icon_name (GTK_WINDOW (preferences), "gtk-preferences");
+
+       /* FIXME: Remove this once we unconditionally depend on GTK+ 3 */
+#ifndef HAVE_GTK3
        gtk_dialog_set_has_separator (GTK_DIALOG (preferences), FALSE);
+#endif
 
        filename = empathy_file_lookup ("empathy-preferences.ui", "src");
        gui = empathy_builder_get_file (filename,