aboutsummaryrefslogtreecommitdiff
path: root/src/ui/chats.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/chats.c')
-rw-r--r--src/ui/chats.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/ui/chats.c b/src/ui/chats.c
index 5d991a7..dbffc26 100644
--- a/src/ui/chats.c
+++ b/src/ui/chats.c
@@ -39,19 +39,19 @@ _chats_iterate(void *cls,
39 chats->line_index++; 39 chats->line_index++;
40 40
41 if (selected) 41 if (selected)
42 chats->selected = GNUNET_CHAT_group_get_context(group); 42 chats->selected = group;
43 43
44 return GNUNET_YES; 44 return GNUNET_YES;
45} 45}
46 46
47static int 47static int
48_chats_iterate_messages(void *cls, 48_chats_iterate_messages(void *cls,
49 UNUSED struct GNUNET_CHAT_Context *context, 49 struct GNUNET_CHAT_Context *context,
50 const struct GNUNET_CHAT_Message *message) 50 const struct GNUNET_CHAT_Message *message)
51{ 51{
52 UI_MESSAGES_Handle *messages = cls; 52 UI_MESSAGES_Handle *messages = cls;
53 53
54 messages_add(messages, message); 54 messages_add(messages, context, message);
55 55
56 return GNUNET_YES; 56 return GNUNET_YES;
57} 57}
@@ -99,20 +99,22 @@ chats_event(UI_CHATS_Handle *chats,
99 { 99 {
100 if (chats->selected) 100 if (chats->selected)
101 { 101 {
102 struct GNUNET_CHAT_Context *context = GNUNET_CHAT_group_get_context(chats->selected);
103
102 messages_clear(&(app->messages)); 104 messages_clear(&(app->messages));
103 105
104 GNUNET_CHAT_context_iterate_messages( 106 GNUNET_CHAT_context_iterate_messages(
105 chats->selected, 107 context,
106 &_chats_iterate_messages, 108 &_chats_iterate_messages,
107 &(app->messages) 109 &(app->messages)
108 ); 110 );
109 111
110 GNUNET_CHAT_context_set_user_pointer( 112 GNUNET_CHAT_context_set_user_pointer(
111 chats->selected, 113 context,
112 &(app->messages) 114 &(app->messages)
113 ); 115 );
114 116
115 app->chat.context = chats->selected; 117 app->chat.context = context;
116 } 118 }
117 else 119 else
118 chats->open_dialog.window = chats->window; 120 chats->open_dialog.window = chats->window;