* riece-layout.el (riece-set-window-points): Use (recenter -1) to
[riece] / lisp / riece-layout.el
index 8643a4e..5970983 100644 (file)
@@ -72,7 +72,7 @@ happen unconditionally."
       (if (or force
              (riece-reconfigure-windows-predicate))
          (apply (car layout) (cdr layout))))))
-  
+
 (defun riece-set-window-points ()
   (if (get-buffer-window riece-user-list-buffer)
       (with-current-buffer riece-user-list-buffer
@@ -83,7 +83,23 @@ happen unconditionally."
       (with-current-buffer riece-channel-list-buffer
        (unless (riece-frozen riece-channel-list-buffer)
          (set-window-start (get-buffer-window riece-channel-list-buffer)
-                           (point-min))))))
+                           (point-min)))))
+  (if (and riece-channel-buffer
+          (get-buffer-window riece-channel-buffer))
+      (with-current-buffer riece-channel-buffer
+       (if (riece-frozen riece-channel-buffer)
+           (if riece-channel-buffer-window-point
+               (set-window-point (get-buffer-window riece-channel-buffer)
+                                 riece-channel-buffer-window-point))
+         (recenter -1 (get-buffer-window riece-channel-buffer)))))
+  (if (get-buffer-window riece-others-buffer)
+      (with-current-buffer riece-others-buffer
+       (unless (riece-frozen riece-others-buffer)
+         (recenter -1 (get-buffer-window riece-others-buffer)))))
+  (if (get-buffer-window riece-dialogue-buffer)
+      (with-current-buffer riece-dialogue-buffer
+       (unless (riece-frozen riece-dialogue-buffer)
+         (recenter -1 (get-buffer-window riece-dialogue-buffer))))))
 
 (defun riece-reconfigure-windows-predicate ()
   "Return t, if window reconfiguration is needed.