(Qcenter): New variable.
[bpt/emacs.git] / lisp / frame.el
index d77e1b4..f741730 100644 (file)
@@ -574,13 +574,17 @@ A negative ARG moves in the opposite order."
       (while (not (eq (frame-visible-p frame) t))
        (setq frame (previous-frame frame)))
       (setq arg (1+ arg)))
-    (raise-frame frame)
     (select-frame frame)
+    (raise-frame frame)
     ;; Ensure, if possible, that frame gets input focus.
-    (if (eq window-system 'w32)
-       (w32-focus-frame frame)
-      (when focus-follows-mouse
-       (set-mouse-position (selected-frame) (1- (frame-width)) 0)))))
+    (when (eq window-system 'w32)
+      (w32-focus-frame frame))
+    (cond (focus-follows-mouse
+          (unless (eq window-system 'w32)
+            (set-mouse-position (selected-frame) (1- (frame-width)) 0)))
+         (t
+          (when (eq window-system 'x)
+            (x-focus-frame frame))))))
 
 (defun make-frame-names-alist ()
   (let* ((current-frame (selected-frame))
@@ -992,6 +996,22 @@ FRAME nil or omitted means delete all frames except the selected frame."
 
 
 \f
+;;; Scrolling
+
+(defgroup scrolling nil
+  "Scrolling windows."
+  :version "21.1"
+  :group 'frames)
+
+(defcustom automatic-hscrolling t
+  "*Allow or disallow autmatic scrolling windows horizontally.
+If non-nil, windows are autmatically scrolled horizontally to make
+point visible."
+  :version "21.1"
+  :type 'boolean
+  :group 'scrolling)
+
+\f
 ;;; Blinking cursor
 
 (defgroup cursor nil
@@ -1046,7 +1066,8 @@ window blinks."
                (run-with-idle-timer blink-cursor-delay
                                     blink-cursor-delay
                                     'blink-cursor-start))
-         (setq blink-cursor-mode t)))))
+         (setq blink-cursor-mode t))
+      (internal-show-cursor nil t))))
 
 (defcustom blink-cursor (not (eq system-type 'ms-dos))
   "*Non-nil means blinking cursor mode is active."