empathy r1717 - in trunk: libempathy-gtk src



Author: xclaesse
Date: Thu Nov 13 20:24:34 2008
New Revision: 1717
URL: http://svn.gnome.org/viewvc/empathy?rev=1717&view=rev

Log:
If chats have no name, use the channel's ID instead of fallback to "Conversation". Fixes bug #560611.

Modified:
   trunk/libempathy-gtk/empathy-chat.c
   trunk/src/empathy-chat-window.c

Modified: trunk/libempathy-gtk/empathy-chat.c
==============================================================================
--- trunk/libempathy-gtk/empathy-chat.c	(original)
+++ trunk/libempathy-gtk/empathy-chat.c	Thu Nov 13 20:24:34 2008
@@ -118,6 +118,7 @@
 		   GValue     *value,
 		   GParamSpec *pspec)
 {
+	EmpathyChat *chat = EMPATHY_CHAT (object);
 	EmpathyChatPriv *priv = GET_PRIV (object);
 
 	switch (param_id) {
@@ -128,7 +129,7 @@
 		g_value_set_object (value, priv->account);
 		break;
 	case PROP_NAME:
-		g_value_set_string (value, priv->name);
+		g_value_set_string (value, empathy_chat_get_name (chat));
 		break;
 	case PROP_ID:
 		g_value_set_string (value, priv->id);
@@ -1641,10 +1642,19 @@
 empathy_chat_get_name (EmpathyChat *chat)
 {
 	EmpathyChatPriv *priv = GET_PRIV (chat);
+	const gchar *ret;
 
 	g_return_val_if_fail (EMPATHY_IS_CHAT (chat), NULL);
 
-	return priv->name;
+	ret = priv->name;
+	if (!ret && priv->remote_contact) {
+		ret = empathy_contact_get_name (priv->remote_contact);
+	}
+
+	if (!ret)
+		ret = priv->id;
+
+	return ret ? ret : _("Conversation");
 }
 
 const gchar *

Modified: trunk/src/empathy-chat-window.c
==============================================================================
--- trunk/src/empathy-chat-window.c	(original)
+++ trunk/src/empathy-chat-window.c	Thu Nov 13 20:24:34 2008
@@ -263,23 +263,6 @@
 	return hbox;
 }
 
-static const gchar *
-chat_window_get_chat_name (EmpathyChat *chat)
-{
-	EmpathyContact *remote_contact = NULL;
-	const gchar    *name = NULL;
-
-	name = empathy_chat_get_name (chat);
-	if (!name) {
-		remote_contact = empathy_chat_get_remote_contact (chat);
-		if (remote_contact) {
-			name = empathy_contact_get_name (remote_contact);
-		}
-	}
-
-	return name ? name : _("Conversation");
-}
-
 static void
 chat_window_update (EmpathyChatWindow *window)
 {
@@ -304,7 +287,7 @@
 	first_page = (page_num == 0);
 	last_page = (page_num == (num_pages - 1));
 	is_connected = empathy_chat_get_tp_chat (priv->current_chat) != NULL;
-	name = chat_window_get_chat_name (priv->current_chat);
+	name = empathy_chat_get_name (priv->current_chat);
 	n_chats = g_list_length (priv->chats);
 
 	DEBUG ("Update window");
@@ -382,7 +365,7 @@
 	priv = GET_PRIV (window);
 
 	/* Get information */
-	name = chat_window_get_chat_name (chat);
+	name = empathy_chat_get_name (chat);
 	subject = empathy_chat_get_subject (chat);
 	remote_contact = empathy_chat_get_remote_contact (chat);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]