]> code.delx.au - gnu-emacs-elpa/commitdiff
Merge commit '811f9645ba6332d646c25dd042010478ff5a579f'
authorArtur Malabarba <bruce.connor.am@gmail.com>
Wed, 21 Oct 2015 10:59:18 +0000 (11:59 +0100)
committerArtur Malabarba <bruce.connor.am@gmail.com>
Wed, 21 Oct 2015 10:59:18 +0000 (11:59 +0100)
1  2 
packages/beacon/beacon.el

index 800c95858d7d45e0c5fe7d707fb85bf1ea9e24db,de52875c6504014e011046ed9c07c82bb1f09c90..de52875c6504014e011046ed9c07c82bb1f09c90
@@@ -5,7 -5,7 +5,7 @@@
  ;; Author: Artur Malabarba <emacs@endlessparentheses.com>
  ;; URL: https://github.com/Malabarba/beacon
  ;; Keywords: convenience
- ;; Version: 0.1.1
+ ;; Version: 0.2
  ;; Package-Requires: ((seq "1.9"))
  
  ;; This program is free software; you can redistribute it and/or modify
@@@ -72,6 -72,13 +72,13 @@@ movement distance (in lines) that trigg
    "Should the beacon blink when the window changes?"
    :type 'boolean)
  
+ (defcustom beacon-blink-when-focused nil
+   "Should the beacon blink when Emacs gains focus?
+ Note that, due to a limitation of `focus-in-hook', this might
+ trigger false positives on some systems."
+   :type 'boolean
+   :package-version '(beacon . "0.2"))
  (defcustom beacon-blink-duration 0.3
    "Time, in seconds, that the blink should last."
    :type 'number)
@@@ -334,6 -341,11 +341,11 @@@ unreliable, so just blink immediately.
      (setq beacon--window-scrolled nil)
      (beacon-blink)))
  
+ (defun beacon--blink-on-focus ()
+   "Blink if `beacon-blink-when-focused' is non-nil"
+   (when beacon-blink-when-focused
+     (beacon-blink)))
  \f
  ;;; Minor-mode
  (defcustom beacon-lighter
    (if beacon-mode
        (progn
          (add-hook 'window-scroll-functions #'beacon--window-scroll-function)
-         (add-hook 'focus-in-hook #'beacon-blink)
+         (add-hook 'focus-in-hook #'beacon--blink-on-focus)
          (add-hook 'post-command-hook #'beacon--post-command)
          (add-hook 'pre-command-hook #'beacon--vanish))
-     (remove-hook 'focus-in-hook #'beacon-blink)
+     (remove-hook 'focus-in-hook #'beacon--blink-on-focus)
      (remove-hook 'window-scroll-functions #'beacon--window-scroll-function)
      (remove-hook 'post-command-hook #'beacon--post-command)
      (remove-hook 'pre-command-hook #'beacon--vanish)))