forked from mirrors/org-mode
Fix bug when update timestamps on filtered agenda entries
* org-compat.el (org-in-invisibility-spec-p): Tiny code cleanup. (org-move-to-column): Only remove '(org-filtered) from `buffer-invisibility-spec'. * org-agenda.el (org-agenda-mode): Add buffer invisibility specs. (org-agenda-filter-hide-line, org-agenda-remove-filter): Set the 'invisible text property to 'org-filtered. (org-agenda-show-new-time): Add the default face to avoid the foreground of the last character on the line to leak into the timestamp notification. Thanks to Thomas Morgan for reporting this.
This commit is contained in:
parent
061904b58e
commit
54ab137689
|
@ -2159,7 +2159,8 @@ The following commands are available:
|
|||
org-agenda-entry-text-mode org-agenda-start-with-entry-text-mode
|
||||
org-agenda-clockreport-mode org-agenda-start-with-clockreport-mode
|
||||
org-agenda-show-log org-agenda-start-with-log-mode))
|
||||
|
||||
(add-to-invisibility-spec '(org-filtered))
|
||||
(add-to-invisibility-spec '(org-link))
|
||||
(easy-menu-change
|
||||
'("Agenda") "Agenda Files"
|
||||
(append
|
||||
|
@ -7652,7 +7653,7 @@ When NO-OPERATOR is non-nil, do not add the + operator to returned tags."
|
|||
(e (point-at-eol)))
|
||||
(let ((inhibit-read-only t))
|
||||
(add-text-properties
|
||||
b e `(invisible t org-filtered t org-filter-type ,type)))))
|
||||
b e `(invisible org-filtered org-filter-type ,type)))))
|
||||
|
||||
(defun org-agenda-remove-filter (type)
|
||||
(interactive)
|
||||
|
@ -7664,7 +7665,7 @@ When NO-OPERATOR is non-nil, do not add the + operator to returned tags."
|
|||
(goto-char pos)
|
||||
(remove-text-properties
|
||||
(point) (next-single-property-change (point) 'org-filter-type)
|
||||
`(invisible t org-filter-type ,type))))
|
||||
`(invisible org-filtered org-filter-type ,type))))
|
||||
(set (intern (format "org-agenda-%s-filter" (intern-soft type))) nil)
|
||||
(setq org-agenda-filter-form nil)
|
||||
(org-agenda-set-mode-name)
|
||||
|
@ -9153,7 +9154,7 @@ Called with a universal prefix arg, show the priority instead of setting it."
|
|||
(add-text-properties
|
||||
(1- (point)) (point-at-eol)
|
||||
(list 'display (org-add-props stamp nil
|
||||
'face 'secondary-selection))))
|
||||
'face '(secondary-selection default)))))
|
||||
(beginning-of-line 1))
|
||||
(beginning-of-line 0)))))
|
||||
|
||||
|
|
|
@ -312,8 +312,7 @@ Works on both Emacs and XEmacs."
|
|||
(defun org-in-invisibility-spec-p (arg)
|
||||
"Is ARG a member of `buffer-invisibility-spec'?"
|
||||
(if (consp buffer-invisibility-spec)
|
||||
(member arg buffer-invisibility-spec)
|
||||
nil))
|
||||
(member arg buffer-invisibility-spec)))
|
||||
|
||||
(defmacro org-xemacs-without-invisibility (&rest body)
|
||||
"Turn off extents with invisibility while executing BODY."
|
||||
|
@ -347,18 +346,8 @@ Works on both Emacs and XEmacs."
|
|||
"Move to column COLUMN.
|
||||
Pass COLUMN and FORCE to `move-to-column'.
|
||||
Pass BUFFER to the XEmacs version of `move-to-column'."
|
||||
(let* ((with-bracket-link
|
||||
(save-excursion
|
||||
(forward-line 0)
|
||||
(looking-at (concat "^.*" org-bracket-link-regexp))))
|
||||
(buffer-invisibility-spec
|
||||
(cond
|
||||
((or (not (derived-mode-p 'org-mode))
|
||||
(and with-bracket-link (org-invisible-p2)))
|
||||
(remove '(org-link) buffer-invisibility-spec))
|
||||
(with-bracket-link
|
||||
(remove t buffer-invisibility-spec))
|
||||
(t buffer-invisibility-spec))))
|
||||
(let ((buffer-invisibility-spec
|
||||
(remove '(org-filtered) buffer-invisibility-spec)))
|
||||
(if (featurep 'xemacs)
|
||||
(org-xemacs-without-invisibility
|
||||
(move-to-column column force buffer))
|
||||
|
|
Loading…
Reference in New Issue