(eval-and-compile (require 'hl-line))
(when (memq major-mode
'(todo-mode todo-archive-mode todo-filtered-items-mode))
- (hl-line-mode 'toggle)))
+ (if hl-line-mode
+ (hl-line-mode -1)
+ (hl-line-mode 1))))
(defvar todo--item-headers-hidden nil
"Non-nil if item date-time headers in current buffer are hidden.")
(defun todo-hl-line-range ()
"Make `todo-toggle-item-highlighting' highlight entire item."
(save-excursion
- (when (and (todo-item-end) hl-line--overlay)
- (move-overlay hl-line--overlay (todo-item-start) (todo-item-end)))))
+ (when (todo-item-end)
+ (cons (todo-item-start)
+ (todo-item-end)))))
(defun todo-modes-set-2 ()
"Make some settings that apply to multiple Todo modes."
(setq buffer-read-only t)
(setq-local todo--item-headers-hidden nil)
(setq-local desktop-save-buffer 'todo-desktop-save-buffer)
- (add-hook 'hl-line-highlight-hook #'todo-hl-line-range nil t))
+ (setq-local hl-line-range-function #'todo-hl-line-range))
(defun todo-modes-set-3 ()
"Make some settings that apply to multiple Todo modes."