diff options
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 23 | ||||
| -rw-r--r-- | lisp/allout-widgets.el | 35 |
2 files changed, 40 insertions, 18 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c726864ebcc..38675a6efb1 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,10 +1,26 @@ | |||
| 1 | 2011-06-26 Ken Manheimer <ken.manheimer@gmail.com> | ||
| 2 | |||
| 3 | * allout-widgets.el (allout-widgets-post-command-business): Stop | ||
| 4 | decorating intermediate isearch matches. They're not being | ||
| 5 | undecorated when an isearch is continued past, and isearch | ||
| 6 | automatically collapses them. This leads to "widget leaks", where | ||
| 7 | decorated items accumulate in collapsed areas. Lines with lots of | ||
| 8 | hidden widgets can slow down cursor travel, substantially. Too | ||
| 9 | much complicated machinery would be needed to ensure undecoration, | ||
| 10 | so we're doing without this nicety. | ||
| 11 | |||
| 12 | (allout-widgets-tally-string): Don't try to do a hash-table-count | ||
| 13 | of allout-widgets-tally when it's nil. This eliminates spurious "Error | ||
| 14 | during redisplay: (wrong-type-argument hash-table-p nil)" warnings in | ||
| 15 | *Messages* when allout-widgets-maintain-tally is t. | ||
| 16 | |||
| 1 | 2011-06-26 Martin Rudalics <rudalics@gmx.at> | 17 | 2011-06-26 Martin Rudalics <rudalics@gmx.at> |
| 2 | 18 | ||
| 3 | * window.el (display-buffer-normalize-argument): Rename to | 19 | * window.el (display-buffer-normalize-argument): Rename to |
| 4 | display-buffer-normalize-arguments. Handle special meaning of | 20 | display-buffer-normalize-arguments. Handle special meaning of |
| 5 | LABEL argument. Respect special-display-function when popping | 21 | LABEL argument. Respect special-display-function when popping up |
| 6 | up a new frame. Fix code searching for a window showing the | 22 | a new frame. Fix code searching for a window showing the buffer |
| 7 | buffer on another frame. | 23 | on another frame. |
| 8 | (display-buffer-normalize-specifiers): Call | 24 | (display-buffer-normalize-specifiers): Call |
| 9 | display-buffer-normalize-arguments. | 25 | display-buffer-normalize-arguments. |
| 10 | (display-buffer-in-window): Don't undedicate the window if its | 26 | (display-buffer-in-window): Don't undedicate the window if its |
| @@ -981,6 +997,7 @@ | |||
| 981 | * iswitchb.el (iswitchb-window-buffer-p): Use `member' instead of | 997 | * iswitchb.el (iswitchb-window-buffer-p): Use `member' instead of |
| 982 | `memq' (Bug#8799). | 998 | `memq' (Bug#8799). |
| 983 | 999 | ||
| 1000 | >>>>>>> MERGE-SOURCE | ||
| 984 | 2011-06-02 Stefan Monnier <monnier@iro.umontreal.ca> | 1001 | 2011-06-02 Stefan Monnier <monnier@iro.umontreal.ca> |
| 985 | 1002 | ||
| 986 | * subr.el (make-progress-reporter): Add "..." by default (bug#8785). | 1003 | * subr.el (make-progress-reporter): Add "..." by default (bug#8785). |
diff --git a/lisp/allout-widgets.el b/lisp/allout-widgets.el index 647b609288d..0f1fe850123 100644 --- a/lisp/allout-widgets.el +++ b/lisp/allout-widgets.el | |||
| @@ -258,7 +258,9 @@ widgets are locally inhibited. | |||
| 258 | 258 | ||
| 259 | The number varies according to the evanescence of objects on a | 259 | The number varies according to the evanescence of objects on a |
| 260 | hash table with weak keys, so tracking of widget erasures is often delayed." | 260 | hash table with weak keys, so tracking of widget erasures is often delayed." |
| 261 | (when (and allout-widgets-maintain-tally (not allout-widgets-mode-inhibit)) | 261 | (when (and allout-widgets-maintain-tally |
| 262 | (not allout-widgets-mode-inhibit) | ||
| 263 | allout-widgets-tally) | ||
| 262 | (format ":%s" (hash-table-count allout-widgets-tally)))) | 264 | (format ":%s" (hash-table-count allout-widgets-tally)))) |
| 263 | ;;;_ = allout-widgets-track-decoration nil | 265 | ;;;_ = allout-widgets-track-decoration nil |
| 264 | (defcustom allout-widgets-track-decoration nil | 266 | (defcustom allout-widgets-track-decoration nil |
| @@ -748,20 +750,23 @@ Optional RECURSING is for internal use, to limit recursion." | |||
| 748 | (message replaced-message) | 750 | (message replaced-message) |
| 749 | (message ""))))) | 751 | (message ""))))) |
| 750 | 752 | ||
| 751 | ;; Detect undecorated items, eg during isearch into previously | 753 | ;; alas, decorated intermediate matches are not easily undecorated |
| 752 | ;; unexposed topics, and decorate "economically". Some | 754 | ;; when they're automatically rehidden by isearch, so we're |
| 753 | ;; undecorated stuff is often exposed, to reduce lag, but the | 755 | ;; dropping this nicety. |
| 754 | ;; item containing the cursor is decorated. We constrain | 756 | ;; ;; Detect undecorated items, eg during isearch into previously |
| 755 | ;; recursion to avoid being trapped by unexpectedly undecoratable | 757 | ;; ;; unexposed topics, and decorate "economically". Some |
| 756 | ;; items. | 758 | ;; ;; undecorated stuff is often exposed, to reduce lag, but the |
| 757 | (when (and (not recursing) | 759 | ;; ;; item containing the cursor is decorated. We constrain |
| 758 | (not (allout-current-decorated-p)) | 760 | ;; ;; recursion to avoid being trapped by unexpectedly undecoratable |
| 759 | (or (not (equal (allout-depth) 0)) | 761 | ;; ;; items. |
| 760 | (not allout-container-item-widget))) | 762 | ;; (when (and (not recursing) |
| 761 | (let ((buffer-undo-list t)) | 763 | ;; (not (allout-current-decorated-p)) |
| 762 | (allout-widgets-exposure-change-recorder | 764 | ;; (or (not (equal (allout-depth) 0)) |
| 763 | allout-recent-prefix-beginning allout-recent-prefix-end nil) | 765 | ;; (not allout-container-item-widget))) |
| 764 | (allout-widgets-post-command-business 'recursing))) | 766 | ;; (let ((buffer-undo-list t)) |
| 767 | ;; (allout-widgets-exposure-change-recorder | ||
| 768 | ;; allout-recent-prefix-beginning allout-recent-prefix-end nil) | ||
| 769 | ;; (allout-widgets-post-command-business 'recursing))) | ||
| 765 | 770 | ||
| 766 | ;; Detect and rectify fouled outline structure - decorated item | 771 | ;; Detect and rectify fouled outline structure - decorated item |
| 767 | ;; not at beginning of line. | 772 | ;; not at beginning of line. |