From b5aa4814326f592d15332c5da4e62ed513fa85d7 Mon Sep 17 00:00:00 2001 From: Yuan Fu Date: Wed, 2 Aug 2023 17:51:41 -0700 Subject: [PATCH] Add support for company-box * eldoc-box.el (eldoc-box--at-point-x-by-company): Change if to a cond and add a branch for company-box. --- eldoc-box.el | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/eldoc-box.el b/eldoc-box.el index 100efe8..8896d74 100644 --- a/eldoc-box.el +++ b/eldoc-box.el @@ -669,15 +669,23 @@ instead." ;; please compiler (defvar company-pseudo-tooltip-overlay) +(declare-function company-box--get-frame "company-box") (defun eldoc-box--at-point-x-by-company () "Return the x position that accommodates company's popup." - (if (and (featurep 'company) company-pseudo-tooltip-overlay) - (+ (* (frame-char-width) - (+ (overlay-get company-pseudo-tooltip-overlay 'company-width) - (overlay-get company-pseudo-tooltip-overlay 'company-column))) - (or (line-number-display-width t) 0)) - nil)) + (cond + ((and (boundp 'company-pseudo-tooltip-overlay) + company-pseudo-tooltip-overlay) + (+ (* (frame-char-width) + (+ (overlay-get company-pseudo-tooltip-overlay + 'company-width) + (overlay-get company-pseudo-tooltip-overlay + 'company-column))) + (or (line-number-display-width t) 0))) + ((and (boundp 'company-box--x) (numberp company-box--x)) + (+ company-box--x + (frame-pixel-width (company-box--get-frame)))) + (t nil))) ;;;; Markdown compatibility