diff options
author | fiaxh <git@mx.ax.lt> | 2017-05-30 22:47:16 +0200 |
---|---|---|
committer | fiaxh <git@mx.ax.lt> | 2017-05-30 22:51:58 +0200 |
commit | 5ba95ef6b7be3bc7f3a8333f9db78577e1c259bc (patch) | |
tree | a7b7a606f82af06fee5c4ccef57d26822d6096d5 /libdino/src/service | |
parent | 387433ebb9bab442502f812e0364111f37270bcb (diff) | |
download | dino-5ba95ef6b7be3bc7f3a8333f9db78577e1c259bc.tar.gz dino-5ba95ef6b7be3bc7f3a8333f9db78577e1c259bc.zip |
Conversation details dialog
Diffstat (limited to 'libdino/src/service')
-rw-r--r-- | libdino/src/service/muc_manager.vala | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libdino/src/service/muc_manager.vala b/libdino/src/service/muc_manager.vala index bf9b4cda..71a66bb4 100644 --- a/libdino/src/service/muc_manager.vala +++ b/libdino/src/service/muc_manager.vala @@ -45,6 +45,16 @@ public class MucManager : StreamInteractionModule, Object { if (conversation != null) stream_interactor.get_module(ConversationManager.IDENTITY).close_conversation(conversation); } + [CCode (has_target = false)] public delegate void OnResult(Jid jid, Xep.DataForms.DataForm data_form, Object? store); + public void get_config_form(Account account, Jid jid, OnResult on_result, Object? store) { + Core.XmppStream stream = stream_interactor.get_stream(account); + if (stream == null) return; + stream.get_module(Xep.Muc.Module.IDENTITY).get_config_form(stream, jid.to_string(), (stream, jid, data_form, store) => { + Tuple<OnResult, Object?> tuple = store as Tuple<OnResult, Object?>; + tuple.a(new Jid(jid), data_form, tuple.b); + }, Tuple.create(on_result, store)); + } + public void change_subject(Account account, Jid jid, string subject) { Core.XmppStream stream = stream_interactor.get_stream(account); if (stream != null) stream.get_module(Xep.Muc.Module.IDENTITY).change_subject(stream, jid.bare_jid.to_string(), subject); |