Mon, 23 Dec 2024 20:39:36 -0600
Add Purple.ProtocolConversation.refresh
This virtual function asks the protocol to update an existing conversation.
This could be to bring it back online, update the topic, whatever.
Testing Done:
Ran the unit tests under valgrind and called in the turtles for good measure.
Bugs closed: PIDGIN-17989
Reviewed at https://reviews.imfreedom.org/r/3699/
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
1 | /* |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
2 | * Purple - Internet Messaging Library |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
3 | * Copyright (C) Pidgin Developers <devel@pidgin.im> |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
4 | * |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
5 | * Purple is the legal property of its developers, whose names are too numerous |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
6 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
7 | * source distribution. |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
8 | * |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
9 | * This library is free software; you can redistribute it and/or modify it |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
10 | * under the terms of the GNU General Public License as published by the Free |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
11 | * Software Foundation; either version 2 of the License, or (at your option) |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
12 | * any later version. |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
13 | * |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
14 | * This library is distributed in the hope that it will be useful, but WITHOUT |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
15 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
16 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
17 | * more details. |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
18 | * |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
19 | * You should have received a copy of the GNU General Public License along with |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42368
diff
changeset
|
20 | * this library; if not, see <https://www.gnu.org/licenses/>. |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
21 | */ |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
22 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
23 | #include "purpleprotocolconversation.h" |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
24 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
25 | /****************************************************************************** |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
26 | * GInterface Implementation |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
27 | *****************************************************************************/ |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
28 | G_DEFINE_INTERFACE(PurpleProtocolConversation, purple_protocol_conversation, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
29 | PURPLE_TYPE_PROTOCOL) |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
30 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
31 | static void |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
32 | purple_protocol_conversation_default_init(G_GNUC_UNUSED PurpleProtocolConversationInterface *iface) |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
33 | { |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
34 | } |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
35 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
36 | /****************************************************************************** |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
37 | * Public API |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
38 | *****************************************************************************/ |
|
42673
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
39 | gboolean |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
40 | purple_protocol_conversation_implements_create_conversation(PurpleProtocolConversation *protocol) |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
41 | { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
42 | PurpleProtocolConversationInterface *iface = NULL; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
43 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
44 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
45 | |
|
43056
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
46 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
42673
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
47 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
48 | if(iface->get_create_conversation_details == NULL) { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
49 | return FALSE; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
50 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
51 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
52 | if(iface->create_conversation_async == NULL) { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
53 | return FALSE; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
54 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
55 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
56 | if(iface->create_conversation_finish == NULL) { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
57 | return FALSE; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
58 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
59 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
60 | return TRUE; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
61 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
62 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
63 | PurpleCreateConversationDetails * |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
64 | purple_protocol_conversation_get_create_conversation_details(PurpleProtocolConversation *protocol, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
65 | PurpleAccount *account) |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
66 | { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
67 | PurpleProtocolConversationInterface *iface = NULL; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
68 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
69 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), NULL); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
70 | g_return_val_if_fail(PURPLE_IS_ACCOUNT(account), NULL); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
71 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
72 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
73 | if(iface != NULL && iface->get_create_conversation_details != NULL) { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
74 | return iface->get_create_conversation_details(protocol, account); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
75 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
76 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
77 | g_warning("%s does not implement get_create_conversation_details", |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
78 | G_OBJECT_TYPE_NAME(protocol)); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
79 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
80 | return NULL; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
81 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
82 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
83 | void |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
84 | purple_protocol_conversation_create_conversation_async(PurpleProtocolConversation *protocol, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
85 | PurpleAccount *account, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
86 | PurpleCreateConversationDetails *details, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
87 | GCancellable *cancellable, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
88 | GAsyncReadyCallback callback, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
89 | gpointer data) |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
90 | { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
91 | PurpleProtocolConversationInterface *iface = NULL; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
92 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
93 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
94 | g_return_if_fail(PURPLE_IS_ACCOUNT(account)); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
95 | g_return_if_fail(PURPLE_IS_CREATE_CONVERSATION_DETAILS(details)); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
96 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
97 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
98 | if(iface != NULL && iface->create_conversation_async != NULL) { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
99 | iface->create_conversation_async(protocol, account, details, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
100 | cancellable, callback, data); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
101 | } else { |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
102 | g_task_report_new_error(G_OBJECT(protocol), callback, data, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
103 | purple_protocol_conversation_create_conversation_async, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
104 | PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0, |
|
42673
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
105 | "%s does not implement create_conversation_async", |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
106 | G_OBJECT_TYPE_NAME(protocol)); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
107 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
108 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
109 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
110 | PurpleConversation * |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
111 | purple_protocol_conversation_create_conversation_finish(PurpleProtocolConversation *protocol, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
112 | GAsyncResult *result, |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
113 | GError **error) |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
114 | { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
115 | PurpleProtocolConversationInterface *iface = NULL; |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
116 | |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
117 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
118 | g_return_val_if_fail(G_IS_ASYNC_RESULT(result), FALSE); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
119 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
120 | if(g_async_result_is_tagged(result, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
121 | purple_protocol_conversation_create_conversation_async)) |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
122 | { |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
123 | return g_task_propagate_pointer(G_TASK(result), error); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
124 | } |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
125 | |
|
42673
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
126 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
127 | if(iface != NULL && iface->create_conversation_finish != NULL) { |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
128 | return iface->create_conversation_finish(protocol, result, error); |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
129 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
130 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
131 | g_warning("purple_protocol_conversation_create_conversation_finish called " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
132 | "without calling " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
133 | "purple_protocol_conversation_create_conversation_async"); |
|
42673
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
134 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
135 | return NULL; |
|
42673
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
136 | } |
|
a9e988314724
Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
137 | |
|
42778
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
138 | gboolean |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
139 | purple_protocol_conversation_implements_leave_conversation(PurpleProtocolConversation *protocol) |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
140 | { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
141 | PurpleProtocolConversationInterface *iface = NULL; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
142 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
143 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
144 | |
|
43056
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
145 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
42778
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
146 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
147 | if(iface->leave_conversation_async == NULL) { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
148 | return FALSE; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
149 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
150 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
151 | if(iface->leave_conversation_finish == NULL) { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
152 | return FALSE; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
153 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
154 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
155 | return TRUE; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
156 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
157 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
158 | void |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
159 | purple_protocol_conversation_leave_conversation_async(PurpleProtocolConversation *protocol, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
160 | PurpleConversation *conversation, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
161 | GCancellable *cancellable, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
162 | GAsyncReadyCallback callback, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
163 | gpointer data) |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
164 | { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
165 | PurpleProtocolConversationInterface *iface = NULL; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
166 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
167 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
168 | g_return_if_fail(PURPLE_IS_CONVERSATION(conversation)); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
169 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
170 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
171 | if(iface != NULL && iface->leave_conversation_async != NULL) { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
172 | iface->leave_conversation_async(protocol, conversation, cancellable, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
173 | callback, data); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
174 | } else { |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
175 | g_task_report_new_error(G_OBJECT(protocol), callback, data, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
176 | purple_protocol_conversation_leave_conversation_async, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
177 | PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0, |
|
42778
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
178 | "%s does not implement leave_conversation_async", |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
179 | G_OBJECT_TYPE_NAME(protocol)); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
180 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
181 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
182 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
183 | gboolean |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
184 | purple_protocol_conversation_leave_conversation_finish(PurpleProtocolConversation *protocol, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
185 | GAsyncResult *result, |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
186 | GError **error) |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
187 | { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
188 | PurpleProtocolConversationInterface *iface = NULL; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
189 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
190 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
191 | g_return_val_if_fail(G_IS_ASYNC_RESULT(result), FALSE); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
192 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
193 | if(g_async_result_is_tagged(result, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
194 | purple_protocol_conversation_leave_conversation_async)) |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
195 | { |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
196 | return g_task_propagate_boolean(G_TASK(result), error); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
197 | } |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
198 | |
|
42778
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
199 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
200 | if(iface != NULL && iface->leave_conversation_finish != NULL) { |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
201 | return iface->leave_conversation_finish(protocol, result, error); |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
202 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
203 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
204 | g_warning("purple_protocol_conversation_leave_conversation_finish called " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
205 | "without calling " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
206 | "purple_protocol_conversation_set_avatar_async"); |
|
42778
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
207 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
208 | |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
209 | return FALSE; |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
210 | } |
|
4aa4ab7b24a7
Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42673
diff
changeset
|
211 | |
|
43056
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
212 | gboolean |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
213 | purple_protocol_conversation_implements_send_message(PurpleProtocolConversation *protocol) |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
214 | { |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
215 | PurpleProtocolConversationInterface *iface = NULL; |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
216 | |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
217 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
218 | |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
219 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
220 | |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
221 | if(iface->send_message_async == NULL) { |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
222 | return FALSE; |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
223 | } |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
224 | |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
225 | if(iface->send_message_finish == NULL) { |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
226 | return FALSE; |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
227 | } |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
228 | |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
229 | return TRUE; |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
230 | } |
|
49358391e695
Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents:
42884
diff
changeset
|
231 | |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
232 | void |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
233 | purple_protocol_conversation_send_message_async(PurpleProtocolConversation *protocol, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
234 | PurpleConversation *conversation, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
235 | PurpleMessage *message, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
236 | GCancellable *cancellable, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
237 | GAsyncReadyCallback callback, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
238 | gpointer data) |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
239 | { |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
240 | PurpleProtocolConversationInterface *iface = NULL; |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
241 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
242 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
243 | g_return_if_fail(PURPLE_IS_CONVERSATION(conversation)); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
244 | g_return_if_fail(PURPLE_IS_MESSAGE(message)); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
245 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
246 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
247 | if(iface != NULL && iface->send_message_async != NULL) { |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
248 | iface->send_message_async(protocol, conversation, message, cancellable, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
249 | callback, data); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
250 | } else { |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
251 | g_task_report_new_error(G_OBJECT(protocol), callback, data, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
252 | purple_protocol_conversation_send_message_async, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
253 | PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
254 | "%s does not implement send_message_async", |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
255 | G_OBJECT_TYPE_NAME(protocol)); |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
256 | } |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
257 | } |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
258 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
259 | gboolean |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
260 | purple_protocol_conversation_send_message_finish(PurpleProtocolConversation *protocol, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
261 | GAsyncResult *result, |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
262 | GError **error) |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
263 | { |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
264 | PurpleProtocolConversationInterface *iface = NULL; |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
265 | |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
266 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
267 | g_return_val_if_fail(G_IS_ASYNC_RESULT(result), FALSE); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
268 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
269 | if(g_async_result_is_tagged(result, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
270 | purple_protocol_conversation_send_message_async)) |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
271 | { |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
272 | return g_task_propagate_boolean(G_TASK(result), error); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
273 | } |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
274 | |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
275 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
276 | if(iface != NULL && iface->send_message_finish != NULL) { |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
277 | return iface->send_message_finish(protocol, result, error); |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
278 | } |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
279 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
280 | g_warning("purple_protocol_conversation_send_message_finish called " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
281 | "without calling " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
282 | "purple_protocol_conversation_send_message_async"); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
283 | |
|
42332
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
284 | |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
285 | return FALSE; |
|
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
286 | } |
|
42325
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
287 | |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
288 | void |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
289 | purple_protocol_conversation_set_topic_async(PurpleProtocolConversation *protocol, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
290 | PurpleConversation *conversation, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
291 | const char *topic, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
292 | GCancellable *cancellable, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
293 | GAsyncReadyCallback callback, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
294 | gpointer data) |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
295 | { |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
296 | PurpleProtocolConversationInterface *iface = NULL; |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
297 | |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
298 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
299 | g_return_if_fail(PURPLE_IS_CONVERSATION(conversation)); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
300 | |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
301 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
302 | if(iface != NULL && iface->set_topic_async != NULL) { |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
303 | iface->set_topic_async(protocol, conversation, topic, cancellable, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
304 | callback, data); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
305 | } else { |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
306 | g_task_report_new_error(G_OBJECT(protocol), callback, data, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
307 | purple_protocol_conversation_set_topic_async, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
308 | PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
309 | "%s does not implement set_topic_async", |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
310 | G_OBJECT_TYPE_NAME(protocol)); |
|
42325
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
311 | } |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
312 | } |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
313 | |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
314 | gboolean |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
315 | purple_protocol_conversation_set_topic_finish(PurpleProtocolConversation *protocol, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
316 | GAsyncResult *result, |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
317 | GError **error) |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
318 | { |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
319 | PurpleProtocolConversationInterface *iface = NULL; |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
320 | |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
321 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
322 | g_return_val_if_fail(G_IS_ASYNC_RESULT(result), FALSE); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
323 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
324 | if(g_async_result_is_tagged(result, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
325 | purple_protocol_conversation_set_topic_async)) |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
326 | { |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
327 | return g_task_propagate_boolean(G_TASK(result), error); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
328 | } |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
329 | |
|
42325
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
330 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
331 | if(iface != NULL && iface->set_topic_finish != NULL) { |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
332 | return iface->set_topic_finish(protocol, result, error); |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
333 | } |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
334 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
335 | g_warning("purple_protocol_conversation_set_topic_finish called without " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
336 | "calling purple_protocol_conversation_set_topic_async"); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
337 | |
|
42325
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
338 | return FALSE; |
|
9e5c583e13de
Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
339 | } |
|
42332
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
340 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
341 | PurpleChannelJoinDetails * |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
342 | purple_protocol_conversation_get_channel_join_details(PurpleProtocolConversation *protocol, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
343 | PurpleAccount *account) |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
344 | { |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
345 | PurpleProtocolConversationInterface *iface = NULL; |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
346 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
347 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), NULL); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
348 | g_return_val_if_fail(PURPLE_IS_ACCOUNT(account), NULL); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
349 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
350 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
351 | if(iface != NULL && iface->get_channel_join_details != NULL) { |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
352 | return iface->get_channel_join_details(protocol, account); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
353 | } |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
354 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
355 | g_warning("%s does not implement get_channel_join_details", |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
356 | G_OBJECT_TYPE_NAME(protocol)); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
357 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
358 | return NULL; |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
359 | } |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
360 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
361 | void |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
362 | purple_protocol_conversation_join_channel_async(PurpleProtocolConversation *protocol, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
363 | PurpleAccount *account, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
364 | PurpleChannelJoinDetails *details, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
365 | GCancellable *cancellable, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
366 | GAsyncReadyCallback callback, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
367 | gpointer data) |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
368 | { |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
369 | PurpleProtocolConversationInterface *iface = NULL; |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
370 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
371 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
372 | g_return_if_fail(PURPLE_IS_ACCOUNT(account)); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
373 | g_return_if_fail(PURPLE_IS_CHANNEL_JOIN_DETAILS(details)); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
374 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
375 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
376 | if(iface != NULL && iface->join_channel_async != NULL) { |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
377 | iface->join_channel_async(protocol, account, details, cancellable, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
378 | callback, data); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
379 | } else { |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
380 | g_task_report_new_error(G_OBJECT(protocol), callback, data, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
381 | purple_protocol_conversation_join_channel_async, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
382 | PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
383 | "%s does not implement join_channel_async", |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
384 | G_OBJECT_TYPE_NAME(protocol)); |
|
42332
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
385 | } |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
386 | } |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
387 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
388 | gboolean |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
389 | purple_protocol_conversation_join_channel_finish(PurpleProtocolConversation *protocol, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
390 | GAsyncResult *result, |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
391 | GError **error) |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
392 | { |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
393 | PurpleProtocolConversationInterface *iface = NULL; |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
394 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
395 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
396 | g_return_val_if_fail(G_IS_ASYNC_RESULT(result), FALSE); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
397 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
398 | if(g_async_result_is_tagged(result, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
399 | purple_protocol_conversation_join_channel_async)) |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
400 | { |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
401 | return g_task_propagate_boolean(G_TASK(result), error); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
402 | } |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
403 | |
|
42332
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
404 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
405 | if(iface != NULL && iface->join_channel_finish != NULL) { |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
406 | return iface->join_channel_finish(protocol, result, error); |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
407 | } |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
408 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
409 | g_warning("purple_protocol_conversation_join_channel_finish called " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
410 | "without calling " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
411 | "purple_protocol_conversation_join_channel_async"); |
|
42332
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
412 | |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
413 | return FALSE; |
|
0de4f569ccf3
Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42325
diff
changeset
|
414 | } |
|
42354
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
415 | |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
416 | void |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
417 | purple_protocol_conversation_set_avatar_async(PurpleProtocolConversation *protocol, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
418 | PurpleConversation *conversation, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
419 | PurpleAvatar *avatar, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
420 | GCancellable *cancellable, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
421 | GAsyncReadyCallback callback, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
422 | gpointer data) |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
423 | { |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
424 | PurpleProtocolConversationInterface *iface = NULL; |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
425 | |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
426 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
427 | g_return_if_fail(PURPLE_IS_CONVERSATION(conversation)); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
428 | |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
429 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
430 | if(iface != NULL && iface->set_avatar_async != NULL) { |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
431 | iface->set_avatar_async(protocol, conversation, avatar, cancellable, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
432 | callback, data); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
433 | } else { |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
434 | g_task_report_new_error(G_OBJECT(protocol), callback, data, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
435 | purple_protocol_conversation_set_avatar_async, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
436 | PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
437 | "%s does not implement set_avatar_async", |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
438 | G_OBJECT_TYPE_NAME(protocol)); |
|
42354
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
439 | } |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
440 | } |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
441 | |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
442 | gboolean |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
443 | purple_protocol_conversation_set_avatar_finish(PurpleProtocolConversation *protocol, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
444 | GAsyncResult *result, |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
445 | GError **error) |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
446 | { |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
447 | PurpleProtocolConversationInterface *iface = NULL; |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
448 | |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
449 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
450 | g_return_val_if_fail(G_IS_ASYNC_RESULT(result), FALSE); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
451 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
452 | if(g_async_result_is_tagged(result, |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
453 | purple_protocol_conversation_set_avatar_async)) |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
454 | { |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
455 | return g_task_propagate_boolean(G_TASK(result), error); |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
456 | } |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
457 | |
|
42354
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
458 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
459 | if(iface != NULL && iface->set_avatar_finish != NULL) { |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
460 | return iface->set_avatar_finish(protocol, result, error); |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
461 | } |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
462 | |
|
42818
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
463 | g_warning("purple_protocol_conversation_set_avatar_finish called without " |
|
d8b4ef0aa09d
Use GTask.report_new_error in Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42778
diff
changeset
|
464 | "calling purple_protocol_conversation_set_avatar_async"); |
|
42354
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
465 | |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
466 | return FALSE; |
|
b5caf6b7705a
Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42332
diff
changeset
|
467 | } |
|
42368
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
468 | |
|
42884
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
469 | gboolean |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
470 | purple_protocol_conversation_implements_send_typing(PurpleProtocolConversation *protocol) |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
471 | { |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
472 | PurpleProtocolConversationInterface *iface = NULL; |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
473 | |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
474 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
475 | |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
476 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
477 | if(iface->send_typing != NULL) { |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
478 | return TRUE; |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
479 | } |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
480 | |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
481 | return FALSE; |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
482 | } |
|
5a7d425c9d1b
Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents:
42818
diff
changeset
|
483 | |
|
42368
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
484 | void |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
485 | purple_protocol_conversation_send_typing(PurpleProtocolConversation *protocol, |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
486 | PurpleConversation *conversation, |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
487 | PurpleTypingState state) |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
488 | { |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
489 | PurpleProtocolConversationInterface *iface = NULL; |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
490 | |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
491 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
492 | g_return_if_fail(PURPLE_IS_CONVERSATION(conversation)); |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
493 | |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
494 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
495 | if(iface != NULL && iface->send_typing != NULL) { |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
496 | iface->send_typing(protocol, conversation, state); |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
497 | } else { |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
498 | g_warning("%s does not implement send_typing", |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
499 | G_OBJECT_TYPE_NAME(protocol)); |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
500 | } |
|
2630a8a2d64d
Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42354
diff
changeset
|
501 | } |
|
43104
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
502 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
503 | gboolean |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
504 | purple_protocol_conversation_implements_refresh(PurpleProtocolConversation *protocol) |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
505 | { |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
506 | PurpleProtocolConversationInterface *iface = NULL; |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
507 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
508 | g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
509 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
510 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
511 | if(iface->refresh != NULL) { |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
512 | return TRUE; |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
513 | } |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
514 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
515 | return FALSE; |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
516 | } |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
517 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
518 | void |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
519 | purple_protocol_conversation_refresh(PurpleProtocolConversation *protocol, |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
520 | PurpleConversation *conversation) |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
521 | { |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
522 | PurpleProtocolConversationInterface *iface = NULL; |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
523 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
524 | g_return_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol)); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
525 | g_return_if_fail(PURPLE_IS_CONVERSATION(conversation)); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
526 | |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
527 | iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
528 | if(iface->refresh != NULL) { |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
529 | iface->refresh(protocol, conversation); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
530 | } else { |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
531 | g_warning("%s does not implement refresh", |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
532 | G_OBJECT_TYPE_NAME(protocol)); |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
533 | } |
|
f87ae4effec7
Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents:
43056
diff
changeset
|
534 | } |