From 018af67a500b8bab6b8b374c32a887f399339834 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Tue, 27 Oct 2009 14:26:14 +0100 Subject: Move /me and /say support from EmpathyMessage to EmpathyChat. Also make commands not case sensitive and use g_ascii_isspace to detect spaces. --- libempathy/empathy-message.c | 56 -------------------------------------------- 1 file changed, 56 deletions(-) (limited to 'libempathy/empathy-message.c') diff --git a/libempathy/empathy-message.c b/libempathy/empathy-message.c index a403766e4..705bd224b 100644 --- a/libempathy/empathy-message.c +++ b/libempathy/empathy-message.c @@ -234,62 +234,6 @@ message_set_property (GObject *object, }; } -static gboolean -has_prefix_case (const gchar *s, - const gchar *prefix) -{ - return g_ascii_strncasecmp (s, prefix, strlen (prefix)) == 0; -} - -/* - * Constructs an EmpathyMessage based on user input, which may include "/me" - * and friends. - * - * Returns: an #EmpathyMessage if @message could be parsed, or %NULL if - * @message was an unknown command. - */ -EmpathyMessage * -empathy_message_new_from_entry (const gchar *message) -{ - TpChannelTextMessageType t = TP_CHANNEL_TEXT_MESSAGE_TYPE_NORMAL; - - g_return_val_if_fail (message != NULL, NULL); - - if (message[0] == '/') { - if (g_ascii_strcasecmp (message, "/me") == 0) { - message = ""; - t = TP_CHANNEL_TEXT_MESSAGE_TYPE_ACTION; - } else if (has_prefix_case (message, "/me ")) { - message += strlen ("/me "); - t = TP_CHANNEL_TEXT_MESSAGE_TYPE_ACTION; - } else if (has_prefix_case (message, "/say ")) { - message += strlen ("/say "); - } else { - /* Also allow messages with two slashes before the - * first space, so it is possible to send a /unix/path. - * This heuristic is kind of crap. - */ - gboolean second_slash = FALSE; - const gchar *m = message + 1; - - while (!second_slash && *m != '\0' && *m != ' ') { - if (*m == '/') - second_slash = TRUE; - - m++; - } - - if (!second_slash) - return NULL; - } - } - - return g_object_new (EMPATHY_TYPE_MESSAGE, - "type", t, - "body", message, - NULL); -} - EmpathyMessage * empathy_message_new (const gchar *body) { -- cgit v1.2.3