]> git.0d.be Git - empathy.git/commitdiff
[darcs-to-svn @ Improved EmpathyStatusIcon and GossipPresenceChooser]
authorXavier Claessens <xclaesse@src.gnome.org>
Thu, 10 May 2007 09:02:17 +0000 (09:02 +0000)
committerXavier Claessens <xclaesse@src.gnome.org>
Thu, 10 May 2007 09:02:17 +0000 (09:02 +0000)
svn path=/trunk/; revision=43

libempathy-gtk/empathy-main-window.c
libempathy-gtk/empathy-status-icon.c
libempathy-gtk/empathy-status-icon.glade [new file with mode: 0644]
libempathy-gtk/empathy-status-icon.h
libempathy-gtk/gossip-chat-manager.c [deleted file]
libempathy-gtk/gossip-chat-manager.h [deleted file]
libempathy-gtk/gossip-presence-chooser.c
libempathy-gtk/gossip-presence-chooser.h
src/empathy-main.c

index 6394a6498eb53ceee08c1f0ee6446678c7b2bf9e..531d311e650f211ac24842e83ba99f36d6a6ce6b 100644 (file)
@@ -28,7 +28,6 @@
 #include <glib/gi18n.h>
 
 #include <libtelepathy/tp-helpers.h>
 #include <glib/gi18n.h>
 
 #include <libtelepathy/tp-helpers.h>
-#include <libmissioncontrol/mission-control.h>
 
 #include <libempathy/gossip-conf.h>
 #include <libempathy/gossip-contact.h>
 
 #include <libempathy/gossip-conf.h>
 #include <libempathy/gossip-contact.h>
 /* Accels (menu shortcuts) can be configured and saved */
 #define ACCELS_FILENAME "accels.txt"
 
 /* Accels (menu shortcuts) can be configured and saved */
 #define ACCELS_FILENAME "accels.txt"
 
-/* Flashing delay for icons (milliseconds). */
-#define FLASH_TIMEOUT 500
-
 /* Name in the geometry file */
 #define GEOMETRY_NAME "main-window"
 
 typedef struct {
        GossipContactList *contact_list;
 /* Name in the geometry file */
 #define GEOMETRY_NAME "main-window"
 
 typedef struct {
        GossipContactList *contact_list;
-       MissionControl    *mc;
 
        /* Main widgets */
        GtkWidget         *window;
 
        /* Main widgets */
        GtkWidget         *window;
@@ -132,14 +127,6 @@ static void     main_window_accels_load                    (void);
 static void     main_window_accels_save                    (void);
 static void     main_window_connection_items_setup         (EmpathyMainWindow   *window,
                                                            GladeXML            *glade);
 static void     main_window_accels_save                    (void);
 static void     main_window_connection_items_setup         (EmpathyMainWindow   *window,
                                                            GladeXML            *glade);
-//static void     main_window_connection_items_update        (void);
-static void     main_window_presence_changed_cb            (MissionControl      *mc,
-                                                           McPresence           state,
-                                                           EmpathyMainWindow   *window);
-static void     main_window_presence_chooser_changed_cb    (GtkWidget           *chooser,
-                                                           McPresence           state,
-                                                           const gchar         *status,
-                                                           EmpathyMainWindow   *window);
 static gboolean main_window_configure_event_timeout_cb     (EmpathyMainWindow   *window);
 static gboolean main_window_configure_event_cb             (GtkWidget           *widget,
                                                            GdkEventConfigure   *event,
 static gboolean main_window_configure_event_timeout_cb     (EmpathyMainWindow   *window);
 static gboolean main_window_configure_event_cb             (GtkWidget           *widget,
                                                            GdkEventConfigure   *event,
@@ -168,7 +155,6 @@ empathy_main_window_show (void)
        GtkWidget                *ebox;
        GtkToolItem              *item;
        gchar                    *str;
        GtkWidget                *ebox;
        GtkToolItem              *item;
        gchar                    *str;
-       McPresence                state;
        gboolean                  show_offline;
        gboolean                  show_avatars;
        gboolean                  compact_contact_list;
        gboolean                  show_offline;
        gboolean                  show_avatars;
        gboolean                  compact_contact_list;
@@ -230,22 +216,8 @@ empathy_main_window_show (void)
        gtk_widget_hide (window->edit_context_separator);
 
        /* Set up presence chooser */
        gtk_widget_hide (window->edit_context_separator);
 
        /* Set up presence chooser */
-       window->mc = mission_control_new (tp_get_bus ());
        window->presence_chooser = gossip_presence_chooser_new ();
        window->presence_chooser = gossip_presence_chooser_new ();
-       gossip_presence_chooser_set_flash_interval (GOSSIP_PRESENCE_CHOOSER (window->presence_chooser),
-                                                   FLASH_TIMEOUT);
-       dbus_g_proxy_connect_signal (DBUS_G_PROXY (window->mc),
-                                    "PresenceStatusActual",
-                                    G_CALLBACK (main_window_presence_changed_cb),
-                                    window, NULL);
-       g_signal_connect (window->presence_chooser,
-                         "changed",
-                         G_CALLBACK (main_window_presence_chooser_changed_cb),
-                         window);
-       state = mission_control_get_presence_actual (window->mc, NULL);
-       main_window_presence_changed_cb (window->mc, state, window);
        gtk_widget_show (window->presence_chooser);
        gtk_widget_show (window->presence_chooser);
-
        item = gtk_tool_item_new ();
        gtk_widget_show (GTK_WIDGET (item));
        gtk_container_add (GTK_CONTAINER (item), window->presence_chooser);
        item = gtk_tool_item_new ();
        gtk_widget_show (GTK_WIDGET (item));
        gtk_container_add (GTK_CONTAINER (item), window->presence_chooser);
@@ -254,7 +226,7 @@ empathy_main_window_show (void)
        gtk_toolbar_insert (GTK_TOOLBAR (window->presence_toolbar), item, -1);
 
        window->widgets_connected = g_list_prepend (window->widgets_connected,
        gtk_toolbar_insert (GTK_TOOLBAR (window->presence_toolbar), item, -1);
 
        window->widgets_connected = g_list_prepend (window->widgets_connected,
-                                                 window->presence_chooser);
+                                                   window->presence_chooser);
 
        /* Set up the throbber */
        ebox = gtk_event_box_new ();
 
        /* Set up the throbber */
        ebox = gtk_event_box_new ();
@@ -371,7 +343,6 @@ main_window_destroy_cb (GtkWidget         *widget,
        g_list_free (window->widgets_disconnected);
 
        g_object_unref (window->tooltips);
        g_list_free (window->widgets_disconnected);
 
        g_object_unref (window->tooltips);
-       g_object_unref (window->mc);
 
        g_free (window);
 }
 
        g_free (window);
 }
@@ -385,7 +356,7 @@ static void
 main_window_chat_quit_cb (GtkWidget         *widget,
                          EmpathyMainWindow *window)
 {
 main_window_chat_quit_cb (GtkWidget         *widget,
                          EmpathyMainWindow *window)
 {
-       gtk_widget_destroy (window->window);
+       gtk_main_quit ();
 }
 
 static void
 }
 
 static void
@@ -729,68 +700,6 @@ main_window_connection_items_setup (EmpathyMainWindow *window,
        window->widgets_disconnected = list;
 }
 
        window->widgets_disconnected = list;
 }
 
-#if 0
-FIXME:
-static void
-main_window_connection_items_update (void)
-{
-       GList         *l;
-       guint          connected = 0;
-       guint          disconnected = 0;
-
-       /* Get account count for:
-        *  - connected and disabled,
-        *  - connected and enabled
-        *  - disabled and enabled
-        */
-       gossip_session_count_accounts (window->session,
-                                      &connected,
-                                      NULL,
-                                      &disconnected);
-
-       for (l = window->widgets_connected; l; l = l->next) {
-               gtk_widget_set_sensitive (l->data, (connected > 0));
-       }
-
-       for (l = window->widgets_disconnected; l; l = l->next) {
-               gtk_widget_set_sensitive (l->data, (disconnected > 0));
-       }
-}
-#endif
-
-static void
-main_window_presence_changed_cb (MissionControl    *mc,
-                                McPresence         state,
-                                EmpathyMainWindow *window)
-{
-       gchar *status;
-
-       gossip_debug (DEBUG_DOMAIN, "presence changed to %d", state);
-
-       status = mission_control_get_presence_message_actual (window->mc, NULL);
-
-       if (G_STR_EMPTY (status)) {
-               g_free (status);
-               status = g_strdup (gossip_presence_state_get_default_status (state));
-       }
-
-       gossip_presence_chooser_set_state (GOSSIP_PRESENCE_CHOOSER (window->presence_chooser),
-                                          state);
-       gossip_presence_chooser_set_status (GOSSIP_PRESENCE_CHOOSER (window->presence_chooser),
-                                           status);
-       g_free (status);
-}
-
-static void
-main_window_presence_chooser_changed_cb (GtkWidget         *chooser,
-                                        McPresence         state,
-                                        const gchar       *status,
-                                        EmpathyMainWindow *window)
-{
-       gossip_status_presets_set_default (state, status);
-       mission_control_set_presence (window->mc, state, status, NULL, NULL);
-}
-
 static gboolean
 main_window_configure_event_timeout_cb (EmpathyMainWindow *window)
 {
 static gboolean
 main_window_configure_event_timeout_cb (EmpathyMainWindow *window)
 {
index e46944e5b32dd09f79f36058358b65dedcf2b9f0..ac77275a5f2114f82b7060ac7d77286bd044cf65 100644 (file)
 struct _EmpathyStatusIconPriv {
        MissionControl *mc;
        GtkStatusIcon  *icon;
 struct _EmpathyStatusIconPriv {
        MissionControl *mc;
        GtkStatusIcon  *icon;
+       GtkWindow      *window;
 };
 
 };
 
-static void empathy_status_icon_class_init  (EmpathyStatusIconClass          *klass);
-static void empathy_status_icon_init        (EmpathyStatusIcon               *icon);
-static void status_icon_finalize            (GObject                         *object);
-static void status_icon_presence_changed_cb (MissionControl                  *mc,
-                                            McPresence                       state,
-                                            EmpathyStatusIcon               *icon);
-static void status_icon_activate_cb         (GtkStatusIcon                   *status_icon,
-                                            EmpathyStatusIcon               *icon);
-
-enum {
-       ACTIVATE,
-       LAST_SIGNAL
-};
-
-static guint signals[LAST_SIGNAL];
+static void empathy_status_icon_class_init  (EmpathyStatusIconClass *klass);
+static void empathy_status_icon_init        (EmpathyStatusIcon      *icon);
+static void status_icon_finalize            (GObject                *object);
+static void status_icon_presence_changed_cb (MissionControl         *mc,
+                                            McPresence              state,
+                                            EmpathyStatusIcon      *icon);
+static void status_icon_toggle_visibility   (EmpathyStatusIcon      *icon);
+static void status_icon_activate_cb         (GtkStatusIcon          *status_icon,
+                                            EmpathyStatusIcon      *icon);
 
 G_DEFINE_TYPE (EmpathyStatusIcon, empathy_status_icon, G_TYPE_OBJECT);
 
 
 G_DEFINE_TYPE (EmpathyStatusIcon, empathy_status_icon, G_TYPE_OBJECT);
 
@@ -72,16 +67,6 @@ empathy_status_icon_class_init (EmpathyStatusIconClass *klass)
 
        object_class->finalize = status_icon_finalize;
 
 
        object_class->finalize = status_icon_finalize;
 
-       signals[ACTIVATE] =
-               g_signal_new ("activate",
-                             G_TYPE_FROM_CLASS (klass),
-                             G_SIGNAL_RUN_LAST,
-                             0,
-                             NULL, NULL,
-                             g_cclosure_marshal_VOID__VOID,
-                             G_TYPE_NONE,
-                             0);
-
        g_type_class_add_private (object_class, sizeof (EmpathyStatusIconPriv));
 }
 
        g_type_class_add_private (object_class, sizeof (EmpathyStatusIconPriv));
 }
 
@@ -93,8 +78,10 @@ empathy_status_icon_init (EmpathyStatusIcon *icon)
 
        priv = GET_PRIV (icon);
 
 
        priv = GET_PRIV (icon);
 
-       priv->mc = mission_control_new (tp_get_bus ());
        priv->icon = gtk_status_icon_new ();
        priv->icon = gtk_status_icon_new ();
+       priv->mc = mission_control_new (tp_get_bus ());
+       state = mission_control_get_presence_actual (priv->mc, NULL);
+       status_icon_presence_changed_cb (priv->mc, state, icon);
 
        dbus_g_proxy_connect_signal (DBUS_G_PROXY (priv->mc),
                                     "PresenceStatusActual",
 
        dbus_g_proxy_connect_signal (DBUS_G_PROXY (priv->mc),
                                     "PresenceStatusActual",
@@ -103,9 +90,10 @@ empathy_status_icon_init (EmpathyStatusIcon *icon)
        g_signal_connect (priv->icon, "activate",
                          G_CALLBACK (status_icon_activate_cb),
                          icon);
        g_signal_connect (priv->icon, "activate",
                          G_CALLBACK (status_icon_activate_cb),
                          icon);
-
-       state = mission_control_get_presence_actual (priv->mc, NULL);
-       status_icon_presence_changed_cb (priv->mc, state, icon);
+/*     g_signal_connect (priv->icon, "popup-menu",
+                         G_CALLBACK (status_icon_popup_menu_cb),
+                         icon);
+*/
 }
 
 static void
 }
 
 static void
@@ -119,18 +107,26 @@ status_icon_finalize (GObject *object)
                                        "PresenceStatusActual",
                                        G_CALLBACK (status_icon_presence_changed_cb),
                                        object);
                                        "PresenceStatusActual",
                                        G_CALLBACK (status_icon_presence_changed_cb),
                                        object);
-       g_signal_handlers_disconnect_by_func (priv->icon,
-                                             status_icon_activate_cb,
-                                             object);
 
        g_object_unref (priv->mc);
        g_object_unref (priv->icon);
 
        g_object_unref (priv->mc);
        g_object_unref (priv->icon);
+       g_object_unref (priv->window);
 }
 
 EmpathyStatusIcon *
 }
 
 EmpathyStatusIcon *
-empathy_status_icon_new (void)
+empathy_status_icon_new (GtkWindow *window)
 {
 {
-       return g_object_new (EMPATHY_TYPE_STATUS_ICON, NULL);
+       EmpathyStatusIconPriv *priv;
+       EmpathyStatusIcon     *icon;
+
+       g_return_val_if_fail (GTK_IS_WINDOW (window), NULL);
+
+       icon = g_object_new (EMPATHY_TYPE_STATUS_ICON, NULL);
+       priv = GET_PRIV (icon);
+
+       priv->window = g_object_ref (window);
+
+       return icon;
 }
 
 static void
 }
 
 static void
@@ -157,10 +153,100 @@ status_icon_presence_changed_cb (MissionControl    *mc,
        g_free (status);
 }
 
        g_free (status);
 }
 
+static void
+status_icon_toggle_visibility (EmpathyStatusIcon *icon)
+{
+       EmpathyStatusIconPriv *priv;
+       gboolean               visible;
+
+       priv = GET_PRIV (icon);
+
+       visible = gossip_window_get_is_visible (GTK_WINDOW (priv->window));
+
+       if (visible) {
+               gtk_widget_hide (GTK_WIDGET (priv->window));
+       } else {
+               gossip_window_present (GTK_WINDOW (priv->window), TRUE);
+       }
+}
+
 static void
 status_icon_activate_cb (GtkStatusIcon     *status_icon,
                         EmpathyStatusIcon *icon)
 {
 static void
 status_icon_activate_cb (GtkStatusIcon     *status_icon,
                         EmpathyStatusIcon *icon)
 {
-       g_signal_emit (icon, signals[ACTIVATE], 0);
+       status_icon_toggle_visibility (icon);
+}
+#if 0
+static void
+status_icon_popup_menu_cb (GtkStatusIcon     *status_icon,
+                          guint              button,
+                          guint              activate_time,
+                          EmpathyStatusIcon *icon)
+{
+       EmpathyStatusIconPriv *priv;
+       GtkWidget             *submenu;
+       gboolean               show;
+
+       priv = GET_PRIV (icon);
+
+       show = gossip_window_get_is_visible (GTK_WINDOW (priv->window));
+
+       g_signal_handlers_block_by_func (priv->show_window_item,
+                                        contact_list_show_hide_window_cb,
+                                        icon);
+       gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (priv->show_window_item),
+                                       show);
+       g_signal_handlers_unblock_by_func (priv->show_window_item,
+                                          contact_list_show_hide_window_cb,
+                                          icon);
+
+       submenu = gossip_presence_chooser_create_menu (
+               GOSSIP_PRESENCE_CHOOSER (priv->presence_chooser));
+       gtk_menu_item_set_submenu (GTK_MENU_ITEM (priv->popup_menu_status_item),
+                                  submenu);
+
+       gtk_menu_popup (GTK_MENU (priv->popup_menu),
+                       NULL, NULL,
+                       gtk_status_icon_position_menu,
+                       priv->status_icon,
+                       button,
+                       activate_time);
+}
+
+static void
+app_status_icon_create_menu (void)
+{
+       GossipAppPriv *priv;
+       GladeXML      *glade;
+       GtkWidget     *message_item;
+
+       priv = GET_PRIV (app);
+
+       glade = gossip_glade_get_file ("main.glade",
+                                      "tray_menu",
+                                      NULL,
+                                      "tray_menu", &priv->popup_menu,
+                                      "tray_show_list", &priv->popup_menu_show_list_item,
+                                      "tray_new_message", &message_item,
+                                      "tray_status", &priv->popup_menu_status_item,
+                                      NULL);
+
+       gossip_glade_connect (glade,
+                             app,
+                             "tray_new_message", "activate", app_popup_new_message_cb,
+                             "tray_quit", "activate", app_chat_quit_cb,
+                             NULL);
+
+       g_signal_connect (priv->popup_menu_show_list_item, "toggled",
+                         G_CALLBACK (app_show_hide_list_cb), app);
+
+       priv->widgets_connected = g_list_prepend (priv->widgets_connected,
+                                                 priv->popup_menu_status_item);
+
+       priv->widgets_connected = g_list_prepend (priv->widgets_connected,
+                                                 message_item);
+
+       g_object_unref (glade);
 }
 }
+#endif
 
 
diff --git a/libempathy-gtk/empathy-status-icon.glade b/libempathy-gtk/empathy-status-icon.glade
new file mode 100644 (file)
index 0000000..5a60e72
--- /dev/null
@@ -0,0 +1,8236 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
+
+<glade-interface>
+
+<widget class="GtkDialog" id="subscription_request_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Subscription Request</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox4">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area4">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button19">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">Decide _Later</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button20">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-9</property>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment3">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">0</property>
+                 <property name="yscale">0</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">0</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkHBox" id="hbox48">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">2</property>
+
+                     <child>
+                       <widget class="GtkImage" id="image8">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-no</property>
+                         <property name="icon_size">4</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label218">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Deny</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button21">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-8</property>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment1">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">0</property>
+                 <property name="yscale">0</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">0</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkHBox" id="hbox46">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">2</property>
+
+                     <child>
+                       <widget class="GtkImage" id="image6">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-yes</property>
+                         <property name="icon_size">4</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label216">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Accept</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkHBox" id="hbox45">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">12</property>
+
+         <child>
+           <widget class="GtkImage" id="image5">
+             <property name="visible">True</property>
+             <property name="stock">gtk-dialog-question</property>
+             <property name="icon_size">6</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox142">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">18</property>
+
+             <child>
+               <widget class="GtkLabel" id="who_label">
+                 <property name="visible">True</property>
+                 <property name="label"></property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">True</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkVBox" id="vbox205">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">6</property>
+
+                 <child>
+                   <widget class="GtkTable" id="personal_table">
+                     <property name="visible">True</property>
+                     <property name="n_rows">2</property>
+                     <property name="n_columns">2</property>
+                     <property name="homogeneous">False</property>
+                     <property name="row_spacing">6</property>
+                     <property name="column_spacing">12</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="id_label_value">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes"></property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="id_label">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">ID:</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="website_label">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">Web site:</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">1</property>
+                         <property name="bottom_attach">2</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkHBox" id="info_requested_hbox">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkImage" id="image612">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-dialog-info</property>
+                         <property name="icon_size">4</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label623">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">Information requested...</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">True</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">True</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkTable" id="table1">
+                 <property name="visible">True</property>
+                 <property name="n_rows">2</property>
+                 <property name="n_columns">2</property>
+                 <property name="homogeneous">False</property>
+                 <property name="row_spacing">6</property>
+                 <property name="column_spacing">12</property>
+
+                 <child>
+                   <widget class="GtkLabel" id="name_label">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Name:</property>
+                     <property name="use_underline">True</property>
+                     <property name="use_markup">False</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="mnemonic_widget">name_entry</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="left_attach">0</property>
+                     <property name="right_attach">1</property>
+                     <property name="top_attach">0</property>
+                     <property name="bottom_attach">1</property>
+                     <property name="x_options">fill</property>
+                     <property name="y_options"></property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="group_label">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Group:</property>
+                     <property name="use_underline">True</property>
+                     <property name="use_markup">False</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="mnemonic_widget">group_comboboxentry</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="left_attach">0</property>
+                     <property name="right_attach">1</property>
+                     <property name="top_attach">1</property>
+                     <property name="bottom_attach">2</property>
+                     <property name="x_options">fill</property>
+                     <property name="y_options"></property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkComboBoxEntry" id="group_comboboxentry">
+                     <property name="visible">True</property>
+                     <property name="add_tearoffs">False</property>
+                     <property name="has_frame">True</property>
+                     <property name="focus_on_click">True</property>
+                   </widget>
+                   <packing>
+                     <property name="left_attach">1</property>
+                     <property name="right_attach">2</property>
+                     <property name="top_attach">1</property>
+                     <property name="bottom_attach">2</property>
+                     <property name="x_options">fill</property>
+                     <property name="y_options">fill</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkEntry" id="name_entry">
+                     <property name="visible">True</property>
+                     <property name="tooltip" translatable="yes">This is the name that will be used on your roster for this contact</property>
+                     <property name="can_focus">True</property>
+                     <property name="editable">True</property>
+                     <property name="visibility">True</property>
+                     <property name="max_length">64</property>
+                     <property name="text" translatable="yes"></property>
+                     <property name="has_frame">True</property>
+                     <property name="invisible_char">*</property>
+                     <property name="activates_default">True</property>
+                   </widget>
+                   <packing>
+                     <property name="left_attach">1</property>
+                     <property name="right_attach">2</property>
+                     <property name="top_attach">0</property>
+                     <property name="bottom_attach">1</property>
+                     <property name="y_options"></property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkVBox" id="vbox143">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">6</property>
+
+                 <child>
+                   <widget class="GtkLabel" id="label527">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">If you chose to decide later you will be asked the next time you log on.</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">True</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="question_label">
+                     <property name="visible">True</property>
+                     <property name="label"></property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">True</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="preferences_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Preferences</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="icon_name">gtk-preferences</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox5">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area5">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button_close">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-close</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkNotebook" id="notebook">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="show_tabs">True</property>
+         <property name="show_border">True</property>
+         <property name="tab_pos">GTK_POS_TOP</property>
+         <property name="scrollable">False</property>
+         <property name="enable_popup">False</property>
+
+         <child>
+           <widget class="GtkVBox" id="vbox197">
+             <property name="border_width">12</property>
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">18</property>
+
+             <child>
+               <widget class="GtkFrame" id="frame3">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment11">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox199">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="checkbutton_show_avatars">
+                             <property name="visible">True</property>
+                             <property name="tooltip" translatable="yes">Avatars are user chosen images shown in the contact list</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Show _avatars</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">True</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="checkbutton_compact_contact_list">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Show co_mpact contact list</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="checkbutton_show_smileys">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Show _smileys as images</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">True</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label611">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Appearance&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame4">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment12">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkCheckButton" id="checkbutton_separate_chat_windows">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes">_Open new chats in separate windows</property>
+                         <property name="use_underline">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                         <property name="active">False</property>
+                         <property name="inconsistent">False</property>
+                         <property name="draw_indicator">True</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label612">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Behaviour&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame13">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment31">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox217">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">0</property>
+
+                         <child>
+                           <widget class="GtkRadioButton" id="radiobutton_contact_list_sort_by_name">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Sort by _name</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkRadioButton" id="radiobutton_contact_list_sort_by_state">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Sort by s_tate</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                             <property name="group">radiobutton_contact_list_sort_by_name</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label644">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Contact List&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="tab_expand">False</property>
+             <property name="tab_fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkLabel" id="label602">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">General</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">False</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">False</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+             <property name="width_chars">-1</property>
+             <property name="single_line_mode">False</property>
+             <property name="angle">0</property>
+           </widget>
+           <packing>
+             <property name="type">tab</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="outer_vbox">
+             <property name="border_width">12</property>
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">18</property>
+
+             <child>
+               <widget class="GtkFrame" id="frame5">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment13">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox106">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="checkbutton_sounds_for_messages">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">_Play sound when messages arrive</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="checkbutton_sounds_when_busy">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Enable sounds when _busy</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="checkbutton_sounds_when_away">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">Enable sounds when _away</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label613">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Audio&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame6">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment14">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkCheckButton" id="checkbutton_popups_when_available">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes">Display notifications when contacts come _online</property>
+                         <property name="use_underline">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                         <property name="active">False</property>
+                         <property name="inconsistent">False</property>
+                         <property name="draw_indicator">True</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label614">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Visual&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="tab_expand">False</property>
+             <property name="tab_fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkLabel" id="label607">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">Notifications</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">False</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">False</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+             <property name="width_chars">-1</property>
+             <property name="single_line_mode">False</property>
+             <property name="angle">0</property>
+           </widget>
+           <packing>
+             <property name="type">tab</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox168">
+             <property name="border_width">12</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">18</property>
+
+             <child>
+               <widget class="GtkFrame" id="frame7">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment15">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox201">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkHBox" id="hbox153">
+                             <property name="visible">True</property>
+                             <property name="homogeneous">False</property>
+                             <property name="spacing">0</property>
+
+                             <child>
+                               <widget class="GtkHBox" id="hbox154">
+                                 <property name="visible">True</property>
+                                 <property name="homogeneous">False</property>
+                                 <property name="spacing">6</property>
+
+                                 <child>
+                                   <widget class="GtkScrolledWindow" id="scrolledwindow18">
+                                     <property name="visible">True</property>
+                                     <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                                     <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                                     <property name="shadow_type">GTK_SHADOW_IN</property>
+                                     <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                                     <child>
+                                       <widget class="GtkTreeView" id="treeview_spell_checker">
+                                         <property name="visible">True</property>
+                                         <property name="can_focus">True</property>
+                                         <property name="headers_visible">False</property>
+                                         <property name="rules_hint">False</property>
+                                         <property name="reorderable">False</property>
+                                         <property name="enable_search">True</property>
+                                         <property name="fixed_height_mode">False</property>
+                                         <property name="hover_selection">False</property>
+                                         <property name="hover_expand">False</property>
+                                       </widget>
+                                     </child>
+                                   </widget>
+                                   <packing>
+                                     <property name="padding">0</property>
+                                     <property name="expand">True</property>
+                                     <property name="fill">True</property>
+                                   </packing>
+                                 </child>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">True</property>
+                                 <property name="fill">True</property>
+                               </packing>
+                             </child>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkHBox" id="hbox155">
+                             <property name="visible">True</property>
+                             <property name="homogeneous">False</property>
+                             <property name="spacing">6</property>
+
+                             <child>
+                               <widget class="GtkImage" id="image422">
+                                 <property name="visible">True</property>
+                                 <property name="stock">gtk-dialog-info</property>
+                                 <property name="icon_size">4</property>
+                                 <property name="xalign">0.5</property>
+                                 <property name="yalign">0</property>
+                                 <property name="xpad">0</property>
+                                 <property name="ypad">0</property>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">False</property>
+                                 <property name="fill">True</property>
+                               </packing>
+                             </child>
+
+                             <child>
+                               <widget class="GtkLabel" id="label616">
+                                 <property name="visible">True</property>
+                                 <property name="label" translatable="yes">&lt;small&gt;The list of languages reflects only the languages for which you have a dictionary installed.&lt;/small&gt;</property>
+                                 <property name="use_underline">False</property>
+                                 <property name="use_markup">True</property>
+                                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                 <property name="wrap">True</property>
+                                 <property name="selectable">False</property>
+                                 <property name="xalign">0</property>
+                                 <property name="yalign">0.5</property>
+                                 <property name="xpad">0</property>
+                                 <property name="ypad">0</property>
+                                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                 <property name="width_chars">-1</property>
+                                 <property name="single_line_mode">False</property>
+                                 <property name="angle">0</property>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">True</property>
+                                 <property name="fill">True</property>
+                               </packing>
+                             </child>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label615">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Languages&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame8">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment16">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkCheckButton" id="checkbutton_spell_checker">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes">_Enable spell checking</property>
+                         <property name="use_underline">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                         <property name="active">False</property>
+                         <property name="inconsistent">False</property>
+                         <property name="draw_indicator">True</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label617">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Options&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="tab_expand">False</property>
+             <property name="tab_fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkLabel" id="label567">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">Spell Checking</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">False</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">False</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+             <property name="width_chars">-1</property>
+             <property name="single_line_mode">False</property>
+             <property name="angle">0</property>
+           </widget>
+           <packing>
+             <property name="type">tab</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox206">
+             <property name="border_width">12</property>
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">18</property>
+
+             <child>
+               <widget class="GtkFrame" id="frame11">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment19">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox207">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkHBox" id="hbox139">
+                             <property name="visible">True</property>
+                             <property name="homogeneous">False</property>
+                             <property name="spacing">12</property>
+
+                             <child>
+                               <widget class="GtkLabel" id="label586">
+                                 <property name="visible">True</property>
+                                 <property name="label" translatable="yes">Chat Th_eme:</property>
+                                 <property name="use_underline">True</property>
+                                 <property name="use_markup">False</property>
+                                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                 <property name="wrap">False</property>
+                                 <property name="selectable">False</property>
+                                 <property name="xalign">0.5</property>
+                                 <property name="yalign">0.5</property>
+                                 <property name="xpad">0</property>
+                                 <property name="ypad">0</property>
+                                 <property name="mnemonic_widget">combobox_chat_theme</property>
+                                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                 <property name="width_chars">-1</property>
+                                 <property name="single_line_mode">False</property>
+                                 <property name="angle">0</property>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">False</property>
+                                 <property name="fill">False</property>
+                               </packing>
+                             </child>
+
+                             <child>
+                               <widget class="GtkComboBox" id="combobox_chat_theme">
+                                 <property name="visible">True</property>
+                                 <property name="items" translatable="yes"></property>
+                                 <property name="add_tearoffs">False</property>
+                                 <property name="focus_on_click">True</property>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">False</property>
+                                 <property name="fill">False</property>
+                               </packing>
+                             </child>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label626">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Appearance&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame12">
+                 <property name="visible">True</property>
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment20">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkCheckButton" id="checkbutton_theme_chat_room">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes">_Use for chat rooms</property>
+                         <property name="use_underline">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                         <property name="active">False</property>
+                         <property name="inconsistent">False</property>
+                         <property name="draw_indicator">True</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label627">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;Options&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="tab_expand">False</property>
+             <property name="tab_fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkLabel" id="label624">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">Themes</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">False</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">False</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+             <property name="width_chars">-1</property>
+             <property name="single_line_mode">False</property>
+             <property name="angle">0</property>
+           </widget>
+           <packing>
+             <property name="type">tab</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="edit_groups_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Edit Groups</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="default_width">275</property>
+  <property name="default_height">325</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="icon_name">gtk-edit</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="cancel_button">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="ok_button">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-save</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">18</property>
+
+         <child>
+           <widget class="GtkVBox" id="vbox109">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="contact_label">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="label" translatable="yes"></property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">True</property>
+                 <property name="selectable">True</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="jid_label">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="label" translatable="yes"></property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">True</property>
+                 <property name="selectable">True</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkHBox" id="hbox">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">6</property>
+
+                 <child>
+                   <widget class="GtkEntry" id="add_entry">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="has_focus">True</property>
+                     <property name="editable">True</property>
+                     <property name="visibility">True</property>
+                     <property name="max_length">0</property>
+                     <property name="text" translatable="yes"></property>
+                     <property name="has_frame">True</property>
+                     <property name="invisible_char">*</property>
+                     <property name="activates_default">False</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkButton" id="add_button">
+                     <property name="visible">True</property>
+                     <property name="sensitive">False</property>
+                     <property name="can_focus">True</property>
+                     <property name="label">gtk-add</property>
+                     <property name="use_stock">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkScrolledWindow" id="scrolledwindow">
+                 <property name="height_request">125</property>
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="shadow_type">GTK_SHADOW_IN</property>
+                 <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                 <child>
+                   <widget class="GtkTreeView" id="groups_treeview">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="headers_visible">False</property>
+                     <property name="rules_hint">False</property>
+                     <property name="reorderable">False</property>
+                     <property name="enable_search">False</property>
+                     <property name="fixed_height_mode">False</property>
+                     <property name="hover_selection">False</property>
+                     <property name="hover_expand">False</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="status_message_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Status Message Presets</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox6">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area6">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="cancelbutton1">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="okbutton3">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-ok</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox111">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">6</property>
+
+         <child>
+           <widget class="GtkHBox" id="hbox90">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkImage" id="image_status">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label468">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Enter status message:</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkComboBoxEntry" id="comboentry_status">
+             <property name="visible">True</property>
+             <property name="add_tearoffs">False</property>
+             <property name="has_frame">True</property>
+             <property name="focus_on_click">True</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkCheckButton" id="checkbutton_add">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">_Add to status message list</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="active">False</property>
+             <property name="inconsistent">False</property>
+             <property name="draw_indicator">True</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkMenu" id="tray_menu">
+
+  <child>
+    <widget class="GtkCheckMenuItem" id="tray_show_list">
+      <property name="visible">True</property>
+      <property name="label" translatable="yes">_Show Contact List</property>
+      <property name="use_underline">True</property>
+      <property name="active">False</property>
+    </widget>
+  </child>
+
+  <child>
+    <widget class="GtkSeparatorMenuItem" id="avskiljare5">
+      <property name="visible">True</property>
+    </widget>
+  </child>
+
+  <child>
+    <widget class="GtkImageMenuItem" id="tray_new_message">
+      <property name="visible">True</property>
+      <property name="label" translatable="yes">_New Message...</property>
+      <property name="use_underline">True</property>
+
+      <child internal-child="image">
+       <widget class="GtkImage" id="image599">
+         <property name="visible">True</property>
+         <property name="pixbuf">gossip-message.png</property>
+         <property name="xalign">0.5</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+       </widget>
+      </child>
+    </widget>
+  </child>
+
+  <child>
+    <widget class="GtkMenuItem" id="tray_status">
+      <property name="visible">True</property>
+      <property name="label" translatable="yes">Status</property>
+      <property name="use_underline">True</property>
+    </widget>
+  </child>
+
+  <child>
+    <widget class="GtkSeparatorMenuItem" id="avskiljare6">
+      <property name="visible">True</property>
+    </widget>
+  </child>
+
+  <child>
+    <widget class="GtkImageMenuItem" id="tray_quit">
+      <property name="visible">True</property>
+      <property name="label" translatable="yes">_Quit</property>
+      <property name="use_underline">True</property>
+
+      <child internal-child="image">
+       <widget class="GtkImage" id="image600">
+         <property name="visible">True</property>
+         <property name="stock">gtk-quit</property>
+         <property name="icon_size">1</property>
+         <property name="xalign">0.5</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+       </widget>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="vcard_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Personal Details</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="vbox112">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="hbuttonbox6">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button_cancel">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_save">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-save</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox">
+         <property name="border_width">6</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">18</property>
+
+         <child>
+           <widget class="GtkHBox" id="hbox_account">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">12</property>
+
+             <child>
+               <widget class="GtkLabel" id="label_account">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Account:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <placeholder/>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox_details">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkHBox" id="hbox172">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">18</property>
+
+                 <child>
+                   <widget class="GtkTable" id="table">
+                     <property name="visible">True</property>
+                     <property name="n_rows">7</property>
+                     <property name="n_columns">2</property>
+                     <property name="homogeneous">False</property>
+                     <property name="row_spacing">6</property>
+                     <property name="column_spacing">12</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_name">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">N_ame:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">entry_name</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_nickname">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Nickname:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">entry_nickname</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">1</property>
+                         <property name="bottom_attach">2</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkEntry" id="entry_nickname">
+                         <property name="visible">True</property>
+                         <property name="tooltip" translatable="yes">This name will be used to identify you in chat windows</property>
+                         <property name="can_focus">True</property>
+                         <property name="editable">True</property>
+                         <property name="visibility">True</property>
+                         <property name="max_length">0</property>
+                         <property name="text" translatable="yes"></property>
+                         <property name="has_frame">True</property>
+                         <property name="invisible_char">*</property>
+                         <property name="activates_default">False</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">1</property>
+                         <property name="bottom_attach">2</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_email">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Email:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">entry_email</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">2</property>
+                         <property name="bottom_attach">3</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_web_site">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Web site:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">entry_web_site</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">3</property>
+                         <property name="bottom_attach">4</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkEntry" id="entry_email">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="editable">True</property>
+                         <property name="visibility">True</property>
+                         <property name="max_length">0</property>
+                         <property name="text" translatable="yes"></property>
+                         <property name="has_frame">True</property>
+                         <property name="invisible_char">*</property>
+                         <property name="activates_default">False</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">2</property>
+                         <property name="bottom_attach">3</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkEntry" id="entry_web_site">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="editable">True</property>
+                         <property name="visibility">True</property>
+                         <property name="max_length">0</property>
+                         <property name="text" translatable="yes"></property>
+                         <property name="has_frame">True</property>
+                         <property name="invisible_char">*</property>
+                         <property name="activates_default">False</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">3</property>
+                         <property name="bottom_attach">4</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkEntry" id="entry_name">
+                         <property name="visible">True</property>
+                         <property name="tooltip" translatable="yes">This name will be used to identify you when new contacts lookup your details</property>
+                         <property name="can_focus">True</property>
+                         <property name="has_focus">True</property>
+                         <property name="editable">True</property>
+                         <property name="visibility">True</property>
+                         <property name="max_length">0</property>
+                         <property name="text" translatable="yes"></property>
+                         <property name="has_frame">True</property>
+                         <property name="invisible_char">*</property>
+                         <property name="activates_default">False</property>
+                         <property name="width_chars">22</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_avatar">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">Avatar:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">5</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">5</property>
+                         <property name="bottom_attach">6</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options">fill</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkAlignment" id="alignment10">
+                         <property name="visible">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0</property>
+                         <property name="xscale">0</property>
+                         <property name="yscale">0</property>
+                         <property name="top_padding">0</property>
+                         <property name="bottom_padding">0</property>
+                         <property name="left_padding">0</property>
+                         <property name="right_padding">0</property>
+
+                         <child>
+                           <widget class="GtkButton" id="button_image">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+
+                             <child>
+                               <placeholder/>
+                             </child>
+                           </widget>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">5</property>
+                         <property name="bottom_attach">6</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options">fill</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_birthday">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Birthday:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">4</property>
+                         <property name="bottom_attach">5</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkScrolledWindow" id="scrolledwindow7">
+                         <property name="width_request">150</property>
+                         <property name="height_request">59</property>
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                         <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                         <property name="shadow_type">GTK_SHADOW_IN</property>
+                         <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                         <child>
+                           <widget class="GtkTextView" id="textview_description">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="editable">True</property>
+                             <property name="overwrite">False</property>
+                             <property name="accepts_tab">True</property>
+                             <property name="justification">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap_mode">GTK_WRAP_WORD</property>
+                             <property name="cursor_visible">True</property>
+                             <property name="pixels_above_lines">3</property>
+                             <property name="pixels_below_lines">3</property>
+                             <property name="pixels_inside_wrap">0</property>
+                             <property name="left_margin">0</property>
+                             <property name="right_margin">0</property>
+                             <property name="indent">3</property>
+                             <property name="text" translatable="yes"></property>
+                           </widget>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">6</property>
+                         <property name="bottom_attach">7</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options">fill</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_description">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">_Description:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">textview_description</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">6</property>
+                         <property name="bottom_attach">7</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options">fill</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkHBox" id="hbox173">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkEntry" id="entry_birthday">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="editable">True</property>
+                             <property name="visibility">True</property>
+                             <property name="max_length">0</property>
+                             <property name="text" translatable="yes"></property>
+                             <property name="has_frame">True</property>
+                             <property name="invisible_char">●</property>
+                             <property name="activates_default">False</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkHBox" id="box_birthday_placeholder">
+                             <property name="visible">True</property>
+                             <property name="homogeneous">False</property>
+                             <property name="spacing">0</property>
+
+                             <child>
+                               <placeholder/>
+                             </child>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">4</property>
+                         <property name="bottom_attach">5</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options">fill</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="spell_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Spell Checker</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">True</property>
+  <property name="default_width">275</property>
+  <property name="default_height">225</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox7">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area7">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button_cancel">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_replace">
+             <property name="visible">True</property>
+             <property name="sensitive">False</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment6">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">0</property>
+                 <property name="yscale">0</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">0</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkHBox" id="hbox135">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">2</property>
+
+                     <child>
+                       <widget class="GtkImage" id="image245">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-convert</property>
+                         <property name="icon_size">4</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label594">
+                         <property name="visible">True</property>
+                         <property name="label">_Replace</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox128">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">6</property>
+
+         <child>
+           <widget class="GtkLabel" id="label_word">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">Suggestions for the word:</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">True</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">True</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+             <property name="width_chars">-1</property>
+             <property name="single_line_mode">False</property>
+             <property name="angle">0</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkScrolledWindow" id="scrolledwindow9">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+             <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+             <property name="shadow_type">GTK_SHADOW_IN</property>
+             <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+             <child>
+               <widget class="GtkTreeView" id="treeview_words">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="headers_visible">False</property>
+                 <property name="rules_hint">False</property>
+                 <property name="reorderable">False</property>
+                 <property name="enable_search">True</property>
+                 <property name="fixed_height_mode">False</property>
+                 <property name="hover_selection">False</property>
+                 <property name="hover_expand">False</property>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="new_message_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">New Message</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox8">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area8">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="cancel_button">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="chat_button">
+             <property name="visible">True</property>
+             <property name="sensitive">False</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">Ch_at</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox173">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">18</property>
+
+         <child>
+           <widget class="GtkVBox" id="account_vbox">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="label584">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Which account do you want to use?</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkVBox" id="account_chooser_vbox">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">0</property>
+
+                 <child>
+                   <placeholder/>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="warning_label">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;span size=&quot;smaller&quot;&gt;Note: You must select an account if the contact is unknown&lt;/span&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                     <property name="pack_type">GTK_PACK_END</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+                 <property name="pack_type">GTK_PACK_END</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox176">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="label574">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">_Enter the name or contact ID of the person you want to chat to below:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">True</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="mnemonic_widget">name_entry</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkVBox" id="vbox177">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">0</property>
+
+                 <child>
+                   <widget class="GtkEntry" id="name_entry">
+                     <property name="visible">True</property>
+                     <property name="tooltip" translatable="yes">This acts as a filter to the contact list below. You can use segments of contact's name or ID, for example, &quot;jabber.org&quot; will list everyone using that server</property>
+                     <property name="can_focus">True</property>
+                     <property name="has_focus">True</property>
+                     <property name="editable">True</property>
+                     <property name="visibility">True</property>
+                     <property name="max_length">0</property>
+                     <property name="text" translatable="yes"></property>
+                     <property name="has_frame">True</property>
+                     <property name="invisible_char">*</property>
+                     <property name="activates_default">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label575">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;span size=&quot;smaller&quot;&gt;Example: Mikael or user@server.org&lt;/span&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">2</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkScrolledWindow" id="scrolledwindow12">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+             <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+             <property name="shadow_type">GTK_SHADOW_IN</property>
+             <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+             <child>
+               <widget class="GtkTreeView" id="treeview">
+                 <property name="height_request">135</property>
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="headers_visible">False</property>
+                 <property name="rules_hint">True</property>
+                 <property name="reorderable">False</property>
+                 <property name="enable_search">False</property>
+                 <property name="fixed_height_mode">False</property>
+                 <property name="hover_selection">False</property>
+                 <property name="hover_expand">False</property>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkWindow" id="main_window">
+  <property name="title" translatable="yes">Contact List - Gossip</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="default_width">225</property>
+  <property name="default_height">325</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+
+  <child>
+    <widget class="GtkVBox" id="main_vbox">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
+
+      <child>
+       <widget class="GtkMenuBar" id="menubar2">
+         <property name="visible">True</property>
+         <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
+         <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
+
+         <child>
+           <widget class="GtkMenuItem" id="chat">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">_Chat</property>
+             <property name="use_underline">True</property>
+
+             <child>
+               <widget class="GtkMenu" id="chat_menu">
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_connect">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Connect</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image874">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-connect</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_disconnect">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Disconnect</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image875">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-disconnect</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="separator1">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_new_message">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_New Message...</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="N" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image876">
+                         <property name="visible">True</property>
+                         <property name="pixbuf">gossip-message.png</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_history">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_View Previous Conversations</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="F3" modifiers="0" signal="activate"/>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image877">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-justify-left</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="separator5">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_add_contact">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Add Contact...</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image878">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-add</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_search">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Search</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="S" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image879">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-find</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="separator3">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkCheckMenuItem" id="chat_show_offline">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">Show _Offline Contacts</property>
+                     <property name="use_underline">True</property>
+                     <property name="active">False</property>
+                     <accelerator key="H" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="separator6">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="chat_quit">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Quit</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image880">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-quit</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkMenuItem" id="room">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">_Room</property>
+             <property name="use_underline">True</property>
+
+             <child>
+               <widget class="GtkMenu" id="room_menu">
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="room_join_new">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">Join _New...</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image881">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-new</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkMenuItem" id="room_join_favorites">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">Join _Favorites</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="F5" modifiers="0" signal="activate"/>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="room_sep">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="room_sep2">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="room_manage_favorites">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">Manage Favorites...</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image882">
+                         <property name="visible">True</property>
+                         <property name="pixbuf">gossip-group-message.png</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkMenuItem" id="edit">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">_Edit</property>
+             <property name="use_underline">True</property>
+
+             <child>
+               <widget class="GtkMenu" id="edit_menu">
+
+                 <child>
+                   <widget class="GtkMenuItem" id="edit_context">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">Context</property>
+                     <property name="use_underline">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="edit_context_separator">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkMenuItem" id="edit_accounts">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Accounts</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="F4" modifiers="0" signal="activate"/>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkMenuItem" id="edit_personal_information">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Personal Information</property>
+                     <property name="use_underline">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkSeparatorMenuItem" id="separator2">
+                     <property name="visible">True</property>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="edit_preferences">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Preferences</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image883">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-preferences</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkMenuItem" id="help">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">_Help</property>
+             <property name="use_underline">True</property>
+
+             <child>
+               <widget class="GtkMenu" id="help_menu">
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="help_contents">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_Contents</property>
+                     <property name="use_underline">True</property>
+                     <accelerator key="F1" modifiers="0" signal="activate"/>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image884">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-help</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkImageMenuItem" id="help_about">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">_About</property>
+                     <property name="use_underline">True</property>
+
+                     <child internal-child="image">
+                       <widget class="GtkImage" id="image885">
+                         <property name="visible">True</property>
+                         <property name="stock">gtk-about</property>
+                         <property name="icon_size">1</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkToolbar" id="presence_toolbar">
+         <property name="visible">True</property>
+         <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
+         <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
+         <property name="tooltips">True</property>
+         <property name="show_arrow">True</property>
+
+         <child>
+           <placeholder/>
+         </child>
+
+         <child>
+           <placeholder/>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="filter_entry">
+         <property name="tooltip" translatable="yes">This acts as a filter to the contact list below.
+
+You can use segments of contact's name or ID, for example, &quot;jabber.org&quot; will list everyone using that server.
+
+You can also use the name of a group to show only contacts in a specific group.</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">50</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">●</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="errors_vbox">
+         <property name="homogeneous">False</property>
+         <property name="spacing">0</property>
+
+         <child>
+           <placeholder/>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkScrolledWindow" id="roster_scrolledwindow">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="has_focus">True</property>
+         <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+         <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+         <property name="shadow_type">GTK_SHADOW_IN</property>
+         <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+         <child>
+           <placeholder/>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkWindow" id="log_window">
+  <property name="title" translatable="yes">View Previous Conversations</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="default_width">640</property>
+  <property name="default_height">450</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="icon_name">gtk-justify-left</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+
+  <child>
+    <widget class="GtkNotebook" id="notebook">
+      <property name="border_width">2</property>
+      <property name="visible">True</property>
+      <property name="can_focus">True</property>
+      <property name="show_tabs">True</property>
+      <property name="show_border">True</property>
+      <property name="tab_pos">GTK_POS_TOP</property>
+      <property name="scrollable">False</property>
+      <property name="enable_popup">False</property>
+
+      <child>
+       <widget class="GtkVBox" id="vbox192">
+         <property name="border_width">12</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">6</property>
+
+         <child>
+           <widget class="GtkHBox" id="hbox144">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">12</property>
+
+             <child>
+               <widget class="GtkLabel" id="label628">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">_For:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="mnemonic_widget">entry_find</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkEntry" id="entry_find">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="has_focus">True</property>
+                 <property name="editable">True</property>
+                 <property name="visibility">True</property>
+                 <property name="max_length">0</property>
+                 <property name="text" translatable="yes"></property>
+                 <property name="has_frame">True</property>
+                 <property name="invisible_char">*</property>
+                 <property name="activates_default">True</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkButton" id="button_find">
+                 <property name="visible">True</property>
+                 <property name="sensitive">False</property>
+                 <property name="can_default">True</property>
+                 <property name="has_default">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="label">gtk-find</property>
+                 <property name="use_stock">True</property>
+                 <property name="relief">GTK_RELIEF_NORMAL</property>
+                 <property name="focus_on_click">False</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVPaned" id="vpaned1">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="position">120</property>
+
+             <child>
+               <widget class="GtkScrolledWindow" id="scrolledwindow14">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="shadow_type">GTK_SHADOW_IN</property>
+                 <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                 <child>
+                   <widget class="GtkTreeView" id="treeview_find">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="headers_visible">True</property>
+                     <property name="rules_hint">False</property>
+                     <property name="reorderable">False</property>
+                     <property name="enable_search">False</property>
+                     <property name="fixed_height_mode">False</property>
+                     <property name="hover_selection">False</property>
+                     <property name="hover_expand">False</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="shrink">True</property>
+                 <property name="resize">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkVBox" id="vbox215">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">6</property>
+
+                 <child>
+                   <widget class="GtkScrolledWindow" id="scrolledwindow_find">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                     <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+                     <property name="shadow_type">GTK_SHADOW_IN</property>
+                     <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                     <child>
+                       <placeholder/>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkHBox" id="hbox171">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">12</property>
+
+                     <child>
+                       <placeholder/>
+                     </child>
+
+                     <child>
+                       <widget class="GtkButton" id="button_next">
+                         <property name="visible">True</property>
+                         <property name="sensitive">False</property>
+                         <property name="can_focus">True</property>
+                         <property name="label">gtk-media-next</property>
+                         <property name="use_stock">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">False</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                         <property name="pack_type">GTK_PACK_END</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkButton" id="button_previous">
+                         <property name="visible">True</property>
+                         <property name="sensitive">False</property>
+                         <property name="can_focus">True</property>
+                         <property name="label">gtk-media-previous</property>
+                         <property name="use_stock">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">False</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                         <property name="pack_type">GTK_PACK_END</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="shrink">True</property>
+                 <property name="resize">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="tab_expand">False</property>
+         <property name="tab_fill">True</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label595">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Search</property>
+         <property name="use_underline">False</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0.5</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="type">tab</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkTable" id="table7">
+         <property name="border_width">12</property>
+         <property name="visible">True</property>
+         <property name="n_rows">2</property>
+         <property name="n_columns">2</property>
+         <property name="homogeneous">False</property>
+         <property name="row_spacing">6</property>
+         <property name="column_spacing">6</property>
+
+         <child>
+           <widget class="GtkHBox" id="hbox143">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkImage" id="image247">
+                 <property name="visible">True</property>
+                 <property name="stock">gtk-find</property>
+                 <property name="icon_size">4</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkEntry" id="entry_contacts">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="editable">True</property>
+                 <property name="visibility">True</property>
+                 <property name="max_length">0</property>
+                 <property name="text" translatable="yes"></property>
+                 <property name="has_frame">True</property>
+                 <property name="invisible_char">*</property>
+                 <property name="activates_default">True</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">1</property>
+             <property name="right_attach">2</property>
+             <property name="top_attach">0</property>
+             <property name="bottom_attach">1</property>
+             <property name="x_options">fill</property>
+             <property name="y_options">fill</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox191">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkScrolledWindow" id="scrolledwindow13">
+                 <property name="width_request">150</property>
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="shadow_type">GTK_SHADOW_IN</property>
+                 <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                 <child>
+                   <widget class="GtkTreeView" id="treeview_contacts">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="headers_visible">False</property>
+                     <property name="rules_hint">False</property>
+                     <property name="reorderable">False</property>
+                     <property name="enable_search">True</property>
+                     <property name="fixed_height_mode">False</property>
+                     <property name="hover_selection">False</property>
+                     <property name="hover_expand">False</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkCalendar" id="calendar_contacts">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="display_options">GTK_CALENDAR_SHOW_HEADING|GTK_CALENDAR_SHOW_DAY_NAMES</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">0</property>
+             <property name="right_attach">1</property>
+             <property name="top_attach">1</property>
+             <property name="bottom_attach">2</property>
+             <property name="x_options">fill</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkScrolledWindow" id="scrolledwindow_contacts">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+             <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+             <property name="shadow_type">GTK_SHADOW_IN</property>
+             <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+             <child>
+               <placeholder/>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">1</property>
+             <property name="right_attach">2</property>
+             <property name="top_attach">1</property>
+             <property name="bottom_attach">2</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox_contacts">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <placeholder/>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">0</property>
+             <property name="right_attach">1</property>
+             <property name="top_attach">0</property>
+             <property name="bottom_attach">1</property>
+             <property name="x_options">fill</property>
+             <property name="y_options">fill</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="tab_expand">False</property>
+         <property name="tab_fill">True</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label596">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Contacts</property>
+         <property name="use_underline">False</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0.5</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="type">tab</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkTable" id="table8">
+         <property name="border_width">12</property>
+         <property name="visible">True</property>
+         <property name="n_rows">2</property>
+         <property name="n_columns">2</property>
+         <property name="homogeneous">False</property>
+         <property name="row_spacing">6</property>
+         <property name="column_spacing">6</property>
+
+         <child>
+           <widget class="GtkHBox" id="hbox145">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkImage" id="image299">
+                 <property name="visible">True</property>
+                 <property name="stock">gtk-find</property>
+                 <property name="icon_size">4</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkEntry" id="entry_chatrooms">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="editable">True</property>
+                 <property name="visibility">True</property>
+                 <property name="max_length">0</property>
+                 <property name="text" translatable="yes"></property>
+                 <property name="has_frame">True</property>
+                 <property name="invisible_char">*</property>
+                 <property name="activates_default">True</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">1</property>
+             <property name="right_attach">2</property>
+             <property name="top_attach">0</property>
+             <property name="bottom_attach">1</property>
+             <property name="x_options">fill</property>
+             <property name="y_options">fill</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox193">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkScrolledWindow" id="scrolledwindow15">
+                 <property name="width_request">150</property>
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="shadow_type">GTK_SHADOW_IN</property>
+                 <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                 <child>
+                   <widget class="GtkTreeView" id="treeview_chatrooms">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="headers_visible">False</property>
+                     <property name="rules_hint">False</property>
+                     <property name="reorderable">False</property>
+                     <property name="enable_search">True</property>
+                     <property name="fixed_height_mode">False</property>
+                     <property name="hover_selection">False</property>
+                     <property name="hover_expand">False</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkCalendar" id="calendar_chatrooms">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="display_options">GTK_CALENDAR_SHOW_HEADING|GTK_CALENDAR_SHOW_DAY_NAMES</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">0</property>
+             <property name="right_attach">1</property>
+             <property name="top_attach">1</property>
+             <property name="bottom_attach">2</property>
+             <property name="x_options">fill</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkScrolledWindow" id="scrolledwindow_chatrooms">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+             <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+             <property name="shadow_type">GTK_SHADOW_IN</property>
+             <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+             <child>
+               <placeholder/>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">1</property>
+             <property name="right_attach">2</property>
+             <property name="top_attach">1</property>
+             <property name="bottom_attach">2</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox_chatrooms">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <placeholder/>
+             </child>
+           </widget>
+           <packing>
+             <property name="left_attach">0</property>
+             <property name="right_attach">1</property>
+             <property name="top_attach">0</property>
+             <property name="bottom_attach">1</property>
+             <property name="x_options">fill</property>
+             <property name="y_options">fill</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="tab_expand">False</property>
+         <property name="tab_fill">True</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label597">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Chat Rooms</property>
+         <property name="use_underline">False</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0.5</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="type">tab</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="accounts_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Accounts</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox3">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button_close">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-close</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkHBox" id="hbox146">
+         <property name="border_width">6</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">18</property>
+
+         <child>
+           <widget class="GtkVBox" id="vbox195">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkScrolledWindow" id="scrolledwindow17">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                 <property name="shadow_type">GTK_SHADOW_IN</property>
+                 <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                 <child>
+                   <widget class="GtkTreeView" id="treeview">
+                     <property name="height_request">200</property>
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="headers_visible">True</property>
+                     <property name="rules_hint">False</property>
+                     <property name="reorderable">False</property>
+                     <property name="enable_search">False</property>
+                     <property name="fixed_height_mode">False</property>
+                     <property name="hover_selection">False</property>
+                     <property name="hover_expand">False</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkVBox" id="vbox196">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">6</property>
+
+                 <child>
+                   <widget class="GtkButton" id="button_connect">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label">gtk-connect</property>
+                     <property name="use_stock">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkHBox" id="hbox148">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">True</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkButton" id="button_add">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label">gtk-add</property>
+                         <property name="use_stock">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">True</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkButton" id="button_remove">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label">gtk-remove</property>
+                         <property name="use_stock">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">True</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox214">
+             <property name="width_request">415</property>
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">18</property>
+
+             <child>
+               <widget class="GtkVBox" id="vbox_details">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">18</property>
+
+                 <child>
+                   <widget class="GtkFrame" id="frame1">
+                     <property name="visible">True</property>
+                     <property name="label_xalign">0</property>
+                     <property name="label_yalign">0.5</property>
+                     <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                     <child>
+                       <widget class="GtkAlignment" id="alignment7">
+                         <property name="visible">True</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xscale">1</property>
+                         <property name="yscale">1</property>
+                         <property name="top_padding">6</property>
+                         <property name="bottom_padding">0</property>
+                         <property name="left_padding">20</property>
+                         <property name="right_padding">0</property>
+
+                         <child>
+                           <widget class="GtkVBox" id="vbox213">
+                             <property name="visible">True</property>
+                             <property name="homogeneous">False</property>
+                             <property name="spacing">6</property>
+
+                             <child>
+                               <widget class="GtkTable" id="table14">
+                                 <property name="visible">True</property>
+                                 <property name="n_rows">5</property>
+                                 <property name="n_columns">2</property>
+                                 <property name="homogeneous">False</property>
+                                 <property name="row_spacing">6</property>
+                                 <property name="column_spacing">6</property>
+
+                                 <child>
+                                   <widget class="GtkLabel" id="label_type">
+                                     <property name="visible">True</property>
+                                     <property name="label" translatable="yes">Jabber</property>
+                                     <property name="use_underline">False</property>
+                                     <property name="use_markup">False</property>
+                                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                     <property name="wrap">False</property>
+                                     <property name="selectable">False</property>
+                                     <property name="xalign">0</property>
+                                     <property name="yalign">0.5</property>
+                                     <property name="xpad">0</property>
+                                     <property name="ypad">0</property>
+                                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                     <property name="width_chars">-1</property>
+                                     <property name="single_line_mode">False</property>
+                                     <property name="angle">0</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="left_attach">0</property>
+                                     <property name="right_attach">1</property>
+                                     <property name="top_attach">0</property>
+                                     <property name="bottom_attach">1</property>
+                                     <property name="y_options"></property>
+                                   </packing>
+                                 </child>
+
+                                 <child>
+                                   <widget class="GtkLabel" id="label_name">
+                                     <property name="visible">True</property>
+                                     <property name="label" translatable="yes">Imendio </property>
+                                     <property name="use_underline">False</property>
+                                     <property name="use_markup">False</property>
+                                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                     <property name="wrap">False</property>
+                                     <property name="selectable">False</property>
+                                     <property name="xalign">0</property>
+                                     <property name="yalign">0.5</property>
+                                     <property name="xpad">0</property>
+                                     <property name="ypad">0</property>
+                                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                     <property name="width_chars">0</property>
+                                     <property name="single_line_mode">False</property>
+                                     <property name="angle">0</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="left_attach">0</property>
+                                     <property name="right_attach">1</property>
+                                     <property name="top_attach">1</property>
+                                     <property name="bottom_attach">2</property>
+                                     <property name="y_options"></property>
+                                   </packing>
+                                 </child>
+
+                                 <child>
+                                   <widget class="GtkCheckButton" id="checkbutton_connect">
+                                     <property name="visible">True</property>
+                                     <property name="can_focus">True</property>
+                                     <property name="label" translatable="yes">Connect on S_tartup</property>
+                                     <property name="use_underline">True</property>
+                                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                                     <property name="focus_on_click">True</property>
+                                     <property name="active">False</property>
+                                     <property name="inconsistent">False</property>
+                                     <property name="draw_indicator">True</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="left_attach">0</property>
+                                     <property name="right_attach">1</property>
+                                     <property name="top_attach">3</property>
+                                     <property name="bottom_attach">4</property>
+                                     <property name="x_options">fill</property>
+                                     <property name="y_options"></property>
+                                   </packing>
+                                 </child>
+
+                                 <child>
+                                   <widget class="GtkCheckButton" id="checkbutton_proxy">
+                                     <property name="visible">True</property>
+                                     <property name="can_focus">True</property>
+                                     <property name="label" translatable="yes">Use system pro_xy</property>
+                                     <property name="use_underline">True</property>
+                                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                                     <property name="focus_on_click">True</property>
+                                     <property name="active">False</property>
+                                     <property name="inconsistent">False</property>
+                                     <property name="draw_indicator">True</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="left_attach">0</property>
+                                     <property name="right_attach">1</property>
+                                     <property name="top_attach">4</property>
+                                     <property name="bottom_attach">5</property>
+                                     <property name="x_options">fill</property>
+                                     <property name="y_options"></property>
+                                   </packing>
+                                 </child>
+
+                                 <child>
+                                   <widget class="GtkHSeparator" id="hseparator1">
+                                     <property name="visible">True</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="left_attach">0</property>
+                                     <property name="right_attach">2</property>
+                                     <property name="top_attach">2</property>
+                                     <property name="bottom_attach">3</property>
+                                     <property name="x_options">fill</property>
+                                     <property name="y_options">fill</property>
+                                   </packing>
+                                 </child>
+
+                                 <child>
+                                   <widget class="GtkImage" id="image_type">
+                                     <property name="visible">True</property>
+                                     <property name="stock">gtk-cut</property>
+                                     <property name="icon_size">6</property>
+                                     <property name="xalign">0.5</property>
+                                     <property name="yalign">0</property>
+                                     <property name="xpad">0</property>
+                                     <property name="ypad">0</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="left_attach">1</property>
+                                     <property name="right_attach">2</property>
+                                     <property name="top_attach">0</property>
+                                     <property name="bottom_attach">2</property>
+                                     <property name="x_options">fill</property>
+                                     <property name="y_options">fill</property>
+                                   </packing>
+                                 </child>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">True</property>
+                                 <property name="fill">True</property>
+                               </packing>
+                             </child>
+                           </widget>
+                         </child>
+                       </widget>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label598">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">&lt;b&gt;Account&lt;/b&gt;</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="type">label_item</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkFrame" id="frame2">
+                     <property name="visible">True</property>
+                     <property name="label_xalign">0</property>
+                     <property name="label_yalign">0.5</property>
+                     <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                     <child>
+                       <widget class="GtkAlignment" id="alignment_settings">
+                         <property name="visible">True</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xscale">1</property>
+                         <property name="yscale">1</property>
+                         <property name="top_padding">6</property>
+                         <property name="bottom_padding">0</property>
+                         <property name="left_padding">20</property>
+                         <property name="right_padding">0</property>
+
+                         <child>
+                           <placeholder/>
+                         </child>
+                       </widget>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label599">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">&lt;b&gt;Settings&lt;/b&gt;</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="type">label_item</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame_new_account">
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment29">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">20</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox216">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">12</property>
+
+                         <child>
+                           <widget class="GtkHBox" id="hbox181">
+                             <property name="visible">True</property>
+                             <property name="homogeneous">False</property>
+                             <property name="spacing">12</property>
+
+                             <child>
+                               <widget class="GtkButton" id="button_create">
+                                 <property name="visible">True</property>
+                                 <property name="sensitive">False</property>
+                                 <property name="can_focus">True</property>
+                                 <property name="relief">GTK_RELIEF_NORMAL</property>
+                                 <property name="focus_on_click">True</property>
+
+                                 <child>
+                                   <widget class="GtkAlignment" id="alignment30">
+                                     <property name="visible">True</property>
+                                     <property name="xalign">0.5</property>
+                                     <property name="yalign">0.5</property>
+                                     <property name="xscale">0</property>
+                                     <property name="yscale">0</property>
+                                     <property name="top_padding">0</property>
+                                     <property name="bottom_padding">0</property>
+                                     <property name="left_padding">0</property>
+                                     <property name="right_padding">0</property>
+
+                                     <child>
+                                       <widget class="GtkHBox" id="hbox181">
+                                         <property name="visible">True</property>
+                                         <property name="homogeneous">False</property>
+                                         <property name="spacing">2</property>
+
+                                         <child>
+                                           <widget class="GtkImage" id="image838">
+                                             <property name="visible">True</property>
+                                             <property name="stock">gtk-new</property>
+                                             <property name="icon_size">4</property>
+                                             <property name="xalign">0.5</property>
+                                             <property name="yalign">0.5</property>
+                                             <property name="xpad">0</property>
+                                             <property name="ypad">0</property>
+                                           </widget>
+                                           <packing>
+                                             <property name="padding">0</property>
+                                             <property name="expand">False</property>
+                                             <property name="fill">False</property>
+                                           </packing>
+                                         </child>
+
+                                         <child>
+                                           <widget class="GtkLabel" id="label642">
+                                             <property name="visible">True</property>
+                                             <property name="label" translatable="yes">Cr_eate</property>
+                                             <property name="use_underline">True</property>
+                                             <property name="use_markup">False</property>
+                                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                             <property name="wrap">False</property>
+                                             <property name="selectable">False</property>
+                                             <property name="xalign">0.5</property>
+                                             <property name="yalign">0.5</property>
+                                             <property name="xpad">0</property>
+                                             <property name="ypad">0</property>
+                                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                             <property name="width_chars">-1</property>
+                                             <property name="single_line_mode">False</property>
+                                             <property name="angle">0</property>
+                                           </widget>
+                                           <packing>
+                                             <property name="padding">0</property>
+                                             <property name="expand">False</property>
+                                             <property name="fill">False</property>
+                                           </packing>
+                                         </child>
+                                       </widget>
+                                     </child>
+                                   </widget>
+                                 </child>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">False</property>
+                                 <property name="fill">False</property>
+                                 <property name="pack_type">GTK_PACK_END</property>
+                               </packing>
+                             </child>
+
+                             <child>
+                               <widget class="GtkButton" id="button_back">
+                                 <property name="visible">True</property>
+                                 <property name="can_focus">True</property>
+                                 <property name="label">gtk-go-back</property>
+                                 <property name="use_stock">True</property>
+                                 <property name="relief">GTK_RELIEF_NORMAL</property>
+                                 <property name="focus_on_click">True</property>
+                               </widget>
+                               <packing>
+                                 <property name="padding">0</property>
+                                 <property name="expand">False</property>
+                                 <property name="fill">False</property>
+                                 <property name="pack_type">GTK_PACK_END</property>
+                               </packing>
+                             </child>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                             <property name="pack_type">GTK_PACK_END</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkTable" id="table15">
+                             <property name="visible">True</property>
+                             <property name="n_rows">2</property>
+                             <property name="n_columns">2</property>
+                             <property name="homogeneous">False</property>
+                             <property name="row_spacing">6</property>
+                             <property name="column_spacing">6</property>
+
+                             <child>
+                               <widget class="GtkLabel" id="label638">
+                                 <property name="visible">True</property>
+                                 <property name="label" translatable="yes">_Name:</property>
+                                 <property name="use_underline">True</property>
+                                 <property name="use_markup">False</property>
+                                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                 <property name="wrap">False</property>
+                                 <property name="selectable">False</property>
+                                 <property name="xalign">0</property>
+                                 <property name="yalign">0.5</property>
+                                 <property name="xpad">0</property>
+                                 <property name="ypad">0</property>
+                                 <property name="mnemonic_widget">entry_name</property>
+                                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                 <property name="width_chars">-1</property>
+                                 <property name="single_line_mode">False</property>
+                                 <property name="angle">0</property>
+                               </widget>
+                               <packing>
+                                 <property name="left_attach">0</property>
+                                 <property name="right_attach">1</property>
+                                 <property name="top_attach">1</property>
+                                 <property name="bottom_attach">2</property>
+                                 <property name="x_options">fill</property>
+                                 <property name="y_options"></property>
+                               </packing>
+                             </child>
+
+                             <child>
+                               <widget class="GtkLabel" id="label640">
+                                 <property name="visible">True</property>
+                                 <property name="label" translatable="yes">_Type:</property>
+                                 <property name="use_underline">True</property>
+                                 <property name="use_markup">False</property>
+                                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                 <property name="wrap">False</property>
+                                 <property name="selectable">False</property>
+                                 <property name="xalign">0</property>
+                                 <property name="yalign">0.5</property>
+                                 <property name="xpad">0</property>
+                                 <property name="ypad">0</property>
+                                 <property name="mnemonic_widget">combobox_type</property>
+                                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                 <property name="width_chars">-1</property>
+                                 <property name="single_line_mode">False</property>
+                                 <property name="angle">0</property>
+                               </widget>
+                               <packing>
+                                 <property name="left_attach">0</property>
+                                 <property name="right_attach">1</property>
+                                 <property name="top_attach">0</property>
+                                 <property name="bottom_attach">1</property>
+                                 <property name="x_options">fill</property>
+                                 <property name="y_options"></property>
+                               </packing>
+                             </child>
+
+                             <child>
+                               <widget class="GtkHBox" id="hbox180">
+                                 <property name="visible">True</property>
+                                 <property name="homogeneous">False</property>
+                                 <property name="spacing">6</property>
+
+                                 <child>
+                                   <widget class="GtkEntry" id="entry_name">
+                                     <property name="visible">True</property>
+                                     <property name="tooltip" translatable="yes">A unique name for this account to identify it personally to you.</property>
+                                     <property name="can_focus">True</property>
+                                     <property name="editable">True</property>
+                                     <property name="visibility">True</property>
+                                     <property name="max_length">0</property>
+                                     <property name="text" translatable="yes"></property>
+                                     <property name="has_frame">True</property>
+                                     <property name="invisible_char">*</property>
+                                     <property name="activates_default">False</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="padding">0</property>
+                                     <property name="expand">True</property>
+                                     <property name="fill">True</property>
+                                   </packing>
+                                 </child>
+                               </widget>
+                               <packing>
+                                 <property name="left_attach">1</property>
+                                 <property name="right_attach">2</property>
+                                 <property name="top_attach">1</property>
+                                 <property name="bottom_attach">2</property>
+                                 <property name="x_options">fill</property>
+                                 <property name="y_options">fill</property>
+                               </packing>
+                             </child>
+
+                             <child>
+                               <widget class="GtkComboBox" id="combobox_type">
+                                 <property name="visible">True</property>
+                                 <property name="items" translatable="yes"></property>
+                                 <property name="add_tearoffs">False</property>
+                                 <property name="focus_on_click">True</property>
+                               </widget>
+                               <packing>
+                                 <property name="left_attach">1</property>
+                                 <property name="right_attach">2</property>
+                                 <property name="top_attach">0</property>
+                                 <property name="bottom_attach">1</property>
+                                 <property name="y_options">fill</property>
+                               </packing>
+                             </child>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label643">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;New Account&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkFrame" id="frame_no_account">
+                 <property name="label_xalign">0</property>
+                 <property name="label_yalign">0.5</property>
+                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment21">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">6</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">12</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_no_account_blurb">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">To add a new account, you can click on the 'Add' button and a new entry will be created for you to started configuring.
+
+If you do not want to add an account, simply click on the account you want to configure in the list on the left.</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">True</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0.5</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
+
+                 <child>
+                   <widget class="GtkLabel" id="label_no_account">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">&lt;b&gt;No Account Selected&lt;/b&gt;</property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">True</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">False</property>
+                     <property name="selectable">False</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                   <packing>
+                     <property name="type">label_item</property>
+                   </packing>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="edit_contact_dialog">
+  <property name="border_width">5</property>
+  <property name="title" translatable="yes">Edit Contact</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="icon_name">gtk-edit</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox9">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area9">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button_cancel">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_ok">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-ok</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox202">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">18</property>
+
+         <child>
+           <widget class="GtkFrame" id="frame9">
+             <property name="visible">True</property>
+             <property name="label_xalign">0</property>
+             <property name="label_yalign">0.5</property>
+             <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment17">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">6</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkVBox" id="vbox204">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_name">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">Set the alias you want to use for:
+&lt;b&gt;foo@bar.baz&lt;/b&gt;
+
+You can retrieve contact information from the server. </property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">True</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkHBox" id="hbox169">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">12</property>
+
+                         <child>
+                           <widget class="GtkEntry" id="entry_name">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="has_focus">True</property>
+                             <property name="editable">True</property>
+                             <property name="visibility">True</property>
+                             <property name="max_length">0</property>
+                             <property name="text" translatable="yes"></property>
+                             <property name="has_frame">True</property>
+                             <property name="invisible_char">*</property>
+                             <property name="activates_default">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkButton" id="button_retrieve">
+                             <property name="visible">True</property>
+                             <property name="tooltip" translatable="yes">Use default name here from the contact's VCard.</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">_Retrieve</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label619">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;Name&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="type">label_item</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkFrame" id="frame_subscription">
+             <property name="label_xalign">0</property>
+             <property name="label_yalign">0.5</property>
+             <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment22">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">6</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkHBox" id="subscription_hbox">
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">18</property>
+
+                     <child>
+                       <widget class="GtkHBox" id="hbox91">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkImage" id="image70">
+                             <property name="visible">True</property>
+                             <property name="stock">gtk-dialog-warning</property>
+                             <property name="icon_size">4</property>
+                             <property name="xalign">0.5</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="label_subscription">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">You are not subscribed to this contact.</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">True</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">True</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">True</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkButton" id="button_subscribe">
+                         <property name="visible">True</property>
+                         <property name="tooltip">Press Subscribe to request to receive their status</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes">_Subscribe</property>
+                         <property name="use_underline">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label630">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;Subscription&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="type">label_item</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkFrame" id="frame10">
+             <property name="visible">True</property>
+             <property name="label_xalign">0</property>
+             <property name="label_yalign">0.5</property>
+             <property name="shadow_type">GTK_SHADOW_NONE</property>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment18">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">6</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkVBox" id="vbox203">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_group">
+                         <property name="visible">True</property>
+                         <property name="label" translatable="yes">Select the groups you want this contact to appear in, you can select more than one group or no groups.</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">True</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkHBox" id="hbox166">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">12</property>
+
+                         <child>
+                           <widget class="GtkEntry" id="entry_group">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="editable">True</property>
+                             <property name="visibility">True</property>
+                             <property name="max_length">0</property>
+                             <property name="text" translatable="yes"></property>
+                             <property name="has_frame">True</property>
+                             <property name="invisible_char">*</property>
+                             <property name="activates_default">False</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkButton" id="button_add">
+                             <property name="visible">True</property>
+                             <property name="sensitive">False</property>
+                             <property name="can_focus">True</property>
+                             <property name="label">_Add Group</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkScrolledWindow" id="scrolledwindow">
+                         <property name="height_request">100</property>
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                         <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                         <property name="shadow_type">GTK_SHADOW_IN</property>
+                         <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                         <child>
+                           <widget class="GtkTreeView" id="treeview">
+                             <property name="visible">True</property>
+                             <property name="can_focus">True</property>
+                             <property name="headers_visible">False</property>
+                             <property name="rules_hint">False</property>
+                             <property name="reorderable">False</property>
+                             <property name="enable_search">False</property>
+                             <property name="fixed_height_mode">False</property>
+                             <property name="hover_selection">False</property>
+                             <property name="hover_expand">False</property>
+                           </widget>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">True</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label620">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;Groups&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="type">label_item</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="contact_information_dialog">
+  <property name="border_width">5</property>
+  <property name="title">Contact Information</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+  <property name="modal">False</property>
+  <property name="default_width">350</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="vbox16">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="hbuttonbox2">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="close_button">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="has_focus">True</property>
+             <property name="label">gtk-close</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox30">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">18</property>
+
+         <child>
+           <widget class="GtkHBox" id="hbox150">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">12</property>
+
+             <child>
+               <widget class="GtkVBox" id="avatar_image_placeholder">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">6</property>
+
+                 <child>
+                   <placeholder/>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment9">
+                 <property name="visible">True</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">0</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkTable" id="contact_table">
+                     <property name="visible">True</property>
+                     <property name="n_rows">2</property>
+                     <property name="n_columns">1</property>
+                     <property name="homogeneous">False</property>
+                     <property name="row_spacing">6</property>
+                     <property name="column_spacing">6</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="id_label">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes"></property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">True</property>
+                         <property name="selectable">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">4</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="name_label">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes"></property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">True</property>
+                         <property name="selectable">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">4</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">1</property>
+                         <property name="bottom_attach">2</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="presence_vbox">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="label577">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;Status&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment23">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkVBox" id="presence_list_vbox">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkTable" id="presence_table">
+                         <property name="visible">True</property>
+                         <property name="n_rows">1</property>
+                         <property name="n_columns">4</property>
+                         <property name="homogeneous">False</property>
+                         <property name="row_spacing">6</property>
+                         <property name="column_spacing">6</property>
+
+                         <child>
+                           <widget class="GtkLabel" id="label581">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">-</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">2</property>
+                             <property name="right_attach">3</property>
+                             <property name="top_attach">0</property>
+                             <property name="bottom_attach">1</property>
+                             <property name="x_options"></property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="personal_vbox">
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="label552">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;Personal Details&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment27">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkVBox" id="vbox30">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkTable" id="personal_table">
+                         <property name="visible">True</property>
+                         <property name="n_rows">3</property>
+                         <property name="n_columns">2</property>
+                         <property name="homogeneous">False</property>
+                         <property name="row_spacing">6</property>
+                         <property name="column_spacing">12</property>
+
+                         <child>
+                           <widget class="GtkLabel" id="stub_email_label">
+                             <property name="label" translatable="yes">Email:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">0</property>
+                             <property name="bottom_attach">1</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="stub_web_label">
+                             <property name="label" translatable="yes">Web site:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">1</property>
+                             <property name="bottom_attach">2</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="stub_birthday_label">
+                             <property name="label" translatable="yes">Birthday:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">2</property>
+                             <property name="bottom_attach">3</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">True</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkHBox" id="personal_status_hbox">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkImage" id="image72">
+                             <property name="visible">True</property>
+                             <property name="stock">gtk-dialog-info</property>
+                             <property name="icon_size">4</property>
+                             <property name="xalign">0.5</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="personal_status_label">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Information requested...</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">True</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">True</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="client_vbox">
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="label555">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;Client Information&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment25">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkVBox" id="vbox160">
+                     <property name="visible">True</property>
+                     <property name="homogeneous">False</property>
+                     <property name="spacing">6</property>
+
+                     <child>
+                       <widget class="GtkTable" id="client_table">
+                         <property name="visible">True</property>
+                         <property name="n_rows">3</property>
+                         <property name="n_columns">2</property>
+                         <property name="homogeneous">False</property>
+                         <property name="row_spacing">6</property>
+                         <property name="column_spacing">12</property>
+
+                         <child>
+                           <widget class="GtkLabel" id="os_label">
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes"></property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">True</property>
+                             <property name="selectable">True</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">2</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">1</property>
+                             <property name="right_attach">2</property>
+                             <property name="top_attach">2</property>
+                             <property name="bottom_attach">3</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="version_label">
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes"></property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">True</property>
+                             <property name="selectable">True</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">2</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">1</property>
+                             <property name="right_attach">2</property>
+                             <property name="top_attach">1</property>
+                             <property name="bottom_attach">2</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="client_label">
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes"></property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">True</property>
+                             <property name="selectable">True</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">2</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">1</property>
+                             <property name="right_attach">2</property>
+                             <property name="top_attach">0</property>
+                             <property name="bottom_attach">1</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="stub_client_label">
+                             <property name="label" translatable="yes">Client:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">0</property>
+                             <property name="bottom_attach">1</property>
+                             <property name="x_options">fill</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="stub_version_label">
+                             <property name="label" translatable="yes">Version:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">1</property>
+                             <property name="bottom_attach">2</property>
+                             <property name="x_options">fill</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="stub_os_label">
+                             <property name="label" translatable="yes">OS:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">2</property>
+                             <property name="bottom_attach">3</property>
+                             <property name="x_options">fill</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">True</property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkHBox" id="client_status_hbox">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">6</property>
+
+                         <child>
+                           <widget class="GtkImage" id="image71">
+                             <property name="visible">True</property>
+                             <property name="stock">gtk-dialog-info</property>
+                             <property name="icon_size">4</property>
+                             <property name="xalign">0.5</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="client_status_label">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Information requested...</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">True</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">True</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">True</property>
+                             <property name="fill">True</property>
+                           </packing>
+                         </child>
+                       </widget>
+                       <packing>
+                         <property name="padding">0</property>
+                         <property name="expand">False</property>
+                         <property name="fill">False</property>
+                       </packing>
+                     </child>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="description_vbox">
+             <property name="homogeneous">False</property>
+             <property name="spacing">6</property>
+
+             <child>
+               <widget class="GtkLabel" id="label559">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">&lt;b&gt;About&lt;/b&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkAlignment" id="alignment26">
+                 <property name="visible">True</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xscale">1</property>
+                 <property name="yscale">1</property>
+                 <property name="top_padding">0</property>
+                 <property name="bottom_padding">0</property>
+                 <property name="left_padding">12</property>
+                 <property name="right_padding">0</property>
+
+                 <child>
+                   <widget class="GtkLabel" id="description_label">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label"></property>
+                     <property name="use_underline">False</property>
+                     <property name="use_markup">False</property>
+                     <property name="justify">GTK_JUSTIFY_LEFT</property>
+                     <property name="wrap">True</property>
+                     <property name="selectable">True</property>
+                     <property name="xalign">0</property>
+                     <property name="yalign">0</property>
+                     <property name="xpad">0</property>
+                     <property name="ypad">0</property>
+                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                     <property name="width_chars">-1</property>
+                     <property name="single_line_mode">False</property>
+                     <property name="angle">0</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkWindow" id="account_jabber_settings">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">jabber account settings</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+
+  <child>
+    <widget class="GtkTable" id="vbox_jabber_settings">
+      <property name="n_rows">6</property>
+      <property name="n_columns">3</property>
+      <property name="homogeneous">False</property>
+      <property name="row_spacing">6</property>
+      <property name="column_spacing">12</property>
+
+      <child>
+       <widget class="GtkLabel" id="label_id">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Login I_D:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_id</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_password">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Pass_word:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_password</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_resource">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Reso_urce:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_resource</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">2</property>
+         <property name="bottom_attach">3</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_server">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Server:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_server</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">3</property>
+         <property name="bottom_attach">4</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_port">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Port:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_port</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">4</property>
+         <property name="bottom_attach">5</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_resource">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">3</property>
+         <property name="top_attach">2</property>
+         <property name="bottom_attach">3</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_server">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">3</property>
+         <property name="top_attach">3</property>
+         <property name="bottom_attach">4</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_port">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">3</property>
+         <property name="top_attach">4</property>
+         <property name="bottom_attach">5</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkCheckButton" id="checkbutton_ssl">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="label" translatable="yes">Use encryption (SS_L)</property>
+         <property name="use_underline">True</property>
+         <property name="relief">GTK_RELIEF_NORMAL</property>
+         <property name="focus_on_click">True</property>
+         <property name="active">False</property>
+         <property name="inconsistent">False</property>
+         <property name="draw_indicator">True</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">3</property>
+         <property name="top_attach">5</property>
+         <property name="bottom_attach">6</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkHBox" id="hbox174">
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">2</property>
+
+         <child>
+           <widget class="GtkEntry" id="entry_password">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="editable">True</property>
+             <property name="visibility">False</property>
+             <property name="max_length">0</property>
+             <property name="text" translatable="yes"></property>
+             <property name="has_frame">True</property>
+             <property name="invisible_char">*</property>
+             <property name="activates_default">False</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_forget">
+             <property name="visible">True</property>
+             <property name="tooltip" translatable="yes">Forget password and clear the entry.</property>
+             <property name="can_focus">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+
+             <child>
+               <widget class="GtkImage" id="image834">
+                 <property name="visible">True</property>
+                 <property name="stock">gtk-clear</property>
+                 <property name="icon_size">1</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="x_options">fill</property>
+         <property name="y_options">fill</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkButton" id="button_change_password">
+         <property name="visible">True</property>
+         <property name="sensitive">False</property>
+         <property name="can_focus">True</property>
+         <property name="label" translatable="yes">C_hange</property>
+         <property name="use_underline">True</property>
+         <property name="relief">GTK_RELIEF_NORMAL</property>
+         <property name="focus_on_click">True</property>
+       </widget>
+       <packing>
+         <property name="left_attach">2</property>
+         <property name="right_attach">3</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_id">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkButton" id="button_register">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="label" translatable="yes">R_egister</property>
+         <property name="use_underline">True</property>
+         <property name="relief">GTK_RELIEF_NORMAL</property>
+         <property name="focus_on_click">True</property>
+       </widget>
+       <packing>
+         <property name="left_attach">2</property>
+         <property name="right_attach">3</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkWindow" id="account_msn_settings">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">msn account settings</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+
+  <child>
+    <widget class="GtkTable" id="vbox_msn_settings">
+      <property name="visible">True</property>
+      <property name="n_rows">4</property>
+      <property name="n_columns">2</property>
+      <property name="homogeneous">False</property>
+      <property name="row_spacing">6</property>
+      <property name="column_spacing">12</property>
+
+      <child>
+       <widget class="GtkLabel" id="label_id">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Login I_D:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_id</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_password">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">Pass_word:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_password</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkHBox" id="hbox182">
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">2</property>
+
+         <child>
+           <widget class="GtkEntry" id="entry_password">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="editable">True</property>
+             <property name="visibility">False</property>
+             <property name="max_length">0</property>
+             <property name="text" translatable="yes"></property>
+             <property name="has_frame">True</property>
+             <property name="invisible_char">*</property>
+             <property name="activates_default">False</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_forget">
+             <property name="visible">True</property>
+             <property name="tooltip" translatable="yes">Forget password and clear the entry.</property>
+             <property name="can_focus">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+
+             <child>
+               <widget class="GtkImage" id="image839">
+                 <property name="visible">True</property>
+                 <property name="stock">gtk-clear</property>
+                 <property name="icon_size">1</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="x_options">fill</property>
+         <property name="y_options">fill</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_id">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_server">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Server:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_server</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">2</property>
+         <property name="bottom_attach">3</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_server">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">2</property>
+         <property name="bottom_attach">3</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_port">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Port:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_port</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">3</property>
+         <property name="bottom_attach">4</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_port">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">3</property>
+         <property name="bottom_attach">4</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkWindow" id="account_irc_settings">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">irc account settings</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+
+  <child>
+    <widget class="GtkTable" id="vbox_irc_settings">
+      <property name="visible">True</property>
+      <property name="n_rows">7</property>
+      <property name="n_columns">2</property>
+      <property name="homogeneous">False</property>
+      <property name="row_spacing">6</property>
+      <property name="column_spacing">12</property>
+
+      <child>
+       <widget class="GtkEntry" id="entry_nick_name">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_port">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">4</property>
+         <property name="bottom_attach">5</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_port">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Port:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_port</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">4</property>
+         <property name="bottom_attach">5</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_server">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Server:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_server</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">3</property>
+         <property name="bottom_attach">4</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_password">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Password:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">2</property>
+         <property name="bottom_attach">3</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_server">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">3</property>
+         <property name="bottom_attach">4</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkHBox" id="hbox183">
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">2</property>
+
+         <child>
+           <widget class="GtkEntry" id="entry_password">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="editable">True</property>
+             <property name="visibility">False</property>
+             <property name="max_length">0</property>
+             <property name="text" translatable="yes"></property>
+             <property name="has_frame">True</property>
+             <property name="invisible_char">*</property>
+             <property name="activates_default">False</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_forget">
+             <property name="visible">True</property>
+             <property name="tooltip" translatable="yes">Forget password and clear the entry.</property>
+             <property name="can_focus">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+
+             <child>
+               <widget class="GtkImage" id="image840">
+                 <property name="visible">True</property>
+                 <property name="stock">gtk-clear</property>
+                 <property name="icon_size">1</property>
+                 <property name="xalign">0.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">2</property>
+         <property name="bottom_attach">3</property>
+         <property name="x_options">fill</property>
+         <property name="y_options">fill</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_nick_name">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Nick Name:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_nick_name</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">0</property>
+         <property name="bottom_attach">1</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_full_name">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Full Name:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_full_name</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_full_name">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">1</property>
+         <property name="bottom_attach">2</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkLabel" id="label_quit_message">
+         <property name="visible">True</property>
+         <property name="label" translatable="yes">_Quit Message:</property>
+         <property name="use_underline">True</property>
+         <property name="use_markup">False</property>
+         <property name="justify">GTK_JUSTIFY_LEFT</property>
+         <property name="wrap">False</property>
+         <property name="selectable">False</property>
+         <property name="xalign">0</property>
+         <property name="yalign">0.5</property>
+         <property name="xpad">0</property>
+         <property name="ypad">0</property>
+         <property name="mnemonic_widget">entry_quit_message</property>
+         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+         <property name="width_chars">-1</property>
+         <property name="single_line_mode">False</property>
+         <property name="angle">0</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">1</property>
+         <property name="top_attach">5</property>
+         <property name="bottom_attach">6</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkEntry" id="entry_quit_message">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="editable">True</property>
+         <property name="visibility">True</property>
+         <property name="max_length">0</property>
+         <property name="text" translatable="yes"></property>
+         <property name="has_frame">True</property>
+         <property name="invisible_char">*</property>
+         <property name="activates_default">False</property>
+       </widget>
+       <packing>
+         <property name="left_attach">1</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">5</property>
+         <property name="bottom_attach">6</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkCheckButton" id="checkbutton_use_ssl">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="label" translatable="yes">Use encryption (SS_L)</property>
+         <property name="use_underline">True</property>
+         <property name="relief">GTK_RELIEF_NORMAL</property>
+         <property name="focus_on_click">True</property>
+         <property name="active">False</property>
+         <property name="inconsistent">False</property>
+         <property name="draw_indicator">True</property>
+       </widget>
+       <packing>
+         <property name="left_attach">0</property>
+         <property name="right_attach">2</property>
+         <property name="top_attach">6</property>
+         <property name="bottom_attach">7</property>
+         <property name="x_options">fill</property>
+         <property name="y_options"></property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+<widget class="GtkDialog" id="add_contact_dialog">
+  <property name="border_width">5</property>
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">Add Contact</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox10">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">2</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area10">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="button_cancel">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-cancel</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-6</property>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="button_add">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="has_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-add</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-5</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox210">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">6</property>
+
+         <child>
+           <widget class="GtkTable" id="table_who">
+             <property name="visible">True</property>
+             <property name="n_rows">3</property>
+             <property name="n_columns">2</property>
+             <property name="homogeneous">False</property>
+             <property name="row_spacing">6</property>
+             <property name="column_spacing">12</property>
+
+             <child>
+               <widget class="GtkLabel" id="label_id">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Con_tact:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="mnemonic_widget">entry_id</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">0</property>
+                 <property name="right_attach">1</property>
+                 <property name="top_attach">1</property>
+                 <property name="bottom_attach">2</property>
+                 <property name="x_options"></property>
+                 <property name="y_options"></property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label_account">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Accou_nt:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">0</property>
+                 <property name="right_attach">1</property>
+                 <property name="top_attach">0</property>
+                 <property name="bottom_attach">1</property>
+                 <property name="x_options"></property>
+                 <property name="y_options"></property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkEntry" id="entry_id">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="has_focus">True</property>
+                 <property name="editable">True</property>
+                 <property name="visibility">True</property>
+                 <property name="max_length">0</property>
+                 <property name="text">user@jabber.org</property>
+                 <property name="has_frame">True</property>
+                 <property name="invisible_char">*</property>
+                 <property name="activates_default">True</property>
+                 <property name="width_chars">30</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">1</property>
+                 <property name="right_attach">2</property>
+                 <property name="top_attach">1</property>
+                 <property name="bottom_attach">2</property>
+                 <property name="y_options"></property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label_information">
+                 <property name="label">&lt;i&gt;Information requested, please wait...&lt;/i&gt;</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">True</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">True</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">1</property>
+                 <property name="right_attach">2</property>
+                 <property name="top_attach">2</property>
+                 <property name="bottom_attach">3</property>
+                 <property name="x_options">fill</property>
+                 <property name="y_options">expand</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkVBox" id="vbox_information">
+             <property name="homogeneous">False</property>
+             <property name="spacing">0</property>
+
+             <child>
+               <widget class="GtkHBox" id="hbox_information">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">18</property>
+
+                 <child>
+                   <widget class="GtkTable" id="table_information">
+                     <property name="n_rows">3</property>
+                     <property name="n_columns">2</property>
+                     <property name="homogeneous">False</property>
+                     <property name="row_spacing">6</property>
+                     <property name="column_spacing">12</property>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_country_stub">
+                         <property name="label" translatable="yes">Country:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">label_country</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">2</property>
+                         <property name="bottom_attach">3</property>
+                         <property name="x_options"></property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_name_stub">
+                         <property name="label" translatable="yes">Name:</property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_email_stub">
+                         <property name="label" translatable="yes">Email:</property>
+                         <property name="use_underline">True</property>
+                         <property name="use_markup">True</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">False</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="mnemonic_widget">label_email</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">0</property>
+                         <property name="right_attach">1</property>
+                         <property name="top_attach">1</property>
+                         <property name="bottom_attach">2</property>
+                         <property name="x_options">fill</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_name">
+                         <property name="can_focus">True</property>
+                         <property name="label"></property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">0</property>
+                         <property name="bottom_attach">1</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_email">
+                         <property name="can_focus">True</property>
+                         <property name="label"></property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">1</property>
+                         <property name="bottom_attach">2</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+
+                     <child>
+                       <widget class="GtkLabel" id="label_country">
+                         <property name="can_focus">True</property>
+                         <property name="label"></property>
+                         <property name="use_underline">False</property>
+                         <property name="use_markup">False</property>
+                         <property name="justify">GTK_JUSTIFY_LEFT</property>
+                         <property name="wrap">False</property>
+                         <property name="selectable">True</property>
+                         <property name="xalign">0</property>
+                         <property name="yalign">0.5</property>
+                         <property name="xpad">0</property>
+                         <property name="ypad">0</property>
+                         <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                         <property name="width_chars">-1</property>
+                         <property name="single_line_mode">False</property>
+                         <property name="angle">0</property>
+                       </widget>
+                       <packing>
+                         <property name="left_attach">1</property>
+                         <property name="right_attach">2</property>
+                         <property name="top_attach">2</property>
+                         <property name="bottom_attach">3</property>
+                         <property name="y_options"></property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <placeholder/>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkTable" id="table13">
+             <property name="visible">True</property>
+             <property name="n_rows">2</property>
+             <property name="n_columns">2</property>
+             <property name="homogeneous">False</property>
+             <property name="row_spacing">6</property>
+             <property name="column_spacing">12</property>
+
+             <child>
+               <widget class="GtkCombo" id="combo_group">
+                 <property name="visible">True</property>
+                 <property name="value_in_list">False</property>
+                 <property name="allow_empty">True</property>
+                 <property name="case_sensitive">False</property>
+                 <property name="enable_arrow_keys">True</property>
+                 <property name="enable_arrows_always">False</property>
+
+                 <child internal-child="entry">
+                   <widget class="GtkEntry" id="entry_group">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="editable">True</property>
+                     <property name="visibility">True</property>
+                     <property name="max_length">0</property>
+                     <property name="text" translatable="yes"></property>
+                     <property name="has_frame">True</property>
+                     <property name="invisible_char">*</property>
+                     <property name="activates_default">False</property>
+                   </widget>
+                 </child>
+
+                 <child internal-child="list">
+                   <widget class="GtkList" id="list1">
+                     <property name="visible">True</property>
+                     <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+                   </widget>
+                 </child>
+               </widget>
+               <packing>
+                 <property name="left_attach">1</property>
+                 <property name="right_attach">2</property>
+                 <property name="top_attach">1</property>
+                 <property name="bottom_attach">2</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkEntry" id="entry_alias">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="editable">True</property>
+                 <property name="visibility">True</property>
+                 <property name="max_length">0</property>
+                 <property name="text" translatable="yes"></property>
+                 <property name="has_frame">True</property>
+                 <property name="invisible_char">*</property>
+                 <property name="activates_default">True</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">1</property>
+                 <property name="right_attach">2</property>
+                 <property name="top_attach">0</property>
+                 <property name="bottom_attach">1</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label_alias">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Alia_s:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="mnemonic_widget">entry_alias</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">0</property>
+                 <property name="right_attach">1</property>
+                 <property name="top_attach">0</property>
+                 <property name="bottom_attach">1</property>
+                 <property name="x_options">fill</property>
+                 <property name="y_options"></property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label_group">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">_Group:</property>
+                 <property name="use_underline">True</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_LEFT</property>
+                 <property name="wrap">False</property>
+                 <property name="selectable">False</property>
+                 <property name="xalign">0</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="mnemonic_widget">entry_group</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+               <packing>
+                 <property name="left_attach">0</property>
+                 <property name="right_attach">1</property>
+                 <property name="top_attach">1</property>
+                 <property name="bottom_attach">2</property>
+                 <property name="x_options">fill</property>
+                 <property name="y_options"></property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+</glade-interface>
index 898e3514a3ff83c1e7a8ad767d2c164d3da3a742..6cfa8899fb2a1b7308cee63de8ccfc7c6696a2c8 100644 (file)
@@ -46,8 +46,8 @@ struct _EmpathyStatusIconClass {
        GObjectClass parent_class;
 };
 
        GObjectClass parent_class;
 };
 
-GType              empathy_status_icon_get_type    (void) G_GNUC_CONST;
-EmpathyStatusIcon *empathy_status_icon_new         (void);
+GType              empathy_status_icon_get_type (void) G_GNUC_CONST;
+EmpathyStatusIcon *empathy_status_icon_new      (GtkWindow *window);
 
 G_END_DECLS
 
 
 G_END_DECLS
 
diff --git a/libempathy-gtk/gossip-chat-manager.c b/libempathy-gtk/gossip-chat-manager.c
deleted file mode 100644 (file)
index 86cd0ea..0000000
+++ /dev/null
@@ -1,327 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Copyright (C) 2004-2007 Imendio AB
- *
- * 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., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- * 
- * Authors: Martyn Russell <martyn@imendio.com>
- */
-
-#include "config.h"
-
-#include <string.h>
-
-#include <glib/gi18n.h>
-
-#include <libgossip/gossip-account.h>
-#include <libgossip/gossip-event.h>
-#include <libgossip/gossip-session.h>
-#include <libgossip/gossip-message.h>
-#include <libgossip/gossip-debug.h>
-#include <libgossip/gossip-event-manager.h>
-
-#include "gossip-app.h"
-#include "gossip-chat.h"
-#include "gossip-chat-manager.h"
-
-#define DEBUG_DOMAIN "ChatManager"
-
-#define GET_PRIV(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GOSSIP_TYPE_CHAT_MANAGER, GossipChatManagerPriv))
-
-typedef struct _GossipChatManagerPriv GossipChatManagerPriv;
-
-struct _GossipChatManagerPriv {
-       GHashTable *chats;
-       GHashTable *events;
-};
-
-static void chat_manager_finalize           (GObject             *object);
-static void chat_manager_new_message_cb     (GossipSession       *session,
-                                            GossipMessage       *msg,
-                                            GossipChatManager   *manager);
-static void chat_manager_event_activated_cb (GossipEventManager  *event_manager,
-                                            GossipEvent         *event,
-                                            GObject             *object);
-static void chat_manager_get_chats_foreach  (GossipContact       *contact,
-                                            GossipPrivateChat   *chat,
-                                            GList              **chats);
-static void chat_manager_chat_removed_cb    (GossipChatManager   *manager,
-                                            GossipChat          *chat,
-                                            gboolean             is_last_ref);
-
-G_DEFINE_TYPE (GossipChatManager, gossip_chat_manager, G_TYPE_OBJECT);
-
-static void
-gossip_chat_manager_class_init (GossipChatManagerClass *class)
-{
-       GObjectClass *object_class;
-
-       object_class = G_OBJECT_CLASS (class);
-
-       object_class->finalize = chat_manager_finalize;
-
-       g_type_class_add_private (object_class, sizeof (GossipChatManagerPriv));
-}
-
-static void
-gossip_chat_manager_init (GossipChatManager *manager)
-{
-       GossipChatManagerPriv *priv;
-
-       priv = GET_PRIV (manager);
-
-       priv->chats = g_hash_table_new_full (gossip_contact_hash,
-                                            gossip_contact_equal,
-                                            (GDestroyNotify) g_object_unref,
-                                            (GDestroyNotify) g_object_unref);
-
-       priv->events = g_hash_table_new_full (gossip_contact_hash,
-                                             gossip_contact_equal,
-                                             (GDestroyNotify) g_object_unref,
-                                             (GDestroyNotify) g_object_unref);
-
-       /* Connect to signals on GossipSession to listen for new messages */
-       g_signal_connect (gossip_app_get_session (),
-                         "new-message",
-                         G_CALLBACK (chat_manager_new_message_cb),
-                         manager);
-}
-
-static void
-chat_manager_finalize (GObject *object)
-{
-       GossipChatManagerPriv *priv;
-
-       priv = GET_PRIV (object);
-
-       g_hash_table_destroy (priv->chats);
-       g_hash_table_destroy (priv->events);
-
-       G_OBJECT_CLASS (gossip_chat_manager_parent_class)->finalize (object);
-}
-
-static void
-chat_manager_new_message_cb (GossipSession     *session,
-                            GossipMessage     *message,
-                            GossipChatManager *manager)
-{
-       GossipChatManagerPriv *priv;
-       GossipPrivateChat     *chat;
-       GossipContact         *sender;
-       GossipEvent           *event = NULL;
-       GossipEvent           *old_event;
-
-       priv = GET_PRIV (manager);
-
-       sender = gossip_message_get_sender (message);
-       chat = g_hash_table_lookup (priv->chats, sender);
-
-       old_event = g_hash_table_lookup (priv->events, sender);
-
-       /* Add event to event manager if one doesn't exist already. */
-       if (!chat) {
-               gossip_debug (DEBUG_DOMAIN, "New chat for: %s",
-                             gossip_contact_get_id (sender));
-               chat = gossip_chat_manager_get_chat (manager, sender);
-
-               if (!old_event) {
-                       event = gossip_event_new (GOSSIP_EVENT_NEW_MESSAGE);
-               }
-       } else {
-               GossipChatWindow *window;
-
-               window = gossip_chat_get_window (GOSSIP_CHAT (chat));
-
-               if (!window && !old_event) {
-                       event = gossip_event_new (GOSSIP_EVENT_NEW_MESSAGE);
-               }
-       }
-
-       gossip_private_chat_append_message (chat, message);
-
-       if (event) {
-               gchar *str;
-
-               str = g_strdup_printf (_("New message from %s"),
-                                      gossip_contact_get_name (sender));
-               g_object_set (event,
-                             "message", str,
-                             "data", message,
-                             NULL);
-               g_free (str);
-
-               gossip_event_manager_add (gossip_app_get_event_manager (),
-                                         event,
-                                         chat_manager_event_activated_cb,
-                                         G_OBJECT (manager));
-
-               g_hash_table_insert (priv->events,
-                                    g_object_ref (sender),
-                                    g_object_ref (event));
-       }
-}
-
-static void
-chat_manager_event_activated_cb (GossipEventManager *event_manager,
-                                GossipEvent        *event,
-                                GObject            *object)
-{
-       GossipMessage *message;
-       GossipContact *contact;
-
-       message = GOSSIP_MESSAGE (gossip_event_get_data (event));
-       contact = gossip_message_get_sender (message);
-
-       gossip_chat_manager_show_chat (GOSSIP_CHAT_MANAGER (object), contact);
-}
-
-static void
-chat_manager_get_chats_foreach (GossipContact      *contact,
-                               GossipPrivateChat  *chat,
-                               GList             **chats)
-{
-       const gchar *contact_id;
-
-       contact_id = gossip_contact_get_id (contact);
-       *chats = g_list_prepend (*chats, g_strdup (contact_id));
-}
-
-GossipChatManager *
-gossip_chat_manager_new (void)
-{
-       return g_object_new (GOSSIP_TYPE_CHAT_MANAGER, NULL);
-}
-
-static void
-chat_manager_chat_removed_cb (GossipChatManager *manager,
-                             GossipChat        *chat,
-                             gboolean           is_last_ref) 
-{
-       GossipChatManagerPriv *priv;
-       GossipContact         *contact;
-
-       if (!is_last_ref) {
-               return;
-       }
-       
-       priv = GET_PRIV (manager);
-       
-       contact = gossip_chat_get_contact (chat);
-
-       gossip_debug (DEBUG_DOMAIN, 
-                     "Removing an old chat:'%s'",
-                     gossip_contact_get_id (contact));
-
-       g_hash_table_remove (priv->chats, contact);
-}                            
-
-GossipPrivateChat *
-gossip_chat_manager_get_chat (GossipChatManager *manager,
-                             GossipContact     *contact)
-{
-       GossipChatManagerPriv *priv;
-       GossipPrivateChat     *chat;
-
-       g_return_val_if_fail (GOSSIP_IS_CHAT_MANAGER (manager), NULL);
-       g_return_val_if_fail (GOSSIP_IS_CONTACT (contact), NULL);
-
-       priv = GET_PRIV (manager);
-
-       chat = g_hash_table_lookup (priv->chats, contact);
-
-       if (!chat) {
-               GossipSession *session;
-               GossipAccount *account;
-               GossipContact *own_contact;
-
-               session = gossip_app_get_session ();
-               account = gossip_contact_get_account (contact);
-               own_contact = gossip_session_get_own_contact (session, account);
-
-               chat = gossip_private_chat_new (own_contact, contact);
-               g_hash_table_insert (priv->chats,
-                                    g_object_ref (contact),
-                                    chat);
-               g_object_add_toggle_ref (G_OBJECT (chat),
-                                        (GToggleNotify) chat_manager_chat_removed_cb, 
-                                        manager);
-
-               gossip_debug (DEBUG_DOMAIN, 
-                             "Creating a new chat:'%s'",
-                             gossip_contact_get_id (contact));
-       }
-
-       return chat;
-}
-
-GList *
-gossip_chat_manager_get_chats (GossipChatManager *manager)
-{
-       GossipChatManagerPriv *priv;
-       GList                 *chats = NULL;
-
-       g_return_val_if_fail (GOSSIP_IS_CHAT_MANAGER (manager), NULL);
-
-       priv = GET_PRIV (manager);
-
-       g_hash_table_foreach (priv->chats,
-                             (GHFunc) chat_manager_get_chats_foreach,
-                             &chats);
-
-       chats = g_list_sort (chats, (GCompareFunc) strcmp);
-
-       return chats;
-}
-
-void
-gossip_chat_manager_remove_events (GossipChatManager *manager,
-                                  GossipContact     *contact)
-{
-       GossipChatManagerPriv *priv;
-       GossipEvent           *event;
-
-       g_return_if_fail (GOSSIP_IS_CHAT_MANAGER (manager));
-       g_return_if_fail (GOSSIP_IS_CONTACT (contact));
-
-       gossip_debug (DEBUG_DOMAIN, 
-                     "Removing events for contact:'%s'",
-                     gossip_contact_get_id (contact));
-
-       priv = GET_PRIV (manager);
-
-       event = g_hash_table_lookup (priv->events, contact);
-       if (event) {
-               gossip_event_manager_remove (gossip_app_get_event_manager (),
-                                            event, G_OBJECT (manager));
-               g_hash_table_remove (priv->events, contact);
-       }
-}
-
-void
-gossip_chat_manager_show_chat (GossipChatManager *manager,
-                              GossipContact     *contact)
-{
-       GossipPrivateChat     *chat;
-
-       g_return_if_fail (GOSSIP_IS_CHAT_MANAGER (manager));
-       g_return_if_fail (GOSSIP_IS_CONTACT (contact));
-
-       chat = gossip_chat_manager_get_chat (manager, contact);
-
-       gossip_chat_present (GOSSIP_CHAT (chat));
-
-       gossip_chat_manager_remove_events(manager, contact);
-}
diff --git a/libempathy-gtk/gossip-chat-manager.h b/libempathy-gtk/gossip-chat-manager.h
deleted file mode 100644 (file)
index 7500b59..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Copyright (C) 2004-2007 Imendio AB
- *
- * 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., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- * 
- * Authors: Martyn Russell <martyn@imendio.com>
- */
-
-#ifndef __GOSSIP_CHAT_MANAGER_H__
-#define __GOSSIP_CHAT_MANAGER_H__
-
-#include <glib-object.h>
-
-#include <libempathy/gossip-contact.h>
-
-G_BEGIN_DECLS
-
-#define GOSSIP_TYPE_CHAT_MANAGER         (gossip_chat_manager_get_type ())
-#define GOSSIP_CHAT_MANAGER(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GOSSIP_TYPE_CHAT_MANAGER, GossipChatManager))
-#define GOSSIP_CHAT_MANAGER_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST ((k), GOSSIP_TYPE_CHAT_MANAGER, GossipChatManagerClass))
-#define GOSSIP_IS_CHAT_MANAGER(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GOSSIP_TYPE_CHAT_MANAGER))
-#define GOSSIP_IS_CHAT_MANAGER_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), GOSSIP_TYPE_CHAT_MANAGER))
-#define GOSSIP_CHAT_MANAGER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GOSSIP_TYPE_CHAT_MANAGER, GossipChatManagerClass))
-
-typedef struct _GossipChatManager      GossipChatManager;
-typedef struct _GossipChatManagerClass GossipChatManagerClass;
-
-#include "gossip-private-chat.h"
-
-struct _GossipChatManager {
-       GObject parent;
-};
-
-struct _GossipChatManagerClass {
-       GObjectClass parent_class;
-};
-
-GType              gossip_chat_manager_get_type      (void) G_GNUC_CONST;
-GossipChatManager *gossip_chat_manager_new           (void);
-GossipPrivateChat *gossip_chat_manager_get_chat      (GossipChatManager *manager,
-                                                     GossipContact     *contact);
-GList *            gossip_chat_manager_get_chats     (GossipChatManager *manager);
-void               gossip_chat_manager_remove_events (GossipChatManager *manager,
-                                                     GossipContact     *contact);
-void               gossip_chat_manager_show_chat     (GossipChatManager *manager,
-                                                     GossipContact     *contact);
-
-G_END_DECLS
-
-#endif /* __GOSSIP_CHAT_MANAGER_H__ */
-
index 46b275456ae7d79e763380b5912aa96501854620..556bcf1374f9f0996d84f6f72a57fdbe9d90eb0d 100644 (file)
 #include <gtk/gtk.h>
 #include <glade/glade.h>
 
 #include <gtk/gtk.h>
 #include <glade/glade.h>
 
+#include <libtelepathy/tp-helpers.h>
+#include <libmissioncontrol/mission-control.h>
+
 #include <libempathy/gossip-utils.h>
 #include <libempathy/gossip-utils.h>
+#include <libempathy/gossip-debug.h>
 #include <libempathy/empathy-marshal.h>
 
 #include "gossip-ui-utils.h"
 #include <libempathy/empathy-marshal.h>
 
 #include "gossip-ui-utils.h"
 
 #define GET_PRIV(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GOSSIP_TYPE_PRESENCE_CHOOSER, GossipPresenceChooserPriv))
 
 
 #define GET_PRIV(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GOSSIP_TYPE_PRESENCE_CHOOSER, GossipPresenceChooserPriv))
 
+#define DEBUG_DOMAIN "PresenceChooser"
+
+/* Flashing delay for icons (milliseconds). */
+#define FLASH_TIMEOUT 500
+
 typedef struct {
 typedef struct {
-       GtkWidget  *hbox;
-       GtkWidget  *image;
-       GtkWidget  *label;
-       GtkWidget  *menu;
+       MissionControl *mc;
+
+       GtkWidget      *hbox;
+       GtkWidget      *image;
+       GtkWidget      *label;
+       GtkWidget      *menu;
 
 
-       McPresence  last_state;
+       McPresence      last_state;
 
 
-       guint       flash_interval;
-       McPresence  flash_state_1;
-       McPresence  flash_state_2;
-       guint       flash_timeout_id;
+       McPresence      flash_state_1;
+       McPresence      flash_state_2;
+       guint           flash_timeout_id;
 
        /* The handle the kind of unnessecary scroll support. */
 
        /* The handle the kind of unnessecary scroll support. */
-       guint       scroll_timeout_id;
-       McPresence  scroll_state;
-       gchar      *scroll_status;
+       guint           scroll_timeout_id;
+       McPresence      scroll_state;
+       gchar          *scroll_status;
 } GossipPresenceChooserPriv;
 
 } GossipPresenceChooserPriv;
 
+typedef struct {
+       McPresence   state;
+       const gchar *status;
+} StateAndStatus;
+
 /* States to be listed in the menu */
 static McPresence states[] = {MC_PRESENCE_AVAILABLE,
                              MC_PRESENCE_DO_NOT_DISTURB,
                              MC_PRESENCE_AWAY};
 
 /* States to be listed in the menu */
 static McPresence states[] = {MC_PRESENCE_AVAILABLE,
                              MC_PRESENCE_DO_NOT_DISTURB,
                              MC_PRESENCE_AWAY};
 
-static void     presence_chooser_finalize               (GObject               *object);
-static void     presence_chooser_reset_scroll_timeout   (GossipPresenceChooser *chooser);
-static void     presence_chooser_set_state              (GossipPresenceChooser *chooser,
-                                                        McPresence             state,
-                                                        const gchar           *status,
-                                                        gboolean               save);
-static void     presence_chooser_dialog_response_cb     (GtkWidget             *dialog,
-                                                        gint                   response,
-                                                        GossipPresenceChooser *chooser);
-static void     presence_chooser_show_dialog            (GossipPresenceChooser *chooser,
-                                                        McPresence             state);
-static void     presence_chooser_custom_activate_cb     (GtkWidget             *item,
-                                                        GossipPresenceChooser *chooser);
-static void     presence_chooser_clear_response_cb      (GtkWidget             *widget,
-                                                        gint                   response,
-                                                        gpointer               user_data);
-static void     presence_chooser_clear_activate_cb      (GtkWidget             *item,
-                                                        GossipPresenceChooser *chooser);
-static void     presence_chooser_menu_add_item          (GossipPresenceChooser *chooser,
-                                                        GtkWidget             *menu,
-                                                        const gchar           *str,
-                                                        McPresence             state,
-                                                        gboolean               custom);
-static void     presence_chooser_menu_align_func        (GtkMenu               *menu,
-                                                        gint                  *x,
-                                                        gint                  *y,
-                                                        gboolean              *push_in,
-                                                        GossipPresenceChooser *chooser);
-static void     presence_chooser_menu_selection_done_cb (GtkMenuShell          *menushell,
-                                                        GossipPresenceChooser *chooser);
-static void     presence_chooser_menu_detach            (GtkWidget             *attach_widget,
-                                                        GtkMenu               *menu);
-static void     presence_chooser_menu_popup             (GossipPresenceChooser *chooser);
-static void     presence_chooser_menu_popdown           (GossipPresenceChooser *chooser);
-static void     presence_chooser_toggled_cb             (GtkWidget             *chooser,
-                                                        gpointer               user_data);
-static gboolean presence_chooser_button_press_event_cb  (GtkWidget             *chooser,
-                                                        GdkEventButton        *event,
-                                                        gpointer               user_data);
-static gboolean presence_chooser_scroll_event_cb        (GtkWidget             *chooser,
-                                                        GdkEventScroll        *event,
-                                                        gpointer               user_data);
-static gboolean presence_chooser_flash_timeout_cb       (GossipPresenceChooser *chooser);
+static void            gossip_presence_chooser_class_init      (GossipPresenceChooserClass *klass);
+static void            gossip_presence_chooser_init            (GossipPresenceChooser      *chooser);
+static void            presence_chooser_finalize               (GObject                    *object);
+static void            presence_chooser_presence_changed_cb    (MissionControl             *mc,
+                                                               McPresence                  state,
+                                                               GossipPresenceChooser      *chooser);
+static void            presence_chooser_reset_scroll_timeout   (GossipPresenceChooser      *chooser);
+static gboolean        presence_chooser_scroll_timeout_cb      (GossipPresenceChooser      *chooser);
+static gboolean        presence_chooser_scroll_event_cb        (GossipPresenceChooser      *chooser,
+                                                               GdkEventScroll             *event,
+                                                               gpointer                    user_data);
+static GList *         presence_chooser_get_presets            (GossipPresenceChooser      *chooser);
+static StateAndStatus *presence_chooser_state_and_status_new   (McPresence                  state,
+                                                               const gchar                *status);
+static gboolean        presence_chooser_flash_timeout_cb       (GossipPresenceChooser      *chooser);
+void                   gossip_presence_chooser_flash_start     (GossipPresenceChooser      *chooser,
+                                                               McPresence                  state_1,
+                                                               McPresence                  state_2);
+void                   gossip_presence_chooser_flash_stop      (GossipPresenceChooser      *chooser,
+                                                               McPresence                  state);
+gboolean               gossip_presence_chooser_is_flashing     (GossipPresenceChooser      *chooser);
+static gboolean        presence_chooser_button_press_event_cb  (GtkWidget                  *chooser,
+                                                               GdkEventButton             *event,
+                                                               gpointer                    user_data);
+static void            presence_chooser_toggled_cb             (GtkWidget                  *chooser,
+                                                               gpointer                    user_data);
+static void            presence_chooser_menu_popup             (GossipPresenceChooser      *chooser);
+static void            presence_chooser_menu_popdown           (GossipPresenceChooser      *chooser);
+static void            presence_chooser_menu_selection_done_cb (GtkMenuShell               *menushell,
+                                                               GossipPresenceChooser      *chooser);
+static void            presence_chooser_menu_destroy_cb        (GtkWidget                  *menu,
+                                                               GossipPresenceChooser      *chooser);
+static void            presence_chooser_menu_detach            (GtkWidget                  *attach_widget,
+                                                               GtkMenu                    *menu);
+static void            presence_chooser_menu_align_func        (GtkMenu                    *menu,
+                                                               gint                       *x,
+                                                               gint                       *y,
+                                                               gboolean                   *push_in,
+                                                               GtkWidget                  *widget);
+static void            presence_chooser_menu_add_item          (GtkWidget                  *menu,
+                                                               const gchar                *str,
+                                                               McPresence                  state,
+                                                               gboolean                    custom);
+static void            presence_chooser_clear_activate_cb      (GtkWidget                  *item,
+                                                               gpointer                    user_data);
+static void            presence_chooser_clear_response_cb      (GtkWidget                  *widget,
+                                                               gint                        response,
+                                                               gpointer                    user_data);
+static void            presence_chooser_noncustom_activate_cb  (GtkWidget                  *item,
+                                                               gpointer                    user_data);
+static void            presence_chooser_set_state              (McPresence                  state,
+                                                               const gchar                *status,
+                                                               gboolean                    save);
+static void            presence_chooser_custom_activate_cb     (GtkWidget                  *item,
+                                                               gpointer                    user_data);
+static void            presence_chooser_show_dialog            (McPresence                  state);
+static void            presence_chooser_dialog_response_cb     (GtkWidget                  *dialog,
+                                                               gint                        response,
+                                                               gpointer                    user_data);
 
 G_DEFINE_TYPE (GossipPresenceChooser, gossip_presence_chooser, GTK_TYPE_TOGGLE_BUTTON);
 
 
 G_DEFINE_TYPE (GossipPresenceChooser, gossip_presence_chooser, GTK_TYPE_TOGGLE_BUTTON);
 
-enum {
-       CHANGED,
-       LAST_SIGNAL
-};
-
-static guint signals[LAST_SIGNAL];
-
 static void
 gossip_presence_chooser_class_init (GossipPresenceChooserClass *klass)
 {
 static void
 gossip_presence_chooser_class_init (GossipPresenceChooserClass *klass)
 {
@@ -124,16 +148,6 @@ gossip_presence_chooser_class_init (GossipPresenceChooserClass *klass)
 
        object_class->finalize = presence_chooser_finalize;
 
 
        object_class->finalize = presence_chooser_finalize;
 
-       signals[CHANGED] =
-               g_signal_new ("changed",
-                             G_TYPE_FROM_CLASS (klass),
-                             G_SIGNAL_RUN_LAST,
-                             0,
-                             NULL, NULL,
-                             empathy_marshal_VOID__INT_STRING,
-                             G_TYPE_NONE, 2,
-                             G_TYPE_INT, G_TYPE_STRING);
-
        g_type_class_add_private (object_class, sizeof (GossipPresenceChooserPriv));
 }
 
        g_type_class_add_private (object_class, sizeof (GossipPresenceChooserPriv));
 }
 
@@ -143,12 +157,10 @@ gossip_presence_chooser_init (GossipPresenceChooser *chooser)
        GossipPresenceChooserPriv *priv;
        GtkWidget                 *arrow;
        GtkWidget                 *alignment;
        GossipPresenceChooserPriv *priv;
        GtkWidget                 *arrow;
        GtkWidget                 *alignment;
+       McPresence                 state;
 
        priv = GET_PRIV (chooser);
 
 
        priv = GET_PRIV (chooser);
 
-       /* Default to 1/2 a second flash interval */
-       priv->flash_interval = 500;
-
        gtk_button_set_relief (GTK_BUTTON (chooser), GTK_RELIEF_NONE);
        gtk_button_set_focus_on_click (GTK_BUTTON (chooser), FALSE);
 
        gtk_button_set_relief (GTK_BUTTON (chooser), GTK_RELIEF_NONE);
        gtk_button_set_focus_on_click (GTK_BUTTON (chooser), FALSE);
 
@@ -189,6 +201,14 @@ gossip_presence_chooser_init (GossipPresenceChooser *chooser)
        g_signal_connect (chooser, "scroll-event",
                          G_CALLBACK (presence_chooser_scroll_event_cb),
                          NULL);
        g_signal_connect (chooser, "scroll-event",
                          G_CALLBACK (presence_chooser_scroll_event_cb),
                          NULL);
+
+       priv->mc = mission_control_new (tp_get_bus ());
+       state = mission_control_get_presence_actual (priv->mc, NULL);
+       presence_chooser_presence_changed_cb (priv->mc, state, chooser);
+       dbus_g_proxy_connect_signal (DBUS_G_PROXY (priv->mc),
+                                    "PresenceStatusActual",
+                                    G_CALLBACK (presence_chooser_presence_changed_cb),
+                                    chooser, NULL);
 }
 
 static void
 }
 
 static void
@@ -206,389 +226,331 @@ presence_chooser_finalize (GObject *object)
                g_source_remove (priv->scroll_timeout_id);
        }
 
                g_source_remove (priv->scroll_timeout_id);
        }
 
+       dbus_g_proxy_disconnect_signal (DBUS_G_PROXY (priv->mc),
+                                       "PresenceStatusActual",
+                                       G_CALLBACK (presence_chooser_presence_changed_cb),
+                                       object);
+       g_object_unref (priv->mc);
+
        G_OBJECT_CLASS (gossip_presence_chooser_parent_class)->finalize (object);
 }
 
        G_OBJECT_CLASS (gossip_presence_chooser_parent_class)->finalize (object);
 }
 
-static void
-presence_chooser_reset_scroll_timeout (GossipPresenceChooser *chooser)
+GtkWidget *
+gossip_presence_chooser_new (void)
 {
 {
-       GossipPresenceChooserPriv *priv;
-
-       priv = GET_PRIV (chooser);
+       GtkWidget *chooser;
 
 
-       if (priv->scroll_timeout_id) {
-               g_source_remove (priv->scroll_timeout_id);
-               priv->scroll_timeout_id = 0;
-       }
+       chooser = g_object_new (GOSSIP_TYPE_PRESENCE_CHOOSER, NULL);
 
 
-       g_free (priv->scroll_status);
-       priv->scroll_status = NULL;
+       return chooser;
 }
 
 static void
 }
 
 static void
-presence_chooser_set_state (GossipPresenceChooser *chooser,
-                           McPresence             state,
-                           const gchar           *status,
-                           gboolean               save)
+presence_chooser_presence_changed_cb (MissionControl        *mc,
+                                     McPresence             state,
+                                     GossipPresenceChooser *chooser)
 {
        GossipPresenceChooserPriv *priv;
 {
        GossipPresenceChooserPriv *priv;
-       const gchar               *default_status;
+       gchar                     *status;
 
        priv = GET_PRIV (chooser);
 
 
        priv = GET_PRIV (chooser);
 
-       default_status = gossip_presence_state_get_default_status (state);
-
+       status = mission_control_get_presence_message_actual (priv->mc, NULL);
        if (G_STR_EMPTY (status)) {
        if (G_STR_EMPTY (status)) {
-               status = default_status;
-       } else {
-               /* Only store the value if it differs from the default ones. */
-               if (save && strcmp (status, default_status) != 0) {
-                       gossip_status_presets_set_last (state, status);
-               }
+               g_free (status);
+               status = g_strdup (gossip_presence_state_get_default_status (state));
        }
 
        }
 
-       priv->last_state = state;
+       gossip_debug (DEBUG_DOMAIN, "Presence changed to %s (%d)",
+                     status, state);
 
        presence_chooser_reset_scroll_timeout (chooser);
 
        presence_chooser_reset_scroll_timeout (chooser);
-       g_signal_emit (chooser, signals[CHANGED], 0, state, status);
+       gossip_presence_chooser_flash_stop (chooser, state);
+       gtk_label_set_text (GTK_LABEL (priv->label), status);
+
+       g_free (status);
 }
 
 static void
 }
 
 static void
-presence_chooser_dialog_response_cb (GtkWidget             *dialog,
-                                    gint                   response,
-                                    GossipPresenceChooser *chooser)
+presence_chooser_reset_scroll_timeout (GossipPresenceChooser *chooser)
 {
 {
-       if (response == GTK_RESPONSE_OK) {
-               GtkWidget           *entry;
-               GtkWidget           *checkbutton;
-               GtkListStore        *store;
-               GtkTreeModel        *model;
-               GtkTreeIter          iter;
-               McPresence           state;
-               const gchar         *status;
-               gboolean             save;
-               gboolean             duplicate = FALSE;
-               gboolean             has_next;
+       GossipPresenceChooserPriv *priv;
 
 
-               entry = g_object_get_data (G_OBJECT (dialog), "entry");
-               status = gtk_entry_get_text (GTK_ENTRY (entry));
-               store = g_object_get_data (G_OBJECT (dialog), "store");
-               model = GTK_TREE_MODEL (store);
+       priv = GET_PRIV (chooser);
 
 
-               has_next = gtk_tree_model_get_iter_first (model, &iter);
-               while (has_next) {
-                       gchar *str;
+       if (priv->scroll_timeout_id) {
+               g_source_remove (priv->scroll_timeout_id);
+               priv->scroll_timeout_id = 0;
+       }
 
 
-                       gtk_tree_model_get (model, &iter,
-                                           0, &str,
-                                           -1);
+       g_free (priv->scroll_status);
+       priv->scroll_status = NULL;
+}
 
 
-                       if (strcmp (status, str) == 0) {
-                               g_free (str);
-                               duplicate = TRUE;
-                               break;
-                       }
+static gboolean
+presence_chooser_scroll_timeout_cb (GossipPresenceChooser *chooser)
+{
+       GossipPresenceChooserPriv *priv;
 
 
-                       g_free (str);
+       priv = GET_PRIV (chooser);
 
 
-                       has_next = gtk_tree_model_iter_next (model, &iter);
-               }
+       priv->scroll_timeout_id = 0;
 
 
-               if (!duplicate) {
-                       gtk_list_store_append (store, &iter);
-                       gtk_list_store_set (store, &iter, 0, status, -1);
-               }
+       gossip_debug (DEBUG_DOMAIN, "Setting presence to %s (%d)",
+                     priv->scroll_status, priv->scroll_state);
 
 
-               checkbutton = g_object_get_data (G_OBJECT (dialog), "checkbutton");
-               save = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton));
-               state = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (dialog), "state"));
+       mission_control_set_presence (priv->mc,
+                                     priv->scroll_state,
+                                     priv->scroll_status,
+                                     NULL, NULL);
 
 
-               presence_chooser_set_state (chooser, state, status, save);
-       }
+       g_free (priv->scroll_status);
+       priv->scroll_status = NULL;
 
 
-       gtk_widget_destroy (dialog);
+       return FALSE;
 }
 
 }
 
-static void
-presence_chooser_show_dialog (GossipPresenceChooser *chooser,
-                             McPresence             state)
+static gboolean
+presence_chooser_scroll_event_cb (GossipPresenceChooser *chooser,
+                                 GdkEventScroll        *event,
+                                 gpointer               user_data)
 {
        GossipPresenceChooserPriv *priv;
 {
        GossipPresenceChooserPriv *priv;
-       static GtkWidget          *dialog = NULL;
-       static GtkListStore       *store[LAST_MC_PRESENCE];
-       GladeXML                  *glade;
-       GtkWidget                 *image;
-       GtkWidget                 *combo;
-       GtkWidget                 *entry;
-       GtkWidget                 *checkbutton;
-       const gchar               *default_status;
+       GList                     *list, *l;
+       const gchar               *current_status;
+       StateAndStatus            *sas;
+       gboolean                   match;
 
        priv = GET_PRIV (chooser);
 
 
        priv = GET_PRIV (chooser);
 
-       if (dialog) {
-               gtk_widget_destroy (dialog);
-               dialog = NULL;
-       } else {
-               guint i;
-
-               for (i = 0; i < LAST_MC_PRESENCE; i++) {
-                       store[i] = NULL;
-               }
+       switch (event->direction) {
+       case GDK_SCROLL_UP:
+               break;
+       case GDK_SCROLL_DOWN:
+               break;
+       default:
+               return FALSE;
        }
 
        }
 
-       glade = gossip_glade_get_file ("gossip-presence-chooser.glade",
-                                      "status_message_dialog",
-                                      NULL,
-                                      "status_message_dialog", &dialog,
-                                      "comboentry_status", &combo,
-                                      "image_status", &image,
-                                      "checkbutton_add", &checkbutton,
-                                      NULL);
+       current_status = gtk_label_get_text (GTK_LABEL (priv->label));
 
 
-       g_object_unref (glade);
+       /* Get the list of presets, which in this context means all the items
+        * without a trailing "...".
+        */
+       list = presence_chooser_get_presets (chooser);
+       sas = NULL;
+       match = FALSE;
+       for (l = list; l; l = l->next) {
+               sas = l->data;
 
 
-       g_signal_connect (dialog, "destroy",
-                         G_CALLBACK (gtk_widget_destroyed),
-                         &dialog);
-       g_signal_connect (dialog, "response",
-                         G_CALLBACK (presence_chooser_dialog_response_cb),
-                         chooser);
+               if (sas->state == priv->last_state &&
+                   strcmp (sas->status, current_status) == 0) {
+                       sas = NULL;
+                       match = TRUE;
+                       if (event->direction == GDK_SCROLL_UP) {
+                               if (l->prev) {
+                                       sas = l->prev->data;
+                               }
+                       }
+                       else if (event->direction == GDK_SCROLL_DOWN) {
+                               if (l->next) {
+                                       sas = l->next->data;
+                               }
+                       }
+                       break;
+               }
 
 
-       gtk_image_set_from_icon_name (GTK_IMAGE (image),
-                                     gossip_icon_name_for_presence_state (state),
-                                     GTK_ICON_SIZE_MENU);
+               sas = NULL;
+       }
 
 
-       if (!store[state]) {
-               GList       *presets, *l;
-               GtkTreeIter  iter;
+       if (sas) {
+               presence_chooser_reset_scroll_timeout (chooser);
 
 
-               store[state] = gtk_list_store_new (1, G_TYPE_STRING);
+               priv->scroll_status = g_strdup (sas->status);
+               priv->scroll_state = sas->state;
 
 
-               presets = gossip_status_presets_get (state, -1);
-               for (l = presets; l; l = l->next) {
-                       gtk_list_store_append (store[state], &iter);
-                       gtk_list_store_set (store[state], &iter, 0, l->data, -1);
-               }
+               priv->scroll_timeout_id =
+                       g_timeout_add (500,
+                                      (GSourceFunc) presence_chooser_scroll_timeout_cb,
+                                      chooser);
 
 
-               g_list_free (presets);
+               gossip_presence_chooser_flash_stop (chooser, sas->state);
+               gtk_label_set_text (GTK_LABEL (priv->label), sas->status);      
        }
        }
+       else if (!match) {
+               const gchar *status;
+               /* If we didn't get any match at all, it means the last state
+                * was a custom one. Just switch to the first one.
+                */
+               status = gossip_presence_state_get_default_status (states[0]);
 
 
-       default_status = gossip_presence_state_get_default_status (state);
-
-       entry = GTK_BIN (combo)->child;
-       gtk_entry_set_text (GTK_ENTRY (entry), default_status);
-       gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
-       gtk_entry_set_width_chars (GTK_ENTRY (entry), 25);
-
-       gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (store[state]));
-       gtk_combo_box_entry_set_text_column (GTK_COMBO_BOX_ENTRY (combo), 0);
+               gossip_debug (DEBUG_DOMAIN, "Setting presence to %s (%d)",
+                             status, states[0]);
 
 
-       /* FIXME: Set transian for a window ? */
+               presence_chooser_reset_scroll_timeout (chooser);
+               mission_control_set_presence (priv->mc,
+                                             states[0],
+                                             status,
+                                             NULL, NULL);
+       }
 
 
-       g_object_set_data (G_OBJECT (dialog), "store", store[state]);
-       g_object_set_data (G_OBJECT (dialog), "entry", entry);
-       g_object_set_data (G_OBJECT (dialog), "checkbutton", checkbutton);
-       g_object_set_data (G_OBJECT (dialog), "state", GINT_TO_POINTER (state));
+       g_list_foreach (list, (GFunc) g_free, NULL);
+       g_list_free (list);
 
 
-       gtk_widget_show_all (dialog);
+       return TRUE;
 }
 
 }
 
-static void
-presence_chooser_custom_activate_cb (GtkWidget             *item,
-                                    GossipPresenceChooser *chooser)
+static GList *
+presence_chooser_get_presets (GossipPresenceChooser *chooser)
 {
 {
-       McPresence state;
+       GList      *list = NULL;
+       guint       i;
 
 
-       state = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (item), "state"));
+       for (i = 0; i < G_N_ELEMENTS (states); i++) {
+               GList          *presets, *p;
+               StateAndStatus *sas;
+               const gchar    *status;
+
+               status = gossip_presence_state_get_default_status (states[i]);
+               sas = presence_chooser_state_and_status_new (states[i], status);
+               list = g_list_append (list, sas);
+       
+               presets = gossip_status_presets_get (states[i], 5);
+               for (p = presets; p; p = p->next) {
+                       sas = presence_chooser_state_and_status_new (states[i], p->data);
+                       list = g_list_append (list, sas);
+               }
+               g_list_free (presets);
+       }
 
 
-       presence_chooser_show_dialog (chooser, state);
+       return list;
 }
 
 }
 
-static void
-presence_chooser_noncustom_activate_cb (GtkWidget             *item,
-                                       GossipPresenceChooser *chooser)
+static StateAndStatus *
+presence_chooser_state_and_status_new (McPresence   state,
+                                      const gchar *status)
 {
 {
-       McPresence   state;
-       const gchar *status;
+       StateAndStatus *sas;
 
 
-       status = g_object_get_data (G_OBJECT (item), "status");
-       state = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (item), "state"));
-       presence_chooser_reset_scroll_timeout (chooser);
-       g_signal_emit (chooser, signals[CHANGED], 0, state, status);
-}
+       sas = g_new0 (StateAndStatus, 1);
 
 
-static void
-presence_chooser_clear_response_cb (GtkWidget *widget,
-                                   gint       response,
-                                   gpointer   user_data)
-{
-       if (response == GTK_RESPONSE_OK) {
-               gossip_status_presets_reset ();
-       }
+       sas->state = state;
+       sas->status = status;
 
 
-       gtk_widget_destroy (widget);
+       return sas;
 }
 
 }
 
-static void
-presence_chooser_clear_activate_cb (GtkWidget             *item,
-                                   GossipPresenceChooser *chooser)
+static gboolean
+presence_chooser_flash_timeout_cb (GossipPresenceChooser *chooser)
 {
 {
-       GtkWidget *dialog;
-       GtkWidget *toplevel;
-       GtkWindow *parent = NULL;
-
-       toplevel = gtk_widget_get_toplevel (GTK_WIDGET (chooser));
-       if (GTK_WIDGET_TOPLEVEL (toplevel) &&
-           GTK_IS_WINDOW (toplevel)) {
-               GtkWindow *window;
-               gboolean   visible;
+       GossipPresenceChooserPriv *priv;
+       McPresence                 state;
+       static gboolean            on = FALSE;
 
 
-               window = GTK_WINDOW (toplevel);
-               visible = gossip_window_get_is_visible (window);
+       priv = GET_PRIV (chooser);
 
 
-               if (visible) {
-                       parent = window;
-               }
+       if (on) {
+               state = priv->flash_state_1;
+       } else {
+               state = priv->flash_state_2;
        }
 
        }
 
-       dialog = gtk_message_dialog_new (GTK_WINDOW (parent),
-                                        0,
-                                        GTK_MESSAGE_QUESTION,
-                                        GTK_BUTTONS_NONE,
-                                        _("Are you sure you want to clear the list?"));
-
-       gtk_message_dialog_format_secondary_text (
-               GTK_MESSAGE_DIALOG (dialog),
-               _("This will remove any custom messages you have "
-                 "added to the list of preset status messages."));
-
-       gtk_dialog_add_buttons (GTK_DIALOG (dialog),
-                               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-                               _("Clear List"), GTK_RESPONSE_OK,
-                               NULL);
-
-       gtk_window_set_skip_taskbar_hint (GTK_WINDOW (dialog), FALSE);
+       gtk_image_set_from_icon_name (GTK_IMAGE (priv->image),
+                                     gossip_icon_name_for_presence_state (state),
+                                     GTK_ICON_SIZE_MENU);
 
 
-       g_signal_connect (dialog, "response",
-                         G_CALLBACK (presence_chooser_clear_response_cb),
-                         NULL);
+       on = !on;
 
 
-       gtk_widget_show (dialog);
+       return TRUE;
 }
 
 }
 
-static void
-presence_chooser_menu_add_item (GossipPresenceChooser *chooser,
-                               GtkWidget             *menu,
-                               const gchar           *str,
-                               McPresence             state,
-                               gboolean               custom)
+void
+gossip_presence_chooser_flash_start (GossipPresenceChooser *chooser,
+                                    McPresence             state_1,
+                                    McPresence             state_2)
 {
 {
-       GtkWidget   *item;
-       GtkWidget   *image;
-       const gchar *icon_name;
-
-       item = gtk_image_menu_item_new_with_label (str);
-       icon_name = gossip_icon_name_for_presence_state (state);
-
-       if (custom) {
-               g_signal_connect (
-                       item,
-                       "activate",
-                       G_CALLBACK (presence_chooser_custom_activate_cb),
-                       chooser);
-       } else {
-               g_signal_connect (
-                       item,
-                       "activate",
-                       G_CALLBACK (presence_chooser_noncustom_activate_cb),
-                       chooser);
-       }
+       GossipPresenceChooserPriv *priv;
 
 
-       image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_MENU);
-       gtk_widget_show (image);
+       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
 
 
-       gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
-       gtk_widget_show (item);
+       priv = GET_PRIV (chooser);
 
 
-       g_object_set_data_full (G_OBJECT (item),
-                               "status", g_strdup (str),
-                               (GDestroyNotify) g_free);
+       if (priv->flash_timeout_id != 0) {
+               return;
+       }
 
 
-       g_object_set_data (G_OBJECT (item), "state", GINT_TO_POINTER (state));
+       priv->flash_state_1 = state_1;
+       priv->flash_state_2 = state_2;
 
 
-       gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
+       priv->flash_timeout_id = g_timeout_add (FLASH_TIMEOUT,
+                                               (GSourceFunc) presence_chooser_flash_timeout_cb,
+                                               chooser);
 }
 
 }
 
-static void
-presence_chooser_menu_align_func (GtkMenu               *menu,
-                                 gint                  *x,
-                                 gint                  *y,
-                                 gboolean              *push_in,
-                                 GossipPresenceChooser *chooser)
+void
+gossip_presence_chooser_flash_stop (GossipPresenceChooser *chooser,
+                                   McPresence             state)
 {
 {
-       GtkWidget      *widget;
-       GtkRequisition  req;
-       GdkScreen      *screen;
-       gint            screen_height;
-
-       widget = GTK_WIDGET (chooser);
-
-       gtk_widget_size_request (GTK_WIDGET (menu), &req);
-
-       gdk_window_get_origin (widget->window, x, y);
+       GossipPresenceChooserPriv *priv;
 
 
-       *x += widget->allocation.x + 1;
-       *y += widget->allocation.y;
+       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
 
 
-       screen = gtk_widget_get_screen (GTK_WIDGET (menu));
-       screen_height = gdk_screen_get_height (screen);
+       priv = GET_PRIV (chooser);
 
 
-       if (req.height > screen_height) {
-               /* Too big for screen height anyway. */
-               *y = 0;
-               return;
+       if (priv->flash_timeout_id) {
+               g_source_remove (priv->flash_timeout_id);
+               priv->flash_timeout_id = 0;
        }
 
        }
 
-       if ((*y + req.height + widget->allocation.height) > screen_height) {
-               /* Can't put it below the button. */
-               *y -= req.height;
-               *y += 1;
-       } else {
-               /* Put menu below button. */
-               *y += widget->allocation.height;
-               *y -= 1;
-       }
+       gtk_image_set_from_icon_name (GTK_IMAGE (priv->image),
+                                     gossip_icon_name_for_presence_state (state),
+                                     GTK_ICON_SIZE_MENU);
 
 
-       *push_in = FALSE;
+       priv->last_state = state;
 }
 
 }
 
-static void
-presence_chooser_menu_selection_done_cb (GtkMenuShell          *menushell,
-                                        GossipPresenceChooser *chooser)
+gboolean
+gossip_presence_chooser_is_flashing (GossipPresenceChooser *chooser)
 {
 {
-       gtk_widget_destroy (GTK_WIDGET (menushell));
+       GossipPresenceChooserPriv *priv;
 
 
-       gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (chooser), FALSE);
+       g_return_val_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser), FALSE);
+
+       priv = GET_PRIV (chooser);
+
+       if (priv->flash_timeout_id) {
+               return TRUE;
+       }
+
+       return FALSE;
 }
 
 }
 
-static void
-presence_chooser_menu_destroy_cb (GtkWidget             *menu,
-                                 GossipPresenceChooser *chooser)
+static gboolean
+presence_chooser_button_press_event_cb (GtkWidget      *chooser,
+                                       GdkEventButton *event,
+                                       gpointer        user_data)
 {
 {
-       GossipPresenceChooserPriv *priv;
+       if (event->button != 1 || event->type != GDK_BUTTON_PRESS) {
+               return FALSE;
+       }
 
 
-       priv = GET_PRIV (chooser);
+       if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (chooser))) {
+                       gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (chooser), TRUE);
+                       return TRUE;
+               }
 
 
-       priv->menu = NULL;
+       return FALSE;
 }
 
 static void
 }
 
 static void
-presence_chooser_menu_detach (GtkWidget *attach_widget,
-                             GtkMenu   *menu)
+presence_chooser_toggled_cb (GtkWidget *chooser,
+                            gpointer   user_data)
 {
 {
-       /* We don't need to do anything, but attaching the menu means
-        * we don't own the ref count and it is cleaned up properly.
-        */
+       if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (chooser))) {
+               presence_chooser_menu_popup (GOSSIP_PRESENCE_CHOOSER (chooser));
+       } else {
+               presence_chooser_menu_popdown (GOSSIP_PRESENCE_CHOOSER (chooser));
+       }
 }
 
 static void
 }
 
 static void
@@ -603,7 +565,7 @@ presence_chooser_menu_popup (GossipPresenceChooser *chooser)
                return;
        }
 
                return;
        }
 
-       menu = gossip_presence_chooser_create_menu (chooser);
+       menu = gossip_presence_chooser_create_menu ();
 
        g_signal_connect_after (menu, "selection-done",
                                G_CALLBACK (presence_chooser_menu_selection_done_cb),
 
        g_signal_connect_after (menu, "selection-done",
                                G_CALLBACK (presence_chooser_menu_selection_done_cb),
@@ -640,200 +602,82 @@ presence_chooser_menu_popdown (GossipPresenceChooser *chooser)
 }
 
 static void
 }
 
 static void
-presence_chooser_toggled_cb (GtkWidget *chooser,
-                            gpointer   user_data)
+presence_chooser_menu_selection_done_cb (GtkMenuShell          *menushell,
+                                        GossipPresenceChooser *chooser)
 {
 {
-       if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (chooser))) {
-               presence_chooser_menu_popup (GOSSIP_PRESENCE_CHOOSER (chooser));
-       } else {
-               presence_chooser_menu_popdown (GOSSIP_PRESENCE_CHOOSER (chooser));
-       }
+       gtk_widget_destroy (GTK_WIDGET (menushell));
+
+       gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (chooser), FALSE);
 }
 
 }
 
-static gboolean
-presence_chooser_button_press_event_cb (GtkWidget      *chooser,
-                                       GdkEventButton *event,
-                                       gpointer        user_data)
+static void
+presence_chooser_menu_destroy_cb (GtkWidget             *menu,
+                                 GossipPresenceChooser *chooser)
 {
 {
-       if (event->button != 1 || event->type != GDK_BUTTON_PRESS) {
-               return FALSE;
-       }
+       GossipPresenceChooserPriv *priv;
 
 
-       if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (chooser))) {
-                       gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (chooser), TRUE);
-                       return TRUE;
-               }
+       priv = GET_PRIV (chooser);
 
 
-       return FALSE;
+       priv->menu = NULL;
 }
 
 }
 
-typedef struct {
-       McPresence   state;
-       const gchar *status;
-} StateAndStatus;
-
-static StateAndStatus *
-presence_chooser_state_and_status_new (McPresence   state,
-                                      const gchar *status)
+static void
+presence_chooser_menu_detach (GtkWidget *attach_widget,
+                             GtkMenu   *menu)
 {
 {
-       StateAndStatus *sas;
+       /* We don't need to do anything, but attaching the menu means
+        * we don't own the ref count and it is cleaned up properly.
+        */
+}
 
 
-       sas = g_new0 (StateAndStatus, 1);
+static void
+presence_chooser_menu_align_func (GtkMenu   *menu,
+                                 gint      *x,
+                                 gint      *y,
+                                 gboolean  *push_in,
+                                 GtkWidget *widget)
+{
+       GtkRequisition  req;
+       GdkScreen      *screen;
+       gint            screen_height;
 
 
-       sas->state = state;
-       sas->status = status;
+       gtk_widget_size_request (GTK_WIDGET (menu), &req);
 
 
-       return sas;
-}
+       gdk_window_get_origin (widget->window, x, y);
 
 
-static GList *
-presence_chooser_get_presets (GossipPresenceChooser *chooser)
-{
-       GList      *list = NULL;
-       guint       i;
+       *x += widget->allocation.x + 1;
+       *y += widget->allocation.y;
 
 
-       for (i = 0; i < G_N_ELEMENTS (states); i++) {
-               GList          *presets, *p;
-               StateAndStatus *sas;
-               const gchar    *status;
+       screen = gtk_widget_get_screen (GTK_WIDGET (menu));
+       screen_height = gdk_screen_get_height (screen);
 
 
-               status = gossip_presence_state_get_default_status (states[i]);
-               sas = presence_chooser_state_and_status_new (states[i], status);
-               list = g_list_append (list, sas);
-       
-               presets = gossip_status_presets_get (states[i], 5);
-               for (p = presets; p; p = p->next) {
-                       sas = presence_chooser_state_and_status_new (states[i], p->data);
-                       list = g_list_append (list, sas);
-               }
-               g_list_free (presets);
+       if (req.height > screen_height) {
+               /* Too big for screen height anyway. */
+               *y = 0;
+               return;
        }
 
        }
 
-       return list;
-}
-
-static gboolean
-presence_chooser_scroll_timeout_cb (GossipPresenceChooser *chooser)
-{
-       GossipPresenceChooserPriv *priv;
-
-       priv = GET_PRIV (chooser);
-
-       g_signal_emit (chooser, signals[CHANGED], 0,
-                      priv->scroll_state,
-                      priv->scroll_status);
-
-       priv->scroll_timeout_id = 0;
-
-       g_free (priv->scroll_status);
-       priv->scroll_status = NULL;
-
-       return FALSE;
-}
-
-static gboolean
-presence_chooser_scroll_event_cb (GtkWidget      *chooser,
-                                 GdkEventScroll *event,
-                                 gpointer        user_data)
-{
-       GossipPresenceChooserPriv *priv;
-       GList                     *list, *l;
-       const gchar               *current_status;
-       StateAndStatus            *sas;
-       gboolean                   match;
-
-       priv = GET_PRIV (chooser);
-
-       switch (event->direction) {
-       case GDK_SCROLL_UP:
-               break;
-       case GDK_SCROLL_DOWN:
-               break;
-       default:
-               return FALSE;
-       }
-
-       current_status = gtk_label_get_text (GTK_LABEL (priv->label));
-
-       /* Get the list of presets, which in this context means all the items
-        * without a trailing "...".
-        */
-       list = presence_chooser_get_presets (GOSSIP_PRESENCE_CHOOSER (chooser));
-       sas = NULL;
-       match = FALSE;
-       for (l = list; l; l = l->next) {
-               sas = l->data;
-
-               if (sas->state == priv->last_state &&
-                   strcmp (sas->status, current_status) == 0) {
-                       sas = NULL;
-                       match = TRUE;
-                       if (event->direction == GDK_SCROLL_UP) {
-                               if (l->prev) {
-                                       sas = l->prev->data;
-                               }
-                       }
-                       else if (event->direction == GDK_SCROLL_DOWN) {
-                               if (l->next) {
-                                       sas = l->next->data;
-                               }
-                       }
-                       break;
-               }
-
-               sas = NULL;
-       }
-
-       if (sas) {
-               presence_chooser_reset_scroll_timeout (GOSSIP_PRESENCE_CHOOSER (chooser));
-
-               priv->scroll_status = g_strdup (sas->status);
-               priv->scroll_state = sas->state;
-
-               priv->scroll_timeout_id =
-                       g_timeout_add (500,
-                                      (GSourceFunc) presence_chooser_scroll_timeout_cb,
-                                      chooser);
-
-               gossip_presence_chooser_set_status (GOSSIP_PRESENCE_CHOOSER (chooser),
-                                                   sas->status);
-               gossip_presence_chooser_set_state (GOSSIP_PRESENCE_CHOOSER (chooser),
-                                                  sas->state);
-       }
-       else if (!match) {
-               /* If we didn't get any match at all, it means the last state
-                * was a custom one. Just switch to the first one.
-                */
-               presence_chooser_reset_scroll_timeout (GOSSIP_PRESENCE_CHOOSER (chooser));
-               g_signal_emit (chooser, signals[CHANGED], 0,
-                              MC_PRESENCE_AVAILABLE,
-                              _("Available"));
+       if ((*y + req.height + widget->allocation.height) > screen_height) {
+               /* Can't put it below the button. */
+               *y -= req.height;
+               *y += 1;
+       } else {
+               /* Put menu below button. */
+               *y += widget->allocation.height;
+               *y -= 1;
        }
 
        }
 
-       g_list_foreach (list, (GFunc) g_free, NULL);
-       g_list_free (list);
-
-       return TRUE;
-}
-
-GtkWidget *
-gossip_presence_chooser_new (void)
-{
-       GtkWidget *chooser;
-
-       chooser = g_object_new (GOSSIP_TYPE_PRESENCE_CHOOSER, NULL);
-
-       return chooser;
+       *push_in = FALSE;
 }
 
 GtkWidget *
 }
 
 GtkWidget *
-gossip_presence_chooser_create_menu (GossipPresenceChooser *chooser)
+gossip_presence_chooser_create_menu (void)
 {
        const gchar *status;
 {
        const gchar *status;
-       GtkWidget *menu;
-       GtkWidget *item;
-       GtkWidget *image;
-       guint      i;
+       GtkWidget   *menu;
+       GtkWidget   *item;
+       GtkWidget   *image;
+       guint        i;
 
        menu = gtk_menu_new ();
 
 
        menu = gtk_menu_new ();
 
@@ -841,24 +685,21 @@ gossip_presence_chooser_create_menu (GossipPresenceChooser *chooser)
                GList       *list, *l;
 
                status = gossip_presence_state_get_default_status (states[i]);
                GList       *list, *l;
 
                status = gossip_presence_state_get_default_status (states[i]);
-               presence_chooser_menu_add_item (chooser,
-                                               menu,
+               presence_chooser_menu_add_item (menu,
                                                status,
                                                states[i],
                                                FALSE);
 
                list = gossip_status_presets_get (states[i], 5);
                for (l = list; l; l = l->next) {
                                                status,
                                                states[i],
                                                FALSE);
 
                list = gossip_status_presets_get (states[i], 5);
                for (l = list; l; l = l->next) {
-                       presence_chooser_menu_add_item (chooser,
-                                                       menu,
+                       presence_chooser_menu_add_item (menu,
                                                        l->data,
                                                        states[i],
                                                        FALSE);
                }
                g_list_free (list);
 
                                                        l->data,
                                                        states[i],
                                                        FALSE);
                }
                g_list_free (list);
 
-               presence_chooser_menu_add_item (chooser,
-                                               menu,
+               presence_chooser_menu_add_item (menu,
                                                _("Custom message..."),
                                                states[i],
                                                TRUE);
                                                _("Custom message..."),
                                                states[i],
                                                TRUE);
@@ -871,8 +712,7 @@ gossip_presence_chooser_create_menu (GossipPresenceChooser *chooser)
 
        /* Offline to disconnect */
        status = gossip_presence_state_get_default_status (MC_PRESENCE_OFFLINE);
 
        /* Offline to disconnect */
        status = gossip_presence_state_get_default_status (MC_PRESENCE_OFFLINE);
-       presence_chooser_menu_add_item (chooser,
-                                       menu,
+       presence_chooser_menu_add_item (menu,
                                        status,
                                        MC_PRESENCE_OFFLINE,
                                        FALSE);
                                        status,
                                        MC_PRESENCE_OFFLINE,
                                        FALSE);
@@ -892,133 +732,292 @@ gossip_presence_chooser_create_menu (GossipPresenceChooser *chooser)
        g_signal_connect (item,
                          "activate",
                          G_CALLBACK (presence_chooser_clear_activate_cb),
        g_signal_connect (item,
                          "activate",
                          G_CALLBACK (presence_chooser_clear_activate_cb),
-                         chooser);
+                         NULL);
 
        return menu;
 }
 
 
        return menu;
 }
 
-void
-gossip_presence_chooser_set_state (GossipPresenceChooser *chooser,
-                                  McPresence             state)
+static void
+presence_chooser_menu_add_item (GtkWidget   *menu,
+                               const gchar *str,
+                               McPresence   state,
+                               gboolean     custom)
 {
 {
-       GossipPresenceChooserPriv *priv;
+       GtkWidget   *item;
+       GtkWidget   *image;
+       const gchar *icon_name;
 
 
-       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
+       item = gtk_image_menu_item_new_with_label (str);
+       icon_name = gossip_icon_name_for_presence_state (state);
 
 
-       priv = GET_PRIV (chooser);
+       if (custom) {
+               g_signal_connect (item, "activate",
+                                 G_CALLBACK (presence_chooser_custom_activate_cb),
+                                 NULL);
+       } else {
+               g_signal_connect (item, "activate",
+                                 G_CALLBACK (presence_chooser_noncustom_activate_cb),
+                                 NULL);
+       }
 
 
-       gossip_presence_chooser_flash_stop (chooser, state);
+       image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_MENU);
+       gtk_widget_show (image);
+
+       gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
+       gtk_widget_show (item);
+
+       g_object_set_data_full (G_OBJECT (item),
+                               "status", g_strdup (str),
+                               (GDestroyNotify) g_free);
+
+       g_object_set_data (G_OBJECT (item), "state", GINT_TO_POINTER (state));
+
+       gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
 }
 
 }
 
-void
-gossip_presence_chooser_set_status (GossipPresenceChooser *chooser,
-                                   const gchar           *status)
+static void
+presence_chooser_clear_activate_cb (GtkWidget *item,
+                                   gpointer   user_data)
 {
 {
-       GossipPresenceChooserPriv *priv;
+       GtkWidget *dialog;
+       GtkWidget *toplevel;
+       GtkWindow *parent = NULL;
 
 
-       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
+       toplevel = gtk_widget_get_toplevel (item);
+       if (GTK_WIDGET_TOPLEVEL (toplevel) &&
+           GTK_IS_WINDOW (toplevel)) {
+               GtkWindow *window;
+               gboolean   visible;
 
 
-       priv = GET_PRIV (chooser);
+               window = GTK_WINDOW (toplevel);
+               visible = gossip_window_get_is_visible (window);
 
 
-       gtk_label_set_text (GTK_LABEL (priv->label), status);
+               if (visible) {
+                       parent = window;
+               }
+       }
+
+       dialog = gtk_message_dialog_new (GTK_WINDOW (parent),
+                                        0,
+                                        GTK_MESSAGE_QUESTION,
+                                        GTK_BUTTONS_NONE,
+                                        _("Are you sure you want to clear the list?"));
+
+       gtk_message_dialog_format_secondary_text (
+               GTK_MESSAGE_DIALOG (dialog),
+               _("This will remove any custom messages you have "
+                 "added to the list of preset status messages."));
+
+       gtk_dialog_add_buttons (GTK_DIALOG (dialog),
+                               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+                               _("Clear List"), GTK_RESPONSE_OK,
+                               NULL);
+
+       gtk_window_set_skip_taskbar_hint (GTK_WINDOW (dialog), FALSE);
+
+       g_signal_connect (dialog, "response",
+                         G_CALLBACK (presence_chooser_clear_response_cb),
+                         NULL);
+
+       gtk_widget_show (dialog);
 }
 
 }
 
-void
-gossip_presence_chooser_set_flash_interval (GossipPresenceChooser *chooser,
-                                           guint                  ms)
+static void
+presence_chooser_clear_response_cb (GtkWidget *widget,
+                                   gint       response,
+                                   gpointer   user_data)
 {
 {
-       GossipPresenceChooserPriv *priv;
+       if (response == GTK_RESPONSE_OK) {
+               gossip_status_presets_reset ();
+       }
 
 
-       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
-       g_return_if_fail (ms > 1 && ms < 30000);
+       gtk_widget_destroy (widget);
+}
 
 
-       priv = GET_PRIV (chooser);
+static void
+presence_chooser_noncustom_activate_cb (GtkWidget *item,
+                                       gpointer   user_data)
+{
+       McPresence   state;
+       const gchar *status;
+
+       status = g_object_get_data (G_OBJECT (item), "status");
+       state = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (item), "state"));
 
 
-       priv->flash_interval = ms;
+       presence_chooser_set_state (state, status, FALSE);
 }
 
 }
 
-static gboolean
-presence_chooser_flash_timeout_cb (GossipPresenceChooser *chooser)
+static void
+presence_chooser_set_state (McPresence   state,
+                           const gchar *status,
+                           gboolean     save)
 {
 {
-       GossipPresenceChooserPriv *priv;
-       McPresence                 state;
-       static gboolean            on = FALSE;
+       const gchar    *default_status;
+       MissionControl *mc;
 
 
-       priv = GET_PRIV (chooser);
+       default_status = gossip_presence_state_get_default_status (state);
 
 
-       if (on) {
-               state = priv->flash_state_1;
+       if (G_STR_EMPTY (status)) {
+               status = default_status;
        } else {
        } else {
-               state = priv->flash_state_2;
+               /* Only store the value if it differs from the default ones. */
+               if (save && strcmp (status, default_status) != 0) {
+                       gossip_status_presets_set_last (state, status);
+               }
        }
 
        }
 
-       gtk_image_set_from_icon_name (GTK_IMAGE (priv->image),
-                                     gossip_icon_name_for_presence_state (state),
-                                     GTK_ICON_SIZE_MENU);
-
-       on = !on;
+       gossip_debug (DEBUG_DOMAIN, "Setting presence to %s (%d)",
+                     status, state);
 
 
-       return TRUE;
+       mc = mission_control_new (tp_get_bus ());
+       mission_control_set_presence (mc, state, status, NULL, NULL);
+       g_object_unref (mc);
 }
 
 }
 
-void
-gossip_presence_chooser_flash_start (GossipPresenceChooser *chooser,
-                                    McPresence             state_1,
-                                    McPresence             state_2)
+static void
+presence_chooser_custom_activate_cb (GtkWidget *item,
+                                    gpointer   user_data)
 {
 {
-       GossipPresenceChooserPriv *priv;
+       McPresence state;
 
 
-       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
+       state = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (item), "state"));
 
 
-       priv = GET_PRIV (chooser);
+       presence_chooser_show_dialog (state);
+}
 
 
-       if (priv->flash_timeout_id != 0) {
-               return;
+static void
+presence_chooser_show_dialog (McPresence state)
+{
+       static GtkWidget    *dialog = NULL;
+       static GtkListStore *store[LAST_MC_PRESENCE];
+       GladeXML            *glade;
+       GtkWidget           *image;
+       GtkWidget           *combo;
+       GtkWidget           *entry;
+       GtkWidget           *checkbutton;
+       const gchar         *default_status;
+
+       if (dialog) {
+               gtk_widget_destroy (dialog);
+               dialog = NULL;
+       } else {
+               guint i;
+
+               for (i = 0; i < LAST_MC_PRESENCE; i++) {
+                       store[i] = NULL;
+               }
        }
 
        }
 
-       priv->flash_state_1 = state_1;
-       priv->flash_state_2 = state_2;
+       glade = gossip_glade_get_file ("gossip-presence-chooser.glade",
+                                      "status_message_dialog",
+                                      NULL,
+                                      "status_message_dialog", &dialog,
+                                      "comboentry_status", &combo,
+                                      "image_status", &image,
+                                      "checkbutton_add", &checkbutton,
+                                      NULL);
 
 
-       priv->flash_timeout_id = g_timeout_add (priv->flash_interval,
-                                               (GSourceFunc) presence_chooser_flash_timeout_cb,
-                                               chooser);
-}
+       g_object_unref (glade);
 
 
-void
-gossip_presence_chooser_flash_stop (GossipPresenceChooser *chooser,
-                                   McPresence             state)
-{
-       GossipPresenceChooserPriv *priv;
+       g_signal_connect (dialog, "destroy",
+                         G_CALLBACK (gtk_widget_destroyed),
+                         &dialog);
+       g_signal_connect (dialog, "response",
+                         G_CALLBACK (presence_chooser_dialog_response_cb),
+                         NULL);
 
 
-       g_return_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser));
+       gtk_image_set_from_icon_name (GTK_IMAGE (image),
+                                     gossip_icon_name_for_presence_state (state),
+                                     GTK_ICON_SIZE_MENU);
 
 
-       priv = GET_PRIV (chooser);
+       if (!store[state]) {
+               GList       *presets, *l;
+               GtkTreeIter  iter;
 
 
-       if (priv->flash_timeout_id) {
-               g_source_remove (priv->flash_timeout_id);
-               priv->flash_timeout_id = 0;
+               store[state] = gtk_list_store_new (1, G_TYPE_STRING);
+
+               presets = gossip_status_presets_get (state, -1);
+               for (l = presets; l; l = l->next) {
+                       gtk_list_store_append (store[state], &iter);
+                       gtk_list_store_set (store[state], &iter, 0, l->data, -1);
+               }
+
+               g_list_free (presets);
        }
 
        }
 
-       gtk_image_set_from_icon_name (GTK_IMAGE (priv->image),
-                                     gossip_icon_name_for_presence_state (state),
-                                     GTK_ICON_SIZE_MENU);
+       default_status = gossip_presence_state_get_default_status (state);
 
 
-       priv->last_state = state;
+       entry = GTK_BIN (combo)->child;
+       gtk_entry_set_text (GTK_ENTRY (entry), default_status);
+       gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
+       gtk_entry_set_width_chars (GTK_ENTRY (entry), 25);
+
+       gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (store[state]));
+       gtk_combo_box_entry_set_text_column (GTK_COMBO_BOX_ENTRY (combo), 0);
+
+       /* FIXME: Set transian for a window ? */
+
+       g_object_set_data (G_OBJECT (dialog), "store", store[state]);
+       g_object_set_data (G_OBJECT (dialog), "entry", entry);
+       g_object_set_data (G_OBJECT (dialog), "checkbutton", checkbutton);
+       g_object_set_data (G_OBJECT (dialog), "state", GINT_TO_POINTER (state));
+
+       gtk_widget_show_all (dialog);
 }
 
 }
 
-gboolean
-gossip_presence_chooser_is_flashing (GossipPresenceChooser *chooser)
+static void
+presence_chooser_dialog_response_cb (GtkWidget *dialog,
+                                    gint       response,
+                                    gpointer   user_data)
 {
 {
-       GossipPresenceChooserPriv *priv;
+       if (response == GTK_RESPONSE_OK) {
+               GtkWidget           *entry;
+               GtkWidget           *checkbutton;
+               GtkListStore        *store;
+               GtkTreeModel        *model;
+               GtkTreeIter          iter;
+               McPresence           state;
+               const gchar         *status;
+               gboolean             save;
+               gboolean             duplicate = FALSE;
+               gboolean             has_next;
 
 
-       g_return_val_if_fail (GOSSIP_IS_PRESENCE_CHOOSER (chooser), FALSE);
+               entry = g_object_get_data (G_OBJECT (dialog), "entry");
+               status = gtk_entry_get_text (GTK_ENTRY (entry));
+               store = g_object_get_data (G_OBJECT (dialog), "store");
+               model = GTK_TREE_MODEL (store);
 
 
-       priv = GET_PRIV (chooser);
+               has_next = gtk_tree_model_get_iter_first (model, &iter);
+               while (has_next) {
+                       gchar *str;
 
 
-       if (priv->flash_timeout_id) {
-               return TRUE;
+                       gtk_tree_model_get (model, &iter,
+                                           0, &str,
+                                           -1);
+
+                       if (strcmp (status, str) == 0) {
+                               g_free (str);
+                               duplicate = TRUE;
+                               break;
+                       }
+
+                       g_free (str);
+
+                       has_next = gtk_tree_model_iter_next (model, &iter);
+               }
+
+               if (!duplicate) {
+                       gtk_list_store_append (store, &iter);
+                       gtk_list_store_set (store, &iter, 0, status, -1);
+               }
+
+               checkbutton = g_object_get_data (G_OBJECT (dialog), "checkbutton");
+               save = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton));
+               state = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (dialog), "state"));
+
+               presence_chooser_set_state (state, status, save);
        }
 
        }
 
-       return FALSE;
+       gtk_widget_destroy (dialog);
 }
 
 }
 
index a3f9d509e1a3454545b1b0f86ed1fd62678fb6a2..f78c96c191d12f0ae374c576d9112d87f9b81156 100644 (file)
@@ -50,15 +50,7 @@ struct _GossipPresenceChooserClass {
 
 GType      gossip_presence_chooser_get_type           (void) G_GNUC_CONST;
 GtkWidget *gossip_presence_chooser_new                (void);
 
 GType      gossip_presence_chooser_get_type           (void) G_GNUC_CONST;
 GtkWidget *gossip_presence_chooser_new                (void);
-GtkWidget *gossip_presence_chooser_create_menu        (GossipPresenceChooser *chooser);
-
-void       gossip_presence_chooser_set_state          (GossipPresenceChooser *chooser,
-                                                      McPresence             state);
-void       gossip_presence_chooser_set_status         (GossipPresenceChooser *chooser,
-                                                      const gchar           *status);
-void       gossip_presence_chooser_set_flash_interval (GossipPresenceChooser *chooser,
-                                                      guint                  ms);
-
+GtkWidget *gossip_presence_chooser_create_menu        (void);
 void       gossip_presence_chooser_flash_start        (GossipPresenceChooser *chooser,
                                                       McPresence             state_1,
                                                       McPresence             state_2);
 void       gossip_presence_chooser_flash_start        (GossipPresenceChooser *chooser,
                                                       McPresence             state_1,
                                                       McPresence             state_2);
index c2cb2ec51270f3d7d595878b669bb062a7038dab..6780ff6808de7cf48136511b4aabc6154555060f 100644 (file)
@@ -53,10 +53,6 @@ static void operation_error_cb    (MissionControl    *mc,
                                   guint              error_code,
                                   gpointer           user_data);
 static void start_mission_control (MissionControl    *mc);
                                   guint              error_code,
                                   gpointer           user_data);
 static void start_mission_control (MissionControl    *mc);
-static void destroy_cb            (GtkWidget         *window,
-                                  MissionControl    *mc);
-static void icon_activate_cb      (EmpathyStatusIcon *icon,
-                                  GtkWidget         *window);
 
 static void
 error_cb (MissionControl *mc,
 
 static void
 error_cb (MissionControl *mc,
@@ -116,28 +112,6 @@ start_mission_control (MissionControl *mc)
                                      NULL);
 }
 
                                      NULL);
 }
 
-static void
-destroy_cb (GtkWidget      *window,
-           MissionControl *mc)
-{
-       mission_control_set_presence (mc,
-                                     MC_PRESENCE_OFFLINE,
-                                     NULL, NULL, NULL);
-
-       gtk_main_quit ();
-}
-
-static void
-icon_activate_cb (EmpathyStatusIcon *icon,
-                 GtkWidget         *window)
-{
-       if (GTK_WIDGET_VISIBLE (window)) {
-               gtk_widget_hide (window);
-       } else {
-               gtk_widget_show (window);
-       }
-}
-
 static void
 new_channel_cb (EmpathyFilter *filter,
                TpConn        *tp_conn,
 static void
 new_channel_cb (EmpathyFilter *filter,
                TpConn        *tp_conn,
@@ -182,20 +156,9 @@ main (int argc, char *argv[])
                          NULL);
        start_mission_control (mc);
 
                          NULL);
        start_mission_control (mc);
 
-       /* Setting up the main window */
+       /* Setting up UI */
        window = empathy_main_window_show ();
        window = empathy_main_window_show ();
-       g_signal_connect (window, "destroy",
-                         G_CALLBACK (destroy_cb),
-                         mc);
-       g_signal_connect (window, "delete-event",
-                         G_CALLBACK (gtk_widget_hide_on_delete),
-                         NULL);
-
-       /* Setting up the status icon */
-       icon = empathy_status_icon_new ();
-       g_signal_connect (icon, "activate",
-                         G_CALLBACK (icon_activate_cb),
-                         window);
+       icon = empathy_status_icon_new (GTK_WINDOW (window));
 
        /* Show the accounts dialog if there is no enabled accounts */
        accounts = mc_accounts_list_by_enabled (TRUE);
 
        /* Show the accounts dialog if there is no enabled accounts */
        accounts = mc_accounts_list_by_enabled (TRUE);
@@ -207,6 +170,10 @@ main (int argc, char *argv[])
 
        gtk_main ();
 
 
        gtk_main ();
 
+       mission_control_set_presence (mc,
+                                     MC_PRESENCE_OFFLINE,
+                                     NULL, NULL, NULL);
+
        g_object_unref (monitor);
        g_object_unref (mc);
        g_object_unref (icon);
        g_object_unref (monitor);
        g_object_unref (mc);
        g_object_unref (icon);