]> git.pld-linux.org Git - packages/libpurple-protocol-skypeweb.git/blob - bitlbee_img_url.patch
upstream patch to fix links in outgoing messages under bitlbee; rel 4
[packages/libpurple-protocol-skypeweb.git] / bitlbee_img_url.patch
1 From 130ab8ffac2606180cf4ebf62dde46a953fbf765 Mon Sep 17 00:00:00 2001
2 From: Jan Palus <jpalus@fastmail.com>
3 Date: Sun, 24 Jan 2021 19:09:47 +0100
4 Subject: [PATCH] Switch BitlBee image message from system to normal IM/Chat
5
6 ---
7  skypeweb/skypeweb_contacts.c | 15 ++++++---------
8  1 file changed, 6 insertions(+), 9 deletions(-)
9
10 diff --git a/skypeweb/skypeweb_contacts.c b/skypeweb/skypeweb_contacts.c
11 index f1f1671..35dddc9 100644
12 --- a/skypeweb/skypeweb_contacts.c
13 +++ b/skypeweb/skypeweb_contacts.c
14 @@ -26,14 +26,6 @@
15  #include "xfer.h"\r
16  #include "image-store.h"\r
17  \r
18 -static void purple_conversation_write_system_message_ts(\r
19 -               PurpleConversation *conv, const gchar *msg, PurpleMessageFlags flags,\r
20 -               time_t ts) {\r
21 -       PurpleMessage *pmsg = purple_message_new_system(msg, flags);\r
22 -       purple_message_set_time(pmsg, ts);\r
23 -       purple_conversation_write_message(conv, pmsg);\r
24 -       purple_message_destroy(pmsg);\r
25 -}\r
26  static void purple_conversation_write_img_message(\r
27                 PurpleConversation *conv, const char* who, const gchar *msg,\r
28                 PurpleMessageFlags flags, time_t ts) {\r
29 @@ -198,7 +190,12 @@ skypeweb_download_uri_to_conv(SkypeWebAccount *sa, const gchar *uri, PurpleConve
30                 // Bitlbee doesn't support images, so just plop a url to the image instead\r
31                 \r
32                 url = purple_strreplace(uri, "imgt1", "imgpsh_fullsize");\r
33 -               purple_conversation_write_system_message_ts(conv, url, PURPLE_MESSAGE_SYSTEM, ts);\r
34 +               if (PURPLE_IS_IM_CONVERSATION(conv)) {\r
35 +                       purple_serv_got_im(sa->pc, from, url, PURPLE_MESSAGE_RECV, ts);\r
36 +               } else if (PURPLE_IS_CHAT_CONVERSATION(conv)) {\r
37 +                       gchar *chatname = purple_conversation_get_data(conv, "chatname");\r
38 +                       purple_serv_got_chat_in(sa->pc, g_str_hash(chatname), from, PURPLE_MESSAGE_RECV, url, ts);\r
39 +               }\r
40                 g_free(url);\r
41                 \r
42                 return;\r
This page took 0.08147 seconds and 3 git commands to generate.