diff options
| author | Joakim Verona | 2011-11-02 12:27:54 +0100 |
|---|---|---|
| committer | Joakim Verona | 2011-11-02 12:27:54 +0100 |
| commit | 67be5954c049eaa6a5f2ff39e4ec178b339f33cd (patch) | |
| tree | 8ec46fd96a0859235cc436e1dd409d3f3531c360 | |
| parent | 99a92fa3946e55ce4d891b1baa3ae26718508edf (diff) | |
| parent | 1885e5b80a94e5653dd604fb0b7e579d6fe64c3e (diff) | |
| download | emacs-67be5954c049eaa6a5f2ff39e4ec178b339f33cd.tar.gz emacs-67be5954c049eaa6a5f2ff39e4ec178b339f33cd.zip | |
upstream
| -rw-r--r-- | doc/misc/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/ChangeLog | 31 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 7 | ||||
| -rw-r--r-- | lisp/gnus/gnus-util.el | 11 | ||||
| -rw-r--r-- | lisp/gnus/nnir.el | 2 | ||||
| -rw-r--r-- | lisp/gnus/nnmairix.el | 2 | ||||
| -rw-r--r-- | lisp/help.el | 5 | ||||
| -rw-r--r-- | lisp/vc/vc-bzr.el | 4 | ||||
| -rw-r--r-- | lisp/vc/vc-dir.el | 4 | ||||
| -rw-r--r-- | lisp/window.el | 8 | ||||
| -rw-r--r-- | src/ChangeLog | 14 | ||||
| -rw-r--r-- | src/window.c | 15 | ||||
| -rw-r--r-- | src/xdisp.c | 50 |
13 files changed, 86 insertions, 72 deletions
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index ddad0b45106..029406e2d30 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog | |||
| @@ -10,9 +10,8 @@ | |||
| 10 | "Macros with ;". | 10 | "Macros with ;". |
| 11 | (Macros with ;): New page. | 11 | (Macros with ;): New page. |
| 12 | 12 | ||
| 13 | * progmodes/cc-mode.texi (Movement Commands): Document | 13 | * cc-mode.texi (Movement Commands): Document `c-defun-tactic'. |
| 14 | `c-defun-tactic'. Document the new handling of nested scopes for | 14 | Document the new handling of nested scopes for movement by defuns. |
| 15 | movement by defuns. | ||
| 16 | 15 | ||
| 17 | 2011-10-23 Michael Albinus <michael.albinus@gmx.de> | 16 | 2011-10-23 Michael Albinus <michael.albinus@gmx.de> |
| 18 | 17 | ||
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 97ae0232d55..a009352e46e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,21 @@ | |||
| 1 | 2011-11-02 Martin Rudalics <rudalics@gmx.at> | ||
| 2 | |||
| 3 | * window.el (quit-window): Call unrecord-window-buffer after | ||
| 4 | showing another buffer in the window. (Bug#9937) | ||
| 5 | (bury-buffer): Call switch-to-prev-buffer with second argument | ||
| 6 | 'bury. | ||
| 7 | |||
| 8 | 2011-11-02 Juanma Barranquero <lekktu@gmail.com> | ||
| 9 | |||
| 10 | * vc/vc-bzr.el (vc-bzr-state, vc-bzr-after-dir-status): | ||
| 11 | Accept status with more than 9 shelves. (Bug#9935) | ||
| 12 | Reported by Colin D Bennett <colin@gibibit.com>. | ||
| 13 | |||
| 14 | 2011-11-01 Martin Rudalics <rudalics@gmx.at> | ||
| 15 | |||
| 16 | * help.el (with-help-window): Don't reference | ||
| 17 | temp-buffer-show-specifiers in doc-string. | ||
| 18 | |||
| 1 | 2011-10-31 Andreas Schwab <schwab@linux-m68k.org> | 19 | 2011-10-31 Andreas Schwab <schwab@linux-m68k.org> |
| 2 | 20 | ||
| 3 | * subr.el (keymap--menu-item-with-binding): Ignore item if not a | 21 | * subr.el (keymap--menu-item-with-binding): Ignore item if not a |
| @@ -14,8 +32,8 @@ | |||
| 14 | * net/newst-treeview.el: Remove "Time-stamp". | 32 | * net/newst-treeview.el: Remove "Time-stamp". |
| 15 | (newsticker--group-manage-orphan-feeds): Do not call | 33 | (newsticker--group-manage-orphan-feeds): Do not call |
| 16 | newsticker--treeview-tree-update. | 34 | newsticker--treeview-tree-update. |
| 17 | (newsticker-treeview-update, newsticker-treeview): Call | 35 | (newsticker-treeview-update, newsticker-treeview): |
| 18 | newsticker--treeview-tree-update if necessary. | 36 | Call newsticker--treeview-tree-update if necessary. |
| 19 | 37 | ||
| 20 | 2011-10-30 Martin Rudalics <rudalics@gmx.at> | 38 | 2011-10-30 Martin Rudalics <rudalics@gmx.at> |
| 21 | 39 | ||
| @@ -28,8 +46,7 @@ | |||
| 28 | (split-window, balance-windows-1) | 46 | (split-window, balance-windows-1) |
| 29 | (shrink-window-if-larger-than-buffer): | 47 | (shrink-window-if-larger-than-buffer): |
| 30 | * calendar/calendar.el (calendar-generate-window): | 48 | * calendar/calendar.el (calendar-generate-window): |
| 31 | * help.el (resize-temp-buffer-window): Adjust callers | 49 | * help.el (resize-temp-buffer-window): Adjust callers accordingly. |
| 32 | accordingly. | ||
| 33 | 50 | ||
| 34 | 2011-10-30 Stefan Monnier <monnier@iro.umontreal.ca> | 51 | 2011-10-30 Stefan Monnier <monnier@iro.umontreal.ca> |
| 35 | 52 | ||
| @@ -104,7 +121,7 @@ | |||
| 104 | 121 | ||
| 105 | 2011-10-28 Alan Mackenzie <acm@muc.de> | 122 | 2011-10-28 Alan Mackenzie <acm@muc.de> |
| 106 | 123 | ||
| 107 | * progmodes/cc-defs.el (c-version). -> 5.32.2. | 124 | * progmodes/cc-defs.el (c-version): -> 5.32.2. |
| 108 | 125 | ||
| 109 | 2011-10-28 Alan Mackenzie <acm@muc.de> | 126 | 2011-10-28 Alan Mackenzie <acm@muc.de> |
| 110 | 127 | ||
| @@ -292,7 +309,7 @@ | |||
| 292 | Fix bug #9560, sporadic wrong indentation; improve instrumentation | 309 | Fix bug #9560, sporadic wrong indentation; improve instrumentation |
| 293 | of c-parse-state. | 310 | of c-parse-state. |
| 294 | 311 | ||
| 295 | * cc-engine.el (c-append-lower-brace-pair-to-state-cache): | 312 | * progmodes/cc-engine.el (c-append-lower-brace-pair-to-state-cache): |
| 296 | correct faulty logical expression. | 313 | correct faulty logical expression. |
| 297 | (c-parse-state-state, c-record-parse-state-state): | 314 | (c-parse-state-state, c-record-parse-state-state): |
| 298 | (c-replay-parse-state-state): New defvar/defuns. | 315 | (c-replay-parse-state-state): New defvar/defuns. |
| @@ -334,7 +351,7 @@ | |||
| 334 | 351 | ||
| 335 | 2011-10-20 Glenn Morris <rgm@gnu.org> | 352 | 2011-10-20 Glenn Morris <rgm@gnu.org> |
| 336 | 353 | ||
| 337 | * vc/vc.el (vc-next-action): Handle removed directories. (Bug#9781) | 354 | * vc/vc.el (vc-next-action): Handle removed directories. (Bug#9781) |
| 338 | 355 | ||
| 339 | 2011-10-20 Christoph Scholtes <cschol2112@googlemail.com> | 356 | 2011-10-20 Christoph Scholtes <cschol2112@googlemail.com> |
| 340 | 357 | ||
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index a208ccefd4c..860ccf45206 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,10 @@ | |||
| 1 | 2011-11-01 Teodor Zlatanov <tzz@lifelogs.com> | ||
| 2 | |||
| 3 | * gnus-util.el (gnus-bound-and-true-p): Remove. | ||
| 4 | (gnus-bound-and-true-dumber-p): Rename to `gnus-bound-and-true-p'. | ||
| 5 | * nnir.el: Use it. | ||
| 6 | * nnmairix.el: Use it. | ||
| 7 | |||
| 1 | 2011-10-31 Teodor Zlatanov <tzz@lifelogs.com> | 8 | 2011-10-31 Teodor Zlatanov <tzz@lifelogs.com> |
| 2 | 9 | ||
| 3 | * gnus-util.el (gnus-bound-and-true-dumber-p): Define new, slower, dumb | 10 | * gnus-util.el (gnus-bound-and-true-dumber-p): Define new, slower, dumb |
diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el index 71ed50591ad..f811c9664af 100644 --- a/lisp/gnus/gnus-util.el +++ b/lisp/gnus/gnus-util.el | |||
| @@ -1986,15 +1986,8 @@ definitions to shadow the loaded ones for use in file byte-compilation." | |||
| 1986 | (gnus-macroexpand-all expanded environment))) | 1986 | (gnus-macroexpand-all expanded environment))) |
| 1987 | form)))) | 1987 | form)))) |
| 1988 | 1988 | ||
| 1989 | (eval-when-compile | 1989 | ;; simple check, can be a macro but this way, although slow, it's really clear |
| 1990 | ;; This is unnecessary in the compiled version as it is a macro. | 1990 | (defun gnus-bound-and-true-p (sym) |
| 1991 | (if (fboundp 'bound-and-true-p) | ||
| 1992 | (defalias 'gnus-bound-and-true-p 'bound-and-true-p) | ||
| 1993 | (defmacro gnus-bound-and-true-p (var) | ||
| 1994 | "Return the value of symbol VAR if it is bound, else nil." | ||
| 1995 | `(and (boundp (quote ,var)) ,var)))) | ||
| 1996 | |||
| 1997 | (defun gnus-bound-and-true-dumber-p (sym) | ||
| 1998 | (and (boundp sym) (symbol-value sym))) | 1991 | (and (boundp sym) (symbol-value sym))) |
| 1999 | 1992 | ||
| 2000 | (provide 'gnus-util) | 1993 | (provide 'gnus-util) |
diff --git a/lisp/gnus/nnir.el b/lisp/gnus/nnir.el index 7087f8dba96..88fd4fe1ff6 100644 --- a/lisp/gnus/nnir.el +++ b/lisp/gnus/nnir.el | |||
| @@ -1739,7 +1739,7 @@ environment unless `not-global' is non-nil." | |||
| 1739 | (when (eq (car (gnus-find-method-for-group gnus-newsgroup-name)) 'nnir) | 1739 | (when (eq (car (gnus-find-method-for-group gnus-newsgroup-name)) 'nnir) |
| 1740 | (setq gnus-summary-line-format | 1740 | (setq gnus-summary-line-format |
| 1741 | (or nnir-summary-line-format gnus-summary-line-format)) | 1741 | (or nnir-summary-line-format gnus-summary-line-format)) |
| 1742 | (when (gnus-bound-and-true-dumber-p 'gnus-registry-enabled) | 1742 | (when (gnus-bound-and-true-p 'gnus-registry-enabled) |
| 1743 | (remove-hook 'gnus-summary-article-delete-hook 'gnus-registry-action t) | 1743 | (remove-hook 'gnus-summary-article-delete-hook 'gnus-registry-action t) |
| 1744 | (remove-hook 'gnus-summary-article-move-hook 'gnus-registry-action t) | 1744 | (remove-hook 'gnus-summary-article-move-hook 'gnus-registry-action t) |
| 1745 | (remove-hook 'gnus-summary-article-expire-hook 'gnus-registry-action t) | 1745 | (remove-hook 'gnus-summary-article-expire-hook 'gnus-registry-action t) |
diff --git a/lisp/gnus/nnmairix.el b/lisp/gnus/nnmairix.el index 0e58af73666..66ed90be823 100644 --- a/lisp/gnus/nnmairix.el +++ b/lisp/gnus/nnmairix.el | |||
| @@ -1635,7 +1635,7 @@ search in raw mode." | |||
| 1635 | 1635 | ||
| 1636 | (defun nnmairix-determine-original-group-from-registry (mid) | 1636 | (defun nnmairix-determine-original-group-from-registry (mid) |
| 1637 | "Try to determinale original group for message-id MID from the registry." | 1637 | "Try to determinale original group for message-id MID from the registry." |
| 1638 | (when (gnus-bound-and-true-dumber-p 'gnus-registry-enabled) | 1638 | (when (gnus-bound-and-true-p 'gnus-registry-enabled) |
| 1639 | (unless (string-match "^<" mid) | 1639 | (unless (string-match "^<" mid) |
| 1640 | (set mid (concat "<" mid))) | 1640 | (set mid (concat "<" mid))) |
| 1641 | (unless (string-match ">$" mid) | 1641 | (unless (string-match ">$" mid) |
diff --git a/lisp/help.el b/lisp/help.el index bc3d863f357..506889c210e 100644 --- a/lisp/help.el +++ b/lisp/help.el | |||
| @@ -1125,10 +1125,7 @@ HELP-WINDOW is the window used for displaying the help buffer." | |||
| 1125 | (defmacro with-help-window (buffer-name &rest body) | 1125 | (defmacro with-help-window (buffer-name &rest body) |
| 1126 | "Display buffer with name BUFFER-NAME in a help window evaluating BODY. | 1126 | "Display buffer with name BUFFER-NAME in a help window evaluating BODY. |
| 1127 | Select help window if the actual value of the user option | 1127 | Select help window if the actual value of the user option |
| 1128 | `help-window-select' says so. Return last value in BODY. | 1128 | `help-window-select' says so. Return last value in BODY." |
| 1129 | |||
| 1130 | You can specify where and how to show the buffer by binding the | ||
| 1131 | variable `temp-buffer-show-specifiers' to an appropriate value." | ||
| 1132 | (declare (indent 1) (debug t)) | 1129 | (declare (indent 1) (debug t)) |
| 1133 | `(progn | 1130 | `(progn |
| 1134 | ;; Make `help-window-point-marker' point nowhere. The only place | 1131 | ;; Make `help-window-point-marker' point nowhere. The only place |
diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index cc28db689e9..f6b6a56f31c 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el | |||
| @@ -444,7 +444,7 @@ If any error occurred in running `bzr status', then return nil." | |||
| 444 | (let ((warnings (cdr result))) | 444 | (let ((warnings (cdr result))) |
| 445 | (when warnings | 445 | (when warnings |
| 446 | ;; bzr 2.3.0 returns info about shelves, which is not really a warning | 446 | ;; bzr 2.3.0 returns info about shelves, which is not really a warning |
| 447 | (when (string-match "[1-9]+ shel\\(f\\|ves\\) exists?\\..*?\n" warnings) | 447 | (when (string-match "[0-9]+ shel\\(f\\|ves\\) exists?\\..*?\n" warnings) |
| 448 | (setq warnings (replace-match "" nil nil warnings))) | 448 | (setq warnings (replace-match "" nil nil warnings))) |
| 449 | (unless (string= warnings "") | 449 | (unless (string= warnings "") |
| 450 | (message "Warnings in `bzr' output: %s" warnings)))) | 450 | (message "Warnings in `bzr' output: %s" warnings)))) |
| @@ -891,7 +891,7 @@ stream. Standard error output is discarded." | |||
| 891 | (goto-char (point-min)) | 891 | (goto-char (point-min)) |
| 892 | (while (not (eobp)) | 892 | (while (not (eobp)) |
| 893 | ;; Bzr 2.3.0 added this if there are shelves. (Bug#8170) | 893 | ;; Bzr 2.3.0 added this if there are shelves. (Bug#8170) |
| 894 | (unless (looking-at "[1-9]+ shel\\(f\\|ves\\) exists?\\.") | 894 | (unless (looking-at "[0-9]+ shel\\(f\\|ves\\) exists?\\.") |
| 895 | (setq status-str | 895 | (setq status-str |
| 896 | (buffer-substring-no-properties (point) (+ (point) 3))) | 896 | (buffer-substring-no-properties (point) (+ (point) 3))) |
| 897 | (setq translated (cdr (assoc status-str translation))) | 897 | (setq translated (cdr (assoc status-str translation))) |
diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el index ed16ee9f6f8..82eb8783a74 100644 --- a/lisp/vc/vc-dir.el +++ b/lisp/vc/vc-dir.el | |||
| @@ -992,8 +992,8 @@ specific headers." | |||
| 992 | (let ((def-dir default-directory) | 992 | (let ((def-dir default-directory) |
| 993 | (backend vc-dir-backend)) | 993 | (backend vc-dir-backend)) |
| 994 | (vc-set-mode-line-busy-indicator) | 994 | (vc-set-mode-line-busy-indicator) |
| 995 | ;; Call the `dir-status-file' backend function. | 995 | ;; Call the `dir-status-files' backend function. |
| 996 | ;; `dir-status-file' is supposed to be asynchronous. | 996 | ;; `dir-status-files' is supposed to be asynchronous. |
| 997 | ;; It should compute the results, and then call the function | 997 | ;; It should compute the results, and then call the function |
| 998 | ;; passed as an argument in order to update the vc-dir buffer | 998 | ;; passed as an argument in order to update the vc-dir buffer |
| 999 | ;; with the results. | 999 | ;; with the results. |
diff --git a/lisp/window.el b/lisp/window.el index d254248c2c7..d93658a2cef 100644 --- a/lisp/window.el +++ b/lisp/window.el | |||
| @@ -2852,7 +2852,7 @@ displayed there." | |||
| 2852 | (t | 2852 | (t |
| 2853 | ;; Switch to another buffer in window. | 2853 | ;; Switch to another buffer in window. |
| 2854 | (set-window-dedicated-p nil nil) | 2854 | (set-window-dedicated-p nil nil) |
| 2855 | (switch-to-prev-buffer nil 'kill))) | 2855 | (switch-to-prev-buffer nil 'bury))) |
| 2856 | 2856 | ||
| 2857 | ;; Always return nil. | 2857 | ;; Always return nil. |
| 2858 | nil)) | 2858 | nil)) |
| @@ -2985,7 +2985,6 @@ one. If non-nil, reset `quit-restore' parameter to nil." | |||
| 2985 | (setq resize (with-current-buffer buffer | 2985 | (setq resize (with-current-buffer buffer |
| 2986 | (and temp-buffer-resize-mode | 2986 | (and temp-buffer-resize-mode |
| 2987 | (/= (nth 3 quad) (window-total-size window))))) | 2987 | (/= (nth 3 quad) (window-total-size window))))) |
| 2988 | (unrecord-window-buffer window buffer) | ||
| 2989 | (set-window-dedicated-p window nil) | 2988 | (set-window-dedicated-p window nil) |
| 2990 | (when resize | 2989 | (when resize |
| 2991 | ;; Try to resize WINDOW to its old height but don't signal an | 2990 | ;; Try to resize WINDOW to its old height but don't signal an |
| @@ -2993,9 +2992,12 @@ one. If non-nil, reset `quit-restore' parameter to nil." | |||
| 2993 | (condition-case nil | 2992 | (condition-case nil |
| 2994 | (window-resize window (- (nth 3 quad) (window-total-size window))) | 2993 | (window-resize window (- (nth 3 quad) (window-total-size window))) |
| 2995 | (error nil))) | 2994 | (error nil))) |
| 2996 | ;; Restore WINDOW's previous buffer, window start and point. | 2995 | ;; Restore WINDOW's previous buffer, start and point position. |
| 2997 | (set-window-buffer-start-and-point | 2996 | (set-window-buffer-start-and-point |
| 2998 | window (nth 0 quad) (nth 1 quad) (nth 2 quad)) | 2997 | window (nth 0 quad) (nth 1 quad) (nth 2 quad)) |
| 2998 | ;; Unrecord WINDOW's buffer here (Bug#9937) to make sure it's not | ||
| 2999 | ;; re-recorded by `set-window-buffer'. | ||
| 3000 | (unrecord-window-buffer window buffer) | ||
| 2999 | ;; Reset the quit-restore parameter. | 3001 | ;; Reset the quit-restore parameter. |
| 3000 | (set-window-parameter window 'quit-restore nil) | 3002 | (set-window-parameter window 'quit-restore nil) |
| 3001 | ;; Select old window. | 3003 | ;; Select old window. |
diff --git a/src/ChangeLog b/src/ChangeLog index 0bb16514b58..f1ba519d92a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,17 @@ | |||
| 1 | 2011-11-01 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (mouse_face_from_buffer_pos): Fix a typo in a comment. | ||
| 4 | Don't stop backward scan on the continuation glyph, even though | ||
| 5 | its CHARPOS is positive. | ||
| 6 | (mouse_face_from_buffer_pos, note_mouse_highlight): Rename | ||
| 7 | cover_string to disp_string. | ||
| 8 | |||
| 9 | 2011-11-01 Martin Rudalics <rudalics@gmx.at> | ||
| 10 | |||
| 11 | * window.c (temp_output_buffer_show): Don't use | ||
| 12 | Vtemp_buffer_show_specifiers. | ||
| 13 | (Vtemp_buffer_show_specifiers): Remove unused variable. | ||
| 14 | |||
| 1 | 2011-10-30 Eli Zaretskii <eliz@gnu.org> | 15 | 2011-10-30 Eli Zaretskii <eliz@gnu.org> |
| 2 | 16 | ||
| 3 | * xdisp.c (try_cursor_movement): Make sure ROW isn't decremented | 17 | * xdisp.c (try_cursor_movement): Make sure ROW isn't decremented |
diff --git a/src/window.c b/src/window.c index e6840a0ebe7..056da1512da 100644 --- a/src/window.c +++ b/src/window.c | |||
| @@ -3187,10 +3187,7 @@ temp_output_buffer_show (register Lisp_Object buf) | |||
| 3187 | call1 (Vtemp_buffer_show_function, buf); | 3187 | call1 (Vtemp_buffer_show_function, buf); |
| 3188 | else | 3188 | else |
| 3189 | { | 3189 | { |
| 3190 | window = display_buffer (buf, Vtemp_buffer_show_specifiers, Qnil); | 3190 | window = display_buffer (buf, Qnil, Qnil); |
| 3191 | /* Reset Vtemp_buffer_show_specifiers immediately so it won't | ||
| 3192 | affect subsequent calls. */ | ||
| 3193 | Vtemp_buffer_show_specifiers = Qnil; | ||
| 3194 | 3191 | ||
| 3195 | if (!EQ (XWINDOW (window)->frame, selected_frame)) | 3192 | if (!EQ (XWINDOW (window)->frame, selected_frame)) |
| 3196 | Fmake_frame_visible (WINDOW_FRAME (XWINDOW (window))); | 3193 | Fmake_frame_visible (WINDOW_FRAME (XWINDOW (window))); |
| @@ -6465,16 +6462,6 @@ If this function is used, then it must do the entire job of showing | |||
| 6465 | the buffer; `temp-buffer-show-hook' is not run unless this function runs it. */); | 6462 | the buffer; `temp-buffer-show-hook' is not run unless this function runs it. */); |
| 6466 | Vtemp_buffer_show_function = Qnil; | 6463 | Vtemp_buffer_show_function = Qnil; |
| 6467 | 6464 | ||
| 6468 | DEFVAR_LISP ("temp-buffer-show-specifiers", Vtemp_buffer_show_specifiers, | ||
| 6469 | doc: /* Buffer display specifiers used by `with-output-to-temp-buffer'. | ||
| 6470 | These specifiers are passed by `with-output-to-temp-buffer' as second | ||
| 6471 | argument to `display-buffer'. Applications should only let-bind this | ||
| 6472 | around a call to `with-output-to-temp-buffer'. | ||
| 6473 | |||
| 6474 | For a description of buffer display specifiers see the variable | ||
| 6475 | `display-buffer-alist'. */); | ||
| 6476 | Vtemp_buffer_show_specifiers = Qnil; | ||
| 6477 | |||
| 6478 | DEFVAR_LISP ("minibuffer-scroll-window", Vminibuf_scroll_window, | 6465 | DEFVAR_LISP ("minibuffer-scroll-window", Vminibuf_scroll_window, |
| 6479 | doc: /* Non-nil means it is the window that C-M-v in minibuffer should scroll. */); | 6466 | doc: /* Non-nil means it is the window that C-M-v in minibuffer should scroll. */); |
| 6480 | Vminibuf_scroll_window = Qnil; | 6467 | Vminibuf_scroll_window = Qnil; |
diff --git a/src/xdisp.c b/src/xdisp.c index 4362d2dc7a9..b7fc1141e28 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -26046,7 +26046,7 @@ rows_from_pos_range (struct window *w, | |||
| 26046 | for the overlay or run of text properties specifying the mouse | 26046 | for the overlay or run of text properties specifying the mouse |
| 26047 | face. BEFORE_STRING and AFTER_STRING, if non-nil, are a | 26047 | face. BEFORE_STRING and AFTER_STRING, if non-nil, are a |
| 26048 | before-string and after-string that must also be highlighted. | 26048 | before-string and after-string that must also be highlighted. |
| 26049 | COVER_STRING, if non-nil, is a display string that may cover some | 26049 | DISP_STRING, if non-nil, is a display string that may cover some |
| 26050 | or all of the highlighted text. */ | 26050 | or all of the highlighted text. */ |
| 26051 | 26051 | ||
| 26052 | static void | 26052 | static void |
| @@ -26057,7 +26057,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26057 | EMACS_INT end_charpos, | 26057 | EMACS_INT end_charpos, |
| 26058 | Lisp_Object before_string, | 26058 | Lisp_Object before_string, |
| 26059 | Lisp_Object after_string, | 26059 | Lisp_Object after_string, |
| 26060 | Lisp_Object cover_string) | 26060 | Lisp_Object disp_string) |
| 26061 | { | 26061 | { |
| 26062 | struct window *w = XWINDOW (window); | 26062 | struct window *w = XWINDOW (window); |
| 26063 | struct glyph_row *first = MATRIX_FIRST_TEXT_ROW (w->current_matrix); | 26063 | struct glyph_row *first = MATRIX_FIRST_TEXT_ROW (w->current_matrix); |
| @@ -26066,7 +26066,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26066 | EMACS_INT ignore, pos; | 26066 | EMACS_INT ignore, pos; |
| 26067 | int x; | 26067 | int x; |
| 26068 | 26068 | ||
| 26069 | xassert (NILP (cover_string) || STRINGP (cover_string)); | 26069 | xassert (NILP (disp_string) || STRINGP (disp_string)); |
| 26070 | xassert (NILP (before_string) || STRINGP (before_string)); | 26070 | xassert (NILP (before_string) || STRINGP (before_string)); |
| 26071 | xassert (NILP (after_string) || STRINGP (after_string)); | 26071 | xassert (NILP (after_string) || STRINGP (after_string)); |
| 26072 | 26072 | ||
| @@ -26076,7 +26076,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26076 | r1 = MATRIX_ROW (w->current_matrix, XFASTINT (w->window_end_vpos)); | 26076 | r1 = MATRIX_ROW (w->current_matrix, XFASTINT (w->window_end_vpos)); |
| 26077 | /* If the before-string or display-string contains newlines, | 26077 | /* If the before-string or display-string contains newlines, |
| 26078 | rows_from_pos_range skips to its last row. Move back. */ | 26078 | rows_from_pos_range skips to its last row. Move back. */ |
| 26079 | if (!NILP (before_string) || !NILP (cover_string)) | 26079 | if (!NILP (before_string) || !NILP (disp_string)) |
| 26080 | { | 26080 | { |
| 26081 | struct glyph_row *prev; | 26081 | struct glyph_row *prev; |
| 26082 | while ((prev = r1 - 1, prev >= first) | 26082 | while ((prev = r1 - 1, prev >= first) |
| @@ -26088,7 +26088,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26088 | while (--glyph >= beg && INTEGERP (glyph->object)); | 26088 | while (--glyph >= beg && INTEGERP (glyph->object)); |
| 26089 | if (glyph < beg | 26089 | if (glyph < beg |
| 26090 | || !(EQ (glyph->object, before_string) | 26090 | || !(EQ (glyph->object, before_string) |
| 26091 | || EQ (glyph->object, cover_string))) | 26091 | || EQ (glyph->object, disp_string))) |
| 26092 | break; | 26092 | break; |
| 26093 | r1 = prev; | 26093 | r1 = prev; |
| 26094 | } | 26094 | } |
| @@ -26113,10 +26113,10 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26113 | r2 = next; | 26113 | r2 = next; |
| 26114 | } | 26114 | } |
| 26115 | /* The rest of the display engine assumes that mouse_face_beg_row is | 26115 | /* The rest of the display engine assumes that mouse_face_beg_row is |
| 26116 | either above below mouse_face_end_row or identical to it. But | 26116 | either above mouse_face_end_row or identical to it. But with |
| 26117 | with bidi-reordered continued lines, the row for START_CHARPOS | 26117 | bidi-reordered continued lines, the row for START_CHARPOS could |
| 26118 | could be below the row for END_CHARPOS. If so, swap the rows and | 26118 | be below the row for END_CHARPOS. If so, swap the rows and store |
| 26119 | store them in correct order. */ | 26119 | them in correct order. */ |
| 26120 | if (r1->y > r2->y) | 26120 | if (r1->y > r2->y) |
| 26121 | { | 26121 | { |
| 26122 | struct glyph_row *tem = r2; | 26122 | struct glyph_row *tem = r2; |
| @@ -26131,7 +26131,7 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26131 | hlinfo->mouse_face_end_row = MATRIX_ROW_VPOS (r2, w->current_matrix); | 26131 | hlinfo->mouse_face_end_row = MATRIX_ROW_VPOS (r2, w->current_matrix); |
| 26132 | 26132 | ||
| 26133 | /* For a bidi-reordered row, the positions of BEFORE_STRING, | 26133 | /* For a bidi-reordered row, the positions of BEFORE_STRING, |
| 26134 | AFTER_STRING, COVER_STRING, START_CHARPOS, and END_CHARPOS | 26134 | AFTER_STRING, DISP_STRING, START_CHARPOS, and END_CHARPOS |
| 26135 | could be anywhere in the row and in any order. The strategy | 26135 | could be anywhere in the row and in any order. The strategy |
| 26136 | below is to find the leftmost and the rightmost glyph that | 26136 | below is to find the leftmost and the rightmost glyph that |
| 26137 | belongs to either of these 3 strings, or whose position is | 26137 | belongs to either of these 3 strings, or whose position is |
| @@ -26157,11 +26157,11 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26157 | x += glyph->pixel_width; | 26157 | x += glyph->pixel_width; |
| 26158 | 26158 | ||
| 26159 | /* Scan the glyph row, looking for BEFORE_STRING, AFTER_STRING, | 26159 | /* Scan the glyph row, looking for BEFORE_STRING, AFTER_STRING, |
| 26160 | or COVER_STRING, and the first glyph from buffer whose | 26160 | or DISP_STRING, and the first glyph from buffer whose |
| 26161 | position is between START_CHARPOS and END_CHARPOS. */ | 26161 | position is between START_CHARPOS and END_CHARPOS. */ |
| 26162 | for (; glyph < end | 26162 | for (; glyph < end |
| 26163 | && !INTEGERP (glyph->object) | 26163 | && !INTEGERP (glyph->object) |
| 26164 | && !EQ (glyph->object, cover_string) | 26164 | && !EQ (glyph->object, disp_string) |
| 26165 | && !(BUFFERP (glyph->object) | 26165 | && !(BUFFERP (glyph->object) |
| 26166 | && (glyph->charpos >= start_charpos | 26166 | && (glyph->charpos >= start_charpos |
| 26167 | && glyph->charpos < end_charpos)); | 26167 | && glyph->charpos < end_charpos)); |
| @@ -26208,11 +26208,11 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26208 | ; | 26208 | ; |
| 26209 | 26209 | ||
| 26210 | /* Scan the glyph row, looking for BEFORE_STRING, AFTER_STRING, | 26210 | /* Scan the glyph row, looking for BEFORE_STRING, AFTER_STRING, |
| 26211 | or COVER_STRING, and the first glyph from buffer whose | 26211 | or DISP_STRING, and the first glyph from buffer whose |
| 26212 | position is between START_CHARPOS and END_CHARPOS. */ | 26212 | position is between START_CHARPOS and END_CHARPOS. */ |
| 26213 | for (; glyph > end | 26213 | for (; glyph > end |
| 26214 | && !INTEGERP (glyph->object) | 26214 | && !INTEGERP (glyph->object) |
| 26215 | && !EQ (glyph->object, cover_string) | 26215 | && !EQ (glyph->object, disp_string) |
| 26216 | && !(BUFFERP (glyph->object) | 26216 | && !(BUFFERP (glyph->object) |
| 26217 | && (glyph->charpos >= start_charpos | 26217 | && (glyph->charpos >= start_charpos |
| 26218 | && glyph->charpos < end_charpos)); | 26218 | && glyph->charpos < end_charpos)); |
| @@ -26268,17 +26268,16 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26268 | row, and also blanks and stretch glyphs inserted by | 26268 | row, and also blanks and stretch glyphs inserted by |
| 26269 | extend_face_to_end_of_line. */ | 26269 | extend_face_to_end_of_line. */ |
| 26270 | while (end > glyph | 26270 | while (end > glyph |
| 26271 | && INTEGERP ((end - 1)->object) | 26271 | && INTEGERP ((end - 1)->object)) |
| 26272 | && (end - 1)->charpos <= 0) | ||
| 26273 | --end; | 26272 | --end; |
| 26274 | /* Scan the rest of the glyph row from the end, looking for the | 26273 | /* Scan the rest of the glyph row from the end, looking for the |
| 26275 | first glyph that comes from BEFORE_STRING, AFTER_STRING, or | 26274 | first glyph that comes from BEFORE_STRING, AFTER_STRING, or |
| 26276 | COVER_STRING, or whose position is between START_CHARPOS | 26275 | DISP_STRING, or whose position is between START_CHARPOS |
| 26277 | and END_CHARPOS */ | 26276 | and END_CHARPOS */ |
| 26278 | for (--end; | 26277 | for (--end; |
| 26279 | end > glyph | 26278 | end > glyph |
| 26280 | && !INTEGERP (end->object) | 26279 | && !INTEGERP (end->object) |
| 26281 | && !EQ (end->object, cover_string) | 26280 | && !EQ (end->object, disp_string) |
| 26282 | && !(BUFFERP (end->object) | 26281 | && !(BUFFERP (end->object) |
| 26283 | && (end->charpos >= start_charpos | 26282 | && (end->charpos >= start_charpos |
| 26284 | && end->charpos < end_charpos)); | 26283 | && end->charpos < end_charpos)); |
| @@ -26315,20 +26314,19 @@ mouse_face_from_buffer_pos (Lisp_Object window, | |||
| 26315 | x = r2->x; | 26314 | x = r2->x; |
| 26316 | end++; | 26315 | end++; |
| 26317 | while (end < glyph | 26316 | while (end < glyph |
| 26318 | && INTEGERP (end->object) | 26317 | && INTEGERP (end->object)) |
| 26319 | && end->charpos <= 0) | ||
| 26320 | { | 26318 | { |
| 26321 | x += end->pixel_width; | 26319 | x += end->pixel_width; |
| 26322 | ++end; | 26320 | ++end; |
| 26323 | } | 26321 | } |
| 26324 | /* Scan the rest of the glyph row from the end, looking for the | 26322 | /* Scan the rest of the glyph row from the end, looking for the |
| 26325 | first glyph that comes from BEFORE_STRING, AFTER_STRING, or | 26323 | first glyph that comes from BEFORE_STRING, AFTER_STRING, or |
| 26326 | COVER_STRING, or whose position is between START_CHARPOS | 26324 | DISP_STRING, or whose position is between START_CHARPOS |
| 26327 | and END_CHARPOS */ | 26325 | and END_CHARPOS */ |
| 26328 | for ( ; | 26326 | for ( ; |
| 26329 | end < glyph | 26327 | end < glyph |
| 26330 | && !INTEGERP (end->object) | 26328 | && !INTEGERP (end->object) |
| 26331 | && !EQ (end->object, cover_string) | 26329 | && !EQ (end->object, disp_string) |
| 26332 | && !(BUFFERP (end->object) | 26330 | && !(BUFFERP (end->object) |
| 26333 | && (end->charpos >= start_charpos | 26331 | && (end->charpos >= start_charpos |
| 26334 | && end->charpos < end_charpos)); | 26332 | && end->charpos < end_charpos)); |
| @@ -27323,7 +27321,7 @@ note_mouse_highlight (struct frame *f, int x, int y) | |||
| 27323 | /* The mouse-highlighting, if any, comes from an overlay | 27321 | /* The mouse-highlighting, if any, comes from an overlay |
| 27324 | or text property in the buffer. */ | 27322 | or text property in the buffer. */ |
| 27325 | Lisp_Object buffer IF_LINT (= Qnil); | 27323 | Lisp_Object buffer IF_LINT (= Qnil); |
| 27326 | Lisp_Object cover_string IF_LINT (= Qnil); | 27324 | Lisp_Object disp_string IF_LINT (= Qnil); |
| 27327 | 27325 | ||
| 27328 | if (STRINGP (object)) | 27326 | if (STRINGP (object)) |
| 27329 | { | 27327 | { |
| @@ -27337,13 +27335,13 @@ note_mouse_highlight (struct frame *f, int x, int y) | |||
| 27337 | mouse_face = get_char_property_and_overlay | 27335 | mouse_face = get_char_property_and_overlay |
| 27338 | (make_number (pos), Qmouse_face, w->buffer, &overlay); | 27336 | (make_number (pos), Qmouse_face, w->buffer, &overlay); |
| 27339 | buffer = w->buffer; | 27337 | buffer = w->buffer; |
| 27340 | cover_string = object; | 27338 | disp_string = object; |
| 27341 | } | 27339 | } |
| 27342 | } | 27340 | } |
| 27343 | else | 27341 | else |
| 27344 | { | 27342 | { |
| 27345 | buffer = object; | 27343 | buffer = object; |
| 27346 | cover_string = Qnil; | 27344 | disp_string = Qnil; |
| 27347 | } | 27345 | } |
| 27348 | 27346 | ||
| 27349 | if (!NILP (mouse_face)) | 27347 | if (!NILP (mouse_face)) |
| @@ -27395,7 +27393,7 @@ note_mouse_highlight (struct frame *f, int x, int y) | |||
| 27395 | XFASTINT (before), | 27393 | XFASTINT (before), |
| 27396 | XFASTINT (after), | 27394 | XFASTINT (after), |
| 27397 | before_string, after_string, | 27395 | before_string, after_string, |
| 27398 | cover_string); | 27396 | disp_string); |
| 27399 | cursor = No_Cursor; | 27397 | cursor = No_Cursor; |
| 27400 | } | 27398 | } |
| 27401 | } | 27399 | } |