diff options
| author | Richard M. Stallman | 1996-03-27 22:38:19 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1996-03-27 22:38:19 +0000 |
| commit | 5babefcfaf560dbd8fbdd1fbeaba0087a8793437 (patch) | |
| tree | 8eaff7cf5018698c4fdf8fa90f1995f7758d9962 | |
| parent | 68d4a8a9d75e316e670e8163437821b5f4a9802e (diff) | |
| download | emacs-5babefcfaf560dbd8fbdd1fbeaba0087a8793437.tar.gz emacs-5babefcfaf560dbd8fbdd1fbeaba0087a8793437.zip | |
(mouse-avoidance-old-pointer-shape): New vbl.
(mouse-avoidance-mode): Save old pointer shape when entering
protean mode; restore when exiting.
| -rw-r--r-- | lisp/avoid.el | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lisp/avoid.el b/lisp/avoid.el index 591eb698163..f95ee81985e 100644 --- a/lisp/avoid.el +++ b/lisp/avoid.el | |||
| @@ -95,6 +95,7 @@ Only applies in mouse-avoidance-modes `animate' and `jump'.") | |||
| 95 | (defvar mouse-avoidance-state nil) | 95 | (defvar mouse-avoidance-state nil) |
| 96 | (defvar mouse-avoidance-pointer-shapes nil) | 96 | (defvar mouse-avoidance-pointer-shapes nil) |
| 97 | (defvar mouse-avoidance-n-pointer-shapes 0) | 97 | (defvar mouse-avoidance-n-pointer-shapes 0) |
| 98 | (defvar mouse-avoidance-old-pointer-shape nil) | ||
| 98 | 99 | ||
| 99 | ;;; Functions: | 100 | ;;; Functions: |
| 100 | 101 | ||
| @@ -323,6 +324,12 @@ definition of \"random distance\".)" | |||
| 323 | (remove-hook 'post-command-idle-hook 'mouse-avoidance-banish-hook) | 324 | (remove-hook 'post-command-idle-hook 'mouse-avoidance-banish-hook) |
| 324 | (remove-hook 'post-command-idle-hook 'mouse-avoidance-exile-hook) | 325 | (remove-hook 'post-command-idle-hook 'mouse-avoidance-exile-hook) |
| 325 | (remove-hook 'post-command-idle-hook 'mouse-avoidance-fancy-hook) | 326 | (remove-hook 'post-command-idle-hook 'mouse-avoidance-fancy-hook) |
| 327 | |||
| 328 | ;; Restore pointer shape if necessary | ||
| 329 | (if (eq mouse-avoidance-mode 'proteus) | ||
| 330 | (mouse-avoidance-set-pointer-shape mouse-avoidance-old-pointer-shape)) | ||
| 331 | |||
| 332 | ;; Do additional setup depending on version of mode requested | ||
| 326 | (cond ((eq mode 'none) | 333 | (cond ((eq mode 'none) |
| 327 | (setq mouse-avoidance-mode nil)) | 334 | (setq mouse-avoidance-mode nil)) |
| 328 | ((or (eq mode 'jump) | 335 | ((or (eq mode 'jump) |
| @@ -330,7 +337,8 @@ definition of \"random distance\".)" | |||
| 330 | (eq mode 'proteus)) | 337 | (eq mode 'proteus)) |
| 331 | (add-hook 'post-command-idle-hook 'mouse-avoidance-fancy-hook) | 338 | (add-hook 'post-command-idle-hook 'mouse-avoidance-fancy-hook) |
| 332 | (setq mouse-avoidance-mode mode | 339 | (setq mouse-avoidance-mode mode |
| 333 | mouse-avoidance-state (cons 0 0))) | 340 | mouse-avoidance-state (cons 0 0) |
| 341 | mouse-avoidance-old-pointer-shape x-pointer-shape)) | ||
| 334 | ((eq mode 'exile) | 342 | ((eq mode 'exile) |
| 335 | (add-hook 'post-command-idle-hook 'mouse-avoidance-exile-hook) | 343 | (add-hook 'post-command-idle-hook 'mouse-avoidance-exile-hook) |
| 336 | (setq mouse-avoidance-mode mode | 344 | (setq mouse-avoidance-mode mode |