;;; tooltip.el --- show tooltip windows
-;; Copyright (C) 1997, 1999-2013 Free Software Foundation, Inc.
+;; Copyright (C) 1997, 1999-2014 Free Software Foundation, Inc.
;; Author: Gerd Moellmann <gerd@acm.org>
;; Keywords: help c mouse tools
:init-value t
:initialize 'custom-initialize-delay
:group 'tooltip
- (unless (or (null tooltip-mode) (fboundp 'x-show-tip))
- (error "Sorry, tooltips are not yet available on this system"))
- (if tooltip-mode
+ (if (and tooltip-mode (fboundp 'x-show-tip))
(progn
(add-hook 'pre-command-hook 'tooltip-hide)
(add-hook 'tooltip-functions 'tooltip-help-tips))
:group 'tooltip)
(make-obsolete-variable 'tooltip-use-echo-area
- "disable Tooltip mode instead" "24.1")
+ "disable Tooltip mode instead" "24.1" 'set)
\f
;;; Variables that are not customizable.
"Change the value of KEY in alist ALIST to VALUE.
If there's no association for KEY in ALIST, add one, otherwise
change the existing association. Value is the resulting alist."
- (let ((param (assq key alist)))
- (if (consp param)
- (setcdr param value)
- (push (cons key value) alist))
- alist))
+ (declare (obsolete "use (setf (alist-get ..) ..) instead" "25.1"))
+ (setf (alist-get key alist) value)
+ alist)
(declare-function x-show-tip "xfns.c"
(string &optional frame parms timeout dx dy))
(fg (face-attribute 'tooltip :foreground))
(bg (face-attribute 'tooltip :background)))
(when (stringp fg)
- (setq params (tooltip-set-param params 'foreground-color fg))
- (setq params (tooltip-set-param params 'border-color fg)))
+ (setf (alist-get 'foreground-color params) fg)
+ (setf (alist-get 'border-color params) fg))
(when (stringp bg)
- (setq params (tooltip-set-param params 'background-color bg)))
+ (setf (alist-get 'background-color params) bg))
(x-show-tip (propertize text 'face 'tooltip)
(selected-frame)
params
((stringp help)
(setq help (replace-regexp-in-string "\n" ", " help))
(unless (or tooltip-previous-message
- (string-equal help (current-message))
+ (equal-including-properties help (current-message))
(and (stringp tooltip-help-message)
- (string-equal tooltip-help-message
- (current-message))))
+ (equal-including-properties tooltip-help-message
+ (current-message))))
(setq tooltip-previous-message (current-message)))
(setq tooltip-help-message help)
(let ((message-truncate-lines t)
;; Cancel display. This also cancels a delayed tip, if
;; there is one.
(tooltip-hide))
- ((equal previous-help msg)
+ ((equal-including-properties previous-help msg)
;; Same help as before (but possibly the mouse has moved).
;; Keep what we have.
)