Work for XEmacs
authorKatsumi Yamaoka <yamaoka@jpl.org>
Mon, 17 Aug 2015 23:14:12 +0000 (23:14 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Mon, 17 Aug 2015 23:14:12 +0000 (23:14 +0000)
* message.el (message-overlay-get, message-overlays-in)
(message-window-inside-pixel-edges):
* messagexmas.el (message-overlay-get, message-overlays-in):
XEmacs compatible functions.

lisp/ChangeLog
lisp/message.el
lisp/messagexmas.el

index ae950f1..1453f60 100644 (file)
@@ -1,3 +1,10 @@
+2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * message.el (message-overlay-get, message-overlays-in)
+       (message-window-inside-pixel-edges):
+       * messagexmas.el (message-overlay-get, message-overlays-in):
+       XEmacs compatible functions.
+
 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * message.el (message-toggle-image-thumbnails): New command.
index 4775af7..9e54a94 100644 (file)
@@ -7929,13 +7929,19 @@ which specify the range to operate on."
   (goto-char (prog1 (mark t)
               (set-marker (mark-marker) (point)))))
 
-(defalias 'message-make-overlay 'make-overlay)
-(defalias 'message-delete-overlay 'delete-overlay)
-(defalias 'message-overlay-put 'overlay-put)
-(defun message-kill-all-overlays ()
-  (if (featurep 'xemacs)
-      (map-extents (lambda (extent ignore) (delete-extent extent)))
-    (mapcar #'delete-overlay (overlays-in (point-min) (point-max)))))
+(if (featurep 'emacs)
+    (progn
+      (defalias 'message-delete-overlay 'delete-overlay)
+      (defun message-kill-all-overlays ()
+       (mapcar #'delete-overlay (overlays-in (point-min) (point-max))))
+      (defalias 'message-make-overlay 'make-overlay)
+      (defalias 'message-overlay-get 'overlay-get)
+      (defalias 'message-overlay-put 'overlay-put)
+      (defalias 'message-overlays-in 'overlays-in)
+      (defalias 'message-window-inside-pixel-edges 'window-inside-pixel-edges))
+  (defun message-kill-all-overlays ()
+    (map-extents (lambda (extent ignore) (delete-extent extent))))
+  (defalias 'message-window-inside-pixel-edges 'ignore))
 
 ;; Support for toolbar
 (defvar tool-bar-mode)
@@ -8604,12 +8610,12 @@ Used in `message-simplify-recipients'."
 (defun message-toggle-image-thumbnails ()
   "For any included image files, insert a thumbnail of that image."
   (interactive)
-  (let ((overlays (overlays-in (point-min) (point-max)))
+  (let ((overlays (message-overlays-in (point-min) (point-max)))
        (displayed nil))
     (while overlays
       (let ((overlay (car overlays)))
-       (when (overlay-get overlay 'put-image)
-         (delete-overlay overlay)
+       (when (message-overlay-get overlay 'put-image)
+         (message-delete-overlay overlay)
          (setq displayed t)))
       (setq overlays (cdr overlays)))
     (unless displayed
@@ -8617,7 +8623,7 @@ Used in `message-simplify-recipients'."
        (goto-char (point-min))
        (while (re-search-forward "<img.*src=\"\\([^\"]+\\)" nil t)
          (let ((file (match-string 1))
-               (edges (window-inside-pixel-edges
+               (edges (message-window-inside-pixel-edges
                        (get-buffer-window (current-buffer)))))
            (put-image
             (create-image
index 1746310..2bb020d 100644 (file)
@@ -182,9 +182,17 @@ If NOW, use that time instead."
     'region-exists-p)
   (defalias 'message-make-caesar-translation-table
     'message-xmas-make-caesar-translation-table)
-  (defalias 'message-make-overlay 'make-extent)
   (defalias 'message-delete-overlay 'delete-extent)
+  (defun message-make-overlay (beg end &optional buffer
+                                  front-advance rear-advance)
+    "Create a new overlay with range BEG to END in BUFFER.
+FRONT-ADVANCE and REAR-ADVANCE are ignored."
+    (make-extent beg end buffer))
+  (defalias 'message-overlay-get 'extent-property)
   (defalias 'message-overlay-put 'set-extent-property)
+  (defun message-overlays-in (beg end)
+    "Return a list of the extents that overlap the region BEG ... END."
+    (mapcar-extents #'identity nil nil beg end))
   (defalias 'message-make-date 'message-xmas-make-date))
 
 (message-xmas-redefine)