|
From: | Dmitry Gutov |
Subject: | bug#18504: 24.3.93; posn-at-point intermittently returns wrong value for a valid buffer position |
Date: | Tue, 23 Sep 2014 22:39:49 +0400 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.1 |
On 09/20/2014 11:13 AM, Eli Zaretskii wrote:
This happens when posn-at-point is called with the company-mode overlay still (or already?) in place at that position. That overlay has the invisible property, so it hides the buffer text starting at the position with which you call posn-at-point. Therefore, posn-at-point returns information about the first visible buffer position after the overlay string.
I see, thanks. But does the fact that we get a different return value with different values of bidi-display-reordering, look right to you?
So I think you need to make sure inside company--col-row that the overlay is popped down, before you call posn-at-point. Evidently, in some scenarios it isn't.
Yes, seems to be a bug with the way we set the "current" keymap when completion is performed (the popup is displayed only during that time). Thank you for confirming, I'm looking into it.
The buffer position returned by posn-at-point can serve as your control variable: if it is different from the position that is the argument to company--col-row, you have this situation.
Ok. I can just directly check if the overlay has the `invisible' property set to t or not, though. We keep a reference to the overlay.
[Prev in Thread] | Current Thread | [Next in Thread] |