Commit fabcd2ec authored by Guillaume Desmottes's avatar Guillaume Desmottes

re-implement empathy_dispatcher_chat_with_contact using empathy_dispatcher_chat_with_contact_id

We don't use the callback arg anyway.
parent 17624f70
......@@ -892,7 +892,7 @@ contact_list_view_row_activated (GtkTreeView *view,
if (contact) {
DEBUG ("Starting a chat");
empathy_dispatcher_chat_with_contact (contact,
gtk_get_current_event_time (), NULL, NULL);
gtk_get_current_event_time ());
g_object_unref (contact);
}
}
......
......@@ -216,8 +216,7 @@ static void
empathy_contact_chat_menu_item_activated (GtkMenuItem *item,
EmpathyContact *contact)
{
empathy_dispatcher_chat_with_contact (contact, gtk_get_current_event_time (),
NULL, NULL);
empathy_dispatcher_chat_with_contact (contact, gtk_get_current_event_time ());
}
GtkWidget *
......
......@@ -245,8 +245,7 @@ empathy_individual_chat_menu_item_activated (GtkMenuItem *item,
g_return_if_fail (contact != NULL);
empathy_dispatcher_chat_with_contact (contact, gtk_get_current_event_time (),
NULL, NULL);
empathy_dispatcher_chat_with_contact (contact, gtk_get_current_event_time ());
g_object_unref (contact);
}
......
......@@ -925,7 +925,7 @@ individual_view_row_activated (GtkTreeView *view,
DEBUG ("Starting a chat");
empathy_dispatcher_chat_with_contact (contact,
gtk_get_current_event_time (), NULL, NULL);
gtk_get_current_event_time ());
}
g_object_unref (individual);
......
......@@ -1225,49 +1225,11 @@ dispatcher_request_channel (DispatcherRequestData *request_data)
void
empathy_dispatcher_chat_with_contact (EmpathyContact *contact,
gint64 timestamp,
EmpathyDispatcherRequestCb *callback,
gpointer user_data)
gint64 timestamp)
{
EmpathyDispatcher *self;
EmpathyDispatcherPriv *priv;
TpConnection *connection;
ConnectionData *connection_data;
DispatcherRequestData *request_data;
g_return_if_fail (EMPATHY_IS_CONTACT (contact));
self = empathy_dispatcher_dup_singleton ();
priv = GET_PRIV (self);
connection = empathy_contact_get_connection (contact);
connection_data = g_hash_table_lookup (priv->connections, connection);
if (connection_data == NULL)
{
/* Connection has been invalidated */
if (callback != NULL)
{
GError error = { TP_DBUS_ERRORS, TP_DBUS_ERROR_PROXY_UNREFERENCED,
"Connection has been invalidated" };
callback (NULL, &error, user_data);
}
goto out;
}
/* The contact handle might not be known yet */
request_data = new_dispatcher_request_data (self, connection,
TP_IFACE_CHANNEL_TYPE_TEXT, TP_HANDLE_TYPE_CONTACT,
empathy_contact_get_handle (contact), NULL, timestamp, contact,
callback, user_data);
request_data->should_ensure = TRUE;
connection_data->outstanding_requests = g_list_prepend
(connection_data->outstanding_requests, request_data);
dispatcher_request_channel (request_data);
out:
g_object_unref (self);
empathy_dispatcher_chat_with_contact_id (
empathy_contact_get_account (contact), empathy_contact_get_id (contact),
timestamp);
}
static void
......
......@@ -80,9 +80,7 @@ void empathy_dispatcher_chat_with_contact_id (TpAccount *account,
gint64 timestamp);
void empathy_dispatcher_chat_with_contact (EmpathyContact *contact,
gint64 timestamp,
EmpathyDispatcherRequestCb *callback,
gpointer user_data);
gint64 timestamp);
/* Request a muc channel */
void empathy_dispatcher_join_muc (TpConnection *connection,
......
......@@ -11,25 +11,6 @@
static GtkWidget *window = NULL;
static void
chat_cb (EmpathyDispatchOperation *dispatch,
const GError *error,
gpointer user_data)
{
GtkWidget *dialog;
if (error != NULL)
{
dialog = gtk_message_dialog_new (GTK_WINDOW (window), GTK_DIALOG_MODAL,
GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s",
error->message ? error->message : "No error message");
gtk_dialog_run (GTK_DIALOG (dialog));
}
gtk_widget_destroy (window);
}
static void
clicked_cb (GtkButton *button,
gpointer data)
......@@ -42,8 +23,7 @@ clicked_cb (GtkButton *button,
if (!contact)
return;
empathy_dispatcher_chat_with_contact (contact, gtk_get_current_event_time (),
chat_cb, NULL);
empathy_dispatcher_chat_with_contact (contact, gtk_get_current_event_time ());
g_object_unref (contact);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment