changeset 1955:fad27c72a229

Don't update readmark when buffer scroll_lock is set
author Mikael Berthe <mikael@lilotux.net>
date Mon, 14 Mar 2011 15:04:00 +0100
parents 256cfc706ae5
children f309f343070c
files mcabber/mcabber/screen.c
diffstat 1 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/mcabber/mcabber/screen.c	Mon Mar 14 14:25:21 2011 +0100
+++ b/mcabber/mcabber/screen.c	Mon Mar 14 15:04:00 2011 +0100
@@ -1474,9 +1474,10 @@
   if (!dont_show) {
     if (win_entry->bd->lock)
       setmsgflg = TRUE;
-    // If this is an outgoing message, update readmark
-    if (!special && (prefix_flags & (HBB_PREFIX_OUT|HBB_PREFIX_HLIGHT_OUT)))
-      hbuf_set_readmark(win_entry->bd->hbuf, FALSE);
+    else
+      // If this is an outgoing message, update readmark
+      if (!special && (prefix_flags & (HBB_PREFIX_OUT|HBB_PREFIX_HLIGHT_OUT)))
+        hbuf_set_readmark(win_entry->bd->hbuf, FALSE);
     // Show and refresh the window
     top_panel(win_entry->panel);
     scr_update_window(win_entry);
@@ -2820,7 +2821,8 @@
   win_entry = scr_search_window(CURRENT_JID, isspe);
   if (!win_entry) return;
 
-  hbuf_set_readmark(win_entry->bd->hbuf, action);
+  if (!win_entry->bd->lock)
+    hbuf_set_readmark(win_entry->bd->hbuf, action);
 }