monnier pushed a commit to branch master
in repository elpa.
commit 91ac4d3c6ca1e7962301d16cd0bb0bc182c3a568
Author: Teemu Likonen <[email protected]>
Date: Sat May 16 17:59:19 2009 +0000
Sammutetaan globaalit koukut vasta, kun oikolukua ei tarvita
Aiemmin globaalit koukut poistettiin aina, kun jostakin puskurista
kytkettiin oikoluku pois. Se on tietysti väärin. Nyt ne poistetaan
samalla kertaa ajastimen poiston kanssa eli vasta, kun mikään puskuri ei
tarvitse oikolukua.
---
wcheck-mode.el | 29 ++++++++++++++++-------------
1 files changed, 16 insertions(+), 13 deletions(-)
diff --git a/wcheck-mode.el b/wcheck-mode.el
index 6a87eb3..b1e0960 100644
--- a/wcheck-mode.el
+++ b/wcheck-mode.el
@@ -137,14 +137,16 @@ oletuskieli."
(t
;; Käynnistetään "oikoluku"
- ;; local hooks
+ ;; Puskurikohtaiset koukut
(add-hook 'kill-buffer-hook 'wcheck-hook-kill-buffer nil t)
(add-hook 'window-scroll-functions 'wcheck-hook-window-scroll nil t)
(add-hook 'after-change-functions 'wcheck-hook-after-change nil t)
(add-hook 'change-major-mode-hook
'wcheck-hook-change-major-mode nil t)
- ;; global hooks
+ ;; Globaalit koukut. Riittää, että nämä lisää vain kerran, mutta
+ ;; varmuuden vuoksi ajetaan seuraavat komennot joka kerta, kun
+ ;; wcheck-tila kytketään päälle.
(add-hook 'window-size-change-functions
'wcheck-hook-window-size-change)
(add-hook 'window-configuration-change-hook
@@ -166,21 +168,21 @@ oletuskieli."
(when (and (not wcheck-buffer-process-data)
wcheck-timer)
- (cancel-timer wcheck-timer)
- (setq wcheck-timer nil))
-
- ;; local hooks
+ (cancel-timer wcheck-timer)
+ (setq wcheck-timer nil)
+ ;; Globaalit koukut poistetaan vasta, kun ajastinkin poistetaan
+ ;; eli kun mikään puskuri ei enää tarvitse oikolukua.
+ (remove-hook 'window-size-change-functions
+ 'wcheck-hook-window-size-change)
+ (remove-hook 'window-configuration-change-hook
+ 'wcheck-hook-window-configuration-change))
+
+ ;; Puskurikohtaiset koukut
(remove-hook 'kill-buffer-hook 'wcheck-hook-kill-buffer t)
(remove-hook 'window-scroll-functions 'wcheck-hook-window-scroll t)
(remove-hook 'after-change-functions 'wcheck-hook-after-change t)
(remove-hook 'change-major-mode-hook
- 'wcheck-hook-change-major-mode t)
-
- ;; global hooks
- (remove-hook 'window-size-change-functions
- 'wcheck-hook-window-size-change)
- (remove-hook 'window-configuration-change-hook
- 'wcheck-hook-window-configuration-change)))
+ 'wcheck-hook-change-major-mode t)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -215,6 +217,7 @@ oletuskieli."
(message
(format "Kieltä \"%s\" ei ole olemassa, sammutetaan oikoluku"
wcheck-language)))
+
;; Käydään läpi kaikki ikkunat, joissa kyseinen puskuri on
;; näkyvissä, ja lähetetään sanat ulkoiselle prosessille.
(walk-windows