changeset 14:c87d8adc9100

[/trunk] Changeset 29 by mikael * Update pending message indicator in real time.
author mikael
date Wed, 23 Mar 2005 21:13:22 +0000
parents 4c3d7b8a29c4
children b04282e4cd80
files mcabber/TODO mcabber/buddies.c mcabber/main.c mcabber/screen.c mcabber/screen.h
diffstat 5 files changed, 14 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mcabber/TODO	Wed Mar 23 20:26:08 2005 +0000
+++ b/mcabber/TODO	Wed Mar 23 21:13:22 2005 +0000
@@ -1,6 +1,9 @@
+
+* chatmode seems buggy
+* un-export window internal structure, use a public function
+* pending message not displayed if buddy outside Contact window
 
 * Use libjabber
-* Update roaster when somebody talks to us
 * Commands! :-)
   - /say
   - /add
--- a/mcabber/buddies.c	Wed Mar 23 20:26:08 2005 +0000
+++ b/mcabber/buddies.c	Wed Mar 23 21:13:22 2005 +0000
@@ -243,7 +243,7 @@
 
     tmp = buddy_entry(pos);
     // FIXME: we should create a function instead of exporting this! :-(
-    // Cf. revision ~27
+    // Cf. revision ~28
     wintmp = scr_SearchWindow(tmp->jid);
     if (wintmp)
       scr_LogPrint("wintmp != NULL");
--- a/mcabber/main.c	Wed Mar 23 20:26:08 2005 +0000
+++ b/mcabber/main.c	Wed Mar 23 21:13:22 2005 +0000
@@ -270,6 +270,10 @@
       }
       */
     }
+    if (update_roaster) {
+      scr_LogPrint("Update roaster");
+      bud_DrawRoster(scr_GetRosterWindow());
+    }
   }
 
   bud_TerminateBuddies();
--- a/mcabber/screen.c	Wed Mar 23 20:26:08 2005 +0000
+++ b/mcabber/screen.c	Wed Mar 23 21:13:22 2005 +0000
@@ -27,6 +27,7 @@
 static window_entry_t *currentWindow;
 
 static int chatmode;
+int update_roaster;
 
 static char inputLine[INPUTLINE_LENGTH];
 static char *ptr_inputline;
@@ -335,6 +336,7 @@
     currentWindow = tmp;
     chatmode = TRUE;
     tmp->pending_msg = FALSE;
+    update_roaster = TRUE;
     width = scr_WindowHeight(tmp->win);
     for (n = 0; n < tmp->nlines; n++) {
       mvwprintw(tmp->win, n + 1, 1, "");
@@ -434,6 +436,7 @@
     doupdate();
   } else {
     tmp->pending_msg = TRUE;
+    update_roaster = TRUE;
   }
 }
 
--- a/mcabber/screen.h	Wed Mar 23 20:26:08 2005 +0000
+++ b/mcabber/screen.h	Wed Mar 23 21:13:22 2005 +0000
@@ -29,6 +29,8 @@
   struct list_head list;
 } window_entry_t;
 
+extern int update_roaster;
+
 void scr_InitCurses(void);
 void scr_DrawMainWindow(void);
 void scr_TerminateCurses(void);