Mercurial > hg
changeset 123:1bdf882bed98
[/trunk] Changeset 136 by mikael
* Fix a display problem when there is only one buddy connected and hide_offline
is set and this buddy goes offline.
author | mikael |
---|---|
date | Tue, 26 Apr 2005 10:11:57 +0000 |
parents | 235fdd5bfd5d |
children | 6d2122c003c4 |
files | mcabber/src/TODO.txt mcabber/src/screen.c |
diffstat | 2 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/mcabber/src/TODO.txt Tue Apr 26 09:37:05 2005 +0000 +++ b/mcabber/src/TODO.txt Tue Apr 26 10:11:57 2005 +0000 @@ -4,9 +4,7 @@ * Should not stay on buddy buffer when one moves to a group * Pending message not displayed if buddy outside Contact window * We should rebuild the buddy list when receiving a message from an offline - buddy. -* Bad display when there is only one buddy connected and hide_offline is set - and this buddy goes offline. + buddy (or invisible/just hidden). TODO:
--- a/mcabber/src/screen.c Tue Apr 26 09:37:05 2005 +0000 +++ b/mcabber/src/screen.c Tue Apr 26 10:11:57 2005 +0000 @@ -446,6 +446,9 @@ int i, n; int rOffset; + // We can reset update_roster + update_roster = FALSE; + getmaxyx(rosterWnd, maxy, maxx); maxx --; // last char is for vertical border name[ROSTER_WIDTH-7] = 0; @@ -461,6 +464,8 @@ // Leave now if buddylist is empty if (!buddylist) { offset = 0; + update_panels(); + doupdate(); return; } @@ -468,6 +473,8 @@ i = g_list_position(buddylist, current_buddy); if (i == -1) { // This is bad scr_LogPrint("Doh! Can't find current selected buddy!!"); + update_panels(); + doupdate(); return; } else if (i < offset) { offset = i; @@ -516,7 +523,6 @@ update_panels(); doupdate(); - update_roster = FALSE; } void scr_WriteMessage(const char *jid, const char *text, char *prefix)