changeset 1820:0628dcecaddf

Set the message flag with module list (when there are several modules)
author Mikael Berthe <mikael@lilotux.net>
date Tue, 23 Mar 2010 23:57:57 +0100
parents d13315366ba5
children 60db836ad98a
files mcabber/mcabber/modules.c
diffstat 1 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mcabber/mcabber/modules.c	Tue Mar 23 23:41:21 2010 +0100
+++ b/mcabber/mcabber/modules.c	Tue Mar 23 23:57:57 2010 +0100
@@ -281,6 +281,7 @@
   gsize maxlen = 0;
   gchar *format;
   GString *message;
+  guint module_count = 0;
 
   if (!loaded_modules) {
     scr_LogPrint(LPRINT_LOGNORM, "No modules loaded.");
@@ -293,6 +294,7 @@
     gsize len = strlen(module->name);
     if (len > maxlen)
       maxlen = len;
+    module_count++;
   }
 
   // Create format string
@@ -336,7 +338,13 @@
   // Chop extra "\n"
   g_string_truncate(message, message->len - 1);
 
-  scr_LogPrint(LPRINT_LOGNORM, "%s", message->str);
+  scr_LogPrint(LPRINT_NORMAL, "%s", message->str);
+
+  if (module_count + 2 > scr_getlogwinheight()) {
+    scr_setmsgflag_if_needed(SPECIAL_BUFFER_STATUS_ID, TRUE);
+    scr_setattentionflag_if_needed(SPECIAL_BUFFER_STATUS_ID, TRUE,
+                                  ROSTER_UI_PRIO_STATUS_WIN_MESSAGE, prio_max);
+  }
 
   g_string_free(message, TRUE);
   g_free(format);
@@ -396,7 +404,6 @@
   scr_setmsgflag_if_needed(SPECIAL_BUFFER_STATUS_ID, TRUE);
   scr_setattentionflag_if_needed(SPECIAL_BUFFER_STATUS_ID, TRUE,
                                  ROSTER_UI_PRIO_STATUS_WIN_MESSAGE, prio_max);
-  update_roster = TRUE;
 }
 
 //  modules_init()