* riece.el (riece-dialogue-mode-map): Bind end-of-buffer to End.
[riece] / lisp / riece-display.el
index fb01aa0..304b4bd 100644 (file)
@@ -40,7 +40,7 @@
 (defvar riece-update-buffer-functions nil
   "Functions to redisplay the buffer.
 Local to the buffer in `riece-buffer-list'.")
-  
+
 (defvar riece-update-indicator-functions
   '(riece-update-status-indicators
     riece-update-channel-indicator
@@ -395,7 +395,12 @@ Local to the buffer in `riece-buffer-list'.")
   (cdr (riece-identity-assoc identity riece-channel-buffer-alist)))
 
 (defun riece-switch-to-channel (identity)
-  (let ((last riece-current-channel))
+  (let ((last riece-current-channel)
+       window)
+    (if (and riece-channel-buffer
+            (setq window (get-buffer-window riece-channel-buffer)))
+       (with-current-buffer riece-channel-buffer
+         (setq riece-channel-buffer-window-point (window-point window))))
     (setq riece-current-channel identity
          riece-channel-buffer (riece-channel-buffer riece-current-channel))
     (run-hook-with-args 'riece-after-switch-to-channel-functions last)