Mercurial > hg > xemacs-beta
diff lisp/x11/x-menubar.el @ 110:fe104dbd9147 r20-1b7
Import from CVS: tag r20-1b7
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:19:45 +0200 |
parents | 360340f9fd5f |
children | 9f59509498e1 |
line wrap: on
line diff
--- a/lisp/x11/x-menubar.el Mon Aug 13 09:18:41 2007 +0200 +++ b/lisp/x11/x-menubar.el Mon Aug 13 09:19:45 2007 +0200 @@ -1209,9 +1209,8 @@ "This function will return a list of all faces that have not been 'customized'." (delq nil (mapcar '(lambda (face) - (if (not (or (get face 'saved-face) - (get face 'factory-face))) - face)) + (unless (get face 'saved-face) + face)) (face-list)))) (defun save-options-specifier-spec-list (face property) @@ -1410,9 +1409,18 @@ (popup-menu (cond ((and global-popup-menu mode-popup-menu) (check-menu-syntax mode-popup-menu) - (let ((title (car mode-popup-menu)) - (items (cdr mode-popup-menu))) - (append global-popup-menu + (let* ((title (car mode-popup-menu)) + (items (cdr mode-popup-menu)) + filters) + ;; Strip keywords from local menu for attaching them at the top + (while (not (vectorp (car items))) + (setq items (append filters (list (car items)))) + (setq items (cdr items))) + ;; If filters contains a keyword already present in + ;; `global-popup-menu' you will probably lose. + (append (list (car global-popup-menu)) + filters + (cdr global-popup-menu) '("---" "---") (if popup-menu-titles (list title)) (if popup-menu-titles '("---" "---"))