aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libempathy-gtk/empathy-irc-network-chooser.c19
-rw-r--r--libempathy-gtk/empathy-password-dialog.c9
2 files changed, 27 insertions, 1 deletions
diff --git a/libempathy-gtk/empathy-irc-network-chooser.c b/libempathy-gtk/empathy-irc-network-chooser.c
index cc6b1cd95..0fbd7b5fd 100644
--- a/libempathy-gtk/empathy-irc-network-chooser.c
+++ b/libempathy-gtk/empathy-irc-network-chooser.c
@@ -41,6 +41,8 @@
#include "empathy-irc-network-chooser.h"
#define DEFAULT_IRC_NETWORK "irc.gimp.org"
+#define DEFAULT_IRC_PORT 6667
+#define DEFAULT_IRC_SSL FALSE
#define GET_PRIV(obj) EMPATHY_GET_PRIV (obj, EmpathyIrcNetworkChooser)
@@ -222,7 +224,22 @@ set_label_from_settings (EmpathyIrcNetworkChooser *self)
/* Set default network */
priv->network = empathy_irc_network_manager_find_network_by_address (
priv->network_manager, DEFAULT_IRC_NETWORK);
- g_assert (priv->network != NULL);
+
+ if (priv->network == NULL)
+ {
+ /* Default network is not known, recreate it */
+ EmpathyIrcServer *srv;
+
+ priv->network = empathy_irc_network_new (DEFAULT_IRC_NETWORK);
+
+ srv = empathy_irc_server_new (DEFAULT_IRC_NETWORK, DEFAULT_IRC_PORT,
+ DEFAULT_IRC_SSL);
+
+ empathy_irc_network_append_server (priv->network, srv);
+ empathy_irc_network_manager_add (priv->network_manager, priv->network);
+
+ g_object_unref (srv);
+ }
set_label (self);
update_server_params (self);
diff --git a/libempathy-gtk/empathy-password-dialog.c b/libempathy-gtk/empathy-password-dialog.c
index 25ce9dbdc..b07932ee2 100644
--- a/libempathy-gtk/empathy-password-dialog.c
+++ b/libempathy-gtk/empathy-password-dialog.c
@@ -150,6 +150,13 @@ password_entry_changed_cb (GtkEditable *entry,
!EMP_STR_EMPTY (str));
}
+static void
+password_entry_activate_cb (GtkEntry *entry,
+ EmpathyPasswordDialog *self)
+{
+ gtk_dialog_response (GTK_DIALOG (self), GTK_RESPONSE_OK);
+}
+
static gboolean
password_dialog_grab_keyboard (GtkWidget *widget,
GdkEvent *event,
@@ -277,6 +284,8 @@ empathy_password_dialog_constructed (GObject *object)
G_CALLBACK (clear_icon_released_cb), NULL);
g_signal_connect (priv->entry, "changed",
G_CALLBACK (password_entry_changed_cb), dialog);
+ g_signal_connect (priv->entry, "activate",
+ G_CALLBACK (password_entry_activate_cb), dialog);
gtk_box_pack_start (box, priv->entry, FALSE, FALSE, 0);
gtk_widget_show (priv->entry);