Improve support for receiving pictures in secret chats
This commit is contained in:
parent
87ae72a739
commit
74f6b6e2f7
1 changed files with 10 additions and 4 deletions
14
tgp-msg.c
14
tgp-msg.c
|
@ -228,8 +228,7 @@ int tgp_msg_send (struct tgl_state *TLS, const char *message, tgl_peer_id_t to)
|
|||
g_file_set_contents (tmp, data, purple_imgstore_get_size (psi), &err);
|
||||
if (! err) {
|
||||
stripped = purple_markup_strip_html (message);
|
||||
tgl_do_send_document (TLS, to, tmp, stripped, (int)strlen (stripped), TGL_SEND_MSG_FLAG_DOCUMENT_AUTO,
|
||||
tgp_msg_send_done, NULL);
|
||||
tgl_do_send_document (TLS, to, tmp, stripped, (int)strlen (stripped), TGL_SEND_MSG_FLAG_DOCUMENT_AUTO, tgp_msg_send_done, NULL);
|
||||
g_free (stripped);
|
||||
return 1;
|
||||
} else {
|
||||
|
@ -297,13 +296,16 @@ static void tgp_msg_display (struct tgl_state *TLS, struct tgp_msg_loading *C) {
|
|||
return;
|
||||
}
|
||||
else if (M->media.type == tgl_message_media_document_encr) {
|
||||
char *who = p2tgl_strdup_id (M->from_id);
|
||||
char *who = p2tgl_strdup_id (M->to_id);
|
||||
if (! tgp_our_msg(TLS, M)) {
|
||||
tgprpl_recv_encr_file (conn->gc, who, M->media.encr_document);
|
||||
}
|
||||
g_free (who);
|
||||
return;
|
||||
}
|
||||
else if (M->media.type == tgl_message_media_photo) {
|
||||
else if (M->media.type == tgl_message_media_photo ||
|
||||
(M->media.type == tgl_message_media_document_encr &&
|
||||
M->media.encr_document->flags & TGLDF_IMAGE)) {
|
||||
char *filename = C->data;
|
||||
int imgStoreId = p2tgl_imgstore_add_with_id (filename);
|
||||
if (imgStoreId <= 0) {
|
||||
|
@ -396,6 +398,10 @@ void tgp_msg_recv (struct tgl_state *TLS, struct tgl_message *M) {
|
|||
C->done = FALSE;
|
||||
tgl_do_load_photo (TLS, M->media.photo, tgp_msg_on_loaded_photo, C);
|
||||
}
|
||||
if (M->media.type == tgl_message_media_document_encr && M->media.encr_document->flags & TGLDF_IMAGE) {
|
||||
C->done = FALSE;
|
||||
tgl_do_load_encr_document (TLS, M->media.encr_document, tgp_msg_on_loaded_photo, C);
|
||||
}
|
||||
if (M->media.type == tgl_message_media_geo) {
|
||||
// TODO: load geo thumbnail
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue