aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoão Távora2017-11-05 14:58:07 +0000
committerJoão Távora2017-11-05 14:58:07 +0000
commita2cc6d74c5b94633e7fc044765e0ef40a8d63f50 (patch)
tree35aeb0348396c72f6fea5b6532a923174f7f3ca9
parent58bb3462ee5d43efbebba29f8e218391966fb2a1 (diff)
downloademacs-a2cc6d74c5b94633e7fc044765e0ef40a8d63f50.tar.gz
emacs-a2cc6d74c5b94633e7fc044765e0ef40a8d63f50.zip
Fix Flymake help-echo functions across windows (bug#29142)
* lisp/progmodes/flymake.el (flymake--highlight-line): Use with-selected-window. (flymake-goto-next-error): Call help-echo with a window and an overlay.
-rw-r--r--lisp/progmodes/flymake.el13
1 files changed, 7 insertions, 6 deletions
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index e13d79770e5..e833cd949ee 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -520,11 +520,12 @@ associated `flymake-category' return DEFAULT."
520 (flymake--fringe-overlay-spec 520 (flymake--fringe-overlay-spec
521 (overlay-get ov 'bitmap))) 521 (overlay-get ov 'bitmap)))
522 (default-maybe 'help-echo 522 (default-maybe 'help-echo
523 (lambda (_window _ov pos) 523 (lambda (window _ov pos)
524 (mapconcat 524 (with-selected-window window
525 #'flymake--diag-text 525 (mapconcat
526 (flymake-diagnostics pos) 526 #'flymake--diag-text
527 "\n"))) 527 (flymake-diagnostics pos)
528 "\n"))))
528 (default-maybe 'severity (warning-numeric-level :error)) 529 (default-maybe 'severity (warning-numeric-level :error))
529 (default-maybe 'priority (+ 100 (overlay-get ov 'severity)))) 530 (default-maybe 'priority (+ 100 (overlay-get ov 'severity))))
530 ;; Some properties can't be overridden. 531 ;; Some properties can't be overridden.
@@ -949,7 +950,7 @@ applied."
949 (message 950 (message
950 "%s" 951 "%s"
951 (funcall (overlay-get target 'help-echo) 952 (funcall (overlay-get target 'help-echo)
952 nil nil (point))))) 953 (selected-window) target (point)))))
953 (interactive 954 (interactive
954 (user-error "No more Flymake errors%s" 955 (user-error "No more Flymake errors%s"
955 (if filter 956 (if filter