blob: 577bc6ccd9564dffa0d03a531103b7fc5f716cad (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
using Dino.Entities;
namespace Dino.Util {
public static Message.Type get_message_type_for_conversation(Conversation conversation) {
switch (conversation.type_) {
case Conversation.Type.CHAT:
return Entities.Message.Type.CHAT;
case Conversation.Type.GROUPCHAT:
return Entities.Message.Type.GROUPCHAT;
case Conversation.Type.GROUPCHAT_PM:
return Entities.Message.Type.GROUPCHAT_PM;
default:
assert_not_reached();
}
}
public static Conversation.Type get_conversation_type_for_message(Message message) {
switch (message.type_) {
case Entities.Message.Type.CHAT:
return Conversation.Type.CHAT;
case Entities.Message.Type.GROUPCHAT:
return Conversation.Type.GROUPCHAT;
case Entities.Message.Type.GROUPCHAT_PM:
return Conversation.Type.GROUPCHAT_PM;
default:
assert_not_reached();
}
}
public static bool is_pixbuf_supported_content_type(Xmpp.FileContentType? content_type) {
if (content_type == null) return false;
string mime_type = content_type.get_mime_type();
foreach (Gdk.PixbufFormat pixbuf_format in Gdk.Pixbuf.get_formats()) {
foreach (string pixbuf_mime in pixbuf_format.get_mime_types()) {
if (pixbuf_mime == mime_type) return true;
}
}
return false;
}
public static Gee.List<string> get_local_ip_addresses() {
Gee.List<string> result = new Gee.ArrayList<string>();
foreach (string ip_address in Nice.interfaces_get_local_ips(false)) {
result.add(ip_address);
}
return result;
}
}
|