]> code.delx.au - gnu-emacs-elpa/blobdiff - company.el
Use window-screen-lines when available
[gnu-emacs-elpa] / company.el
index 3f90a48a6c55fb4bd264421acd3f81af102d8d95..4b5965587d850e2465147ce19d74c11e3d502ce8 100644 (file)
@@ -117,6 +117,10 @@ buffer-local wherever it is set."
     (t (:background "green")))
   "Face used for the selection in the tooltip.")
 
+(defface company-tooltip-search
+  '((default :inherit company-tooltip-selection))
+  "Face used for the search string in the tooltip.")
+
 (defface company-tooltip-mouse
   '((default :inherit highlight))
   "Face used for the tooltip item under the mouse.")
@@ -2156,7 +2160,7 @@ If SHOW-VERSION is non-nil, show the version in the echo area."
                              (length company-prefix)))
           (let ((beg (+ margin (match-beginning 0)))
                 (end (+ margin (match-end 0))))
-            (add-text-properties beg end '(face company-tooltip-selection)
+            (add-text-properties beg end '(face company-tooltip-search)
                                  line)
             (when (< beg common)
               (add-text-properties beg common
@@ -2359,9 +2363,10 @@ If SHOW-VERSION is non-nil, show the version in the echo area."
 
 ;; show
 
-(defsubst company--window-inner-height ()
-  (let ((edges (window-inside-edges)))
-    (- (nth 3 edges) (nth 1 edges))))
+(defsubst company--window-height ()
+  (if (fboundp 'window-screen-lines)
+      (floor (window-screen-lines))
+    (window-body-height)))
 
 (defsubst company--window-width ()
   (let ((ww (window-body-width)))
@@ -2382,7 +2387,7 @@ If SHOW-VERSION is non-nil, show the version in the echo area."
   "Calculate the appropriate tooltip height.
 Returns a negative number if the tooltip should be displayed above point."
   (let* ((lines (company--row))
-         (below (- (company--window-inner-height) 1 lines)))
+         (below (- (company--window-height) 1 lines)))
     (if (and (< below (min company-tooltip-minimum company-candidates-length))
              (> lines below))
         (- (max 3 (min company-tooltip-limit lines)))