;;; Code:
-(require 'mode-motion)
(require 'text-props)
+(defvar menu-bar-mode t)
(defvar gnus-xmas-glyph-directory nil
"*Directory where Gnus logos and icons are located.
(defvar gnus-mouse-2)
(defvar standard-display-table)
-(defun gnus-xmas-install-mouse-tracker ()
- (or (featurep 'mode-motion+)
- (add-hook 'mode-motion-hook 'mode-motion-highlight-line)))
-
(defun gnus-xmas-set-text-properties (start end props &optional buffer)
"You should NEVER use this function. It is ideologically blasphemous.
It is provided only to ease porting of broken FSF Emacs programs."
;; possible valid number, or the second line from the top,
;; whichever is the least.
(set-window-start
- window (min bottom (save-excursion (forward-line (- top))
- (point)))))))
-
-(defun gnus-xmas-group-insert-group-line-info (group)
- (let ((entry (gnus-gethash group gnus-newsrc-hashtb))
- (beg (point))
- active info)
- (if entry
- (progn
- (setq info (nth 2 entry))
- (gnus-group-insert-group-line
- nil group (nth 1 info) (nth 3 info) (car entry) (nth 4 info)))
- (setq active (gnus-gethash group gnus-active-hashtb))
-
- (gnus-group-insert-group-line
- nil group (if (member group gnus-zombie-list) gnus-level-zombie
- gnus-level-killed)
- nil (if active (- (1+ (cdr active)) (car active)) 0) nil))
- (save-excursion
- (goto-char beg)
- (remove-text-properties
- (1+ (gnus-point-at-bol)) (1+ (gnus-point-at-eol))
- '(gnus-group nil)))))
-
+ window (min bottom (save-excursion
+ (forward-line (- top)) (point)))))))
+
+(defun gnus-xmas-group-remove-excess-properties ()
+ (let ((end (point))
+ (beg (progn (forward-line -1) (point))))
+ (remove-text-properties (1+ beg) end '(gnus-group nil))
+ (remove-text-properties
+ beg end
+ '(gnus-topic nil gnus-topic-level nil gnus-topic-visible nil))
+ (goto-char end)))
+
(defun gnus-xmas-copy-article-buffer (&optional article-buffer)
(setq gnus-article-copy (get-buffer-create " *gnus article copy*"))
(buffer-disable-undo gnus-article-copy)
(defun gnus-xmas-group-menu-add ()
(easy-menu-add gnus-group-reading-menu)
(easy-menu-add gnus-group-group-menu)
- (easy-menu-add gnus-group-misc-menu)
- (gnus-xmas-install-mouse-tracker))
+ (easy-menu-add gnus-group-misc-menu))
(defun gnus-xmas-summary-menu-add ()
(easy-menu-add gnus-summary-article-menu)
(easy-menu-add gnus-summary-thread-menu)
(easy-menu-add gnus-summary-misc-menu)
(easy-menu-add gnus-summary-post-menu)
- (easy-menu-add gnus-summary-kill-menu)
- (gnus-xmas-install-mouse-tracker))
+ (easy-menu-add gnus-summary-kill-menu))
(defun gnus-xmas-article-menu-add ()
(easy-menu-add gnus-article-article-menu)
(or (boundp 'standard-display-table) (setq standard-display-table nil))
(or (boundp 'read-event) (fset 'read-event 'next-command-event))
+ (defvar gnus-mouse-face-prop 'highlight)
+
+ (defun gnus-byte-code (func)
+ "Return a form that can be `eval'ed based on FUNC."
+ (let ((fval (symbol-function func)))
+ (if (byte-code-function-p fval)
+ (list 'funcall fval)
+ (cons 'progn (cdr (cdr fval))))))
+
;; Fix by "jeff (j.d.) sparkes" <jsparkes@bnr.ca>.
(defvar gnus-display-type (device-class)
"A symbol indicating the display Emacs is running under.
(defun gnus-xmas-redefine ()
- (fset 'gnus-mouse-face-function 'identity)
+
+
(fset 'gnus-summary-make-display-table (lambda () nil))
(fset 'gnus-visual-turn-off-edit-menu 'identity)
(fset 'gnus-highlight-selected-summary
'gnus-xmas-highlight-selected-summary)
(fset 'gnus-summary-recenter 'gnus-xmas-summary-recenter)
- (fset 'gnus-group-insert-group-line-info
- 'gnus-xmas-group-insert-group-line-info)
+ (fset 'gnus-group-remove-excess-properties
+ 'gnus-xmas-group-remove-excess-properties)
(fset 'gnus-copy-article-buffer 'gnus-xmas-copy-article-buffer)
(fset 'gnus-article-push-button 'gnus-xmas-article-push-button)
(fset 'gnus-article-add-button 'gnus-xmas-article-add-button)
(set-specifier (symbol-value gnus-use-toolbar)
(cons (current-buffer) gnus-summary-toolbar))))
-
;;; gnus-xmas.el ends here