auto-complete / popup-el

Visual Popup Interface Library for Emacs
GNU General Public License v3.0
451 stars 96 forks source link

Cannot select popup-item with RET in Emacs 24.4 but in 24.3? #104

Closed sata closed 4 years ago

sata commented 8 years ago

Hi

I'm a user of edts-minor mode which uses popup-el. One example of it's usage is edts-navigate-function-popup in edts-navigate.el[1].

I recently moved from Emacs 24.3 to 25.0.93.1 and I noticed that I can't select a given item with RET anymore[3], navigation works fine. Mouse click works fine too but not with RET. This behavior was working in Emacs 24.3. I compiled 24.4 and the behavior is broken there as well.

When glancing through NEWS[2] for 24.4 I saw that there has been a bit of work on menus to work in text-mode. I've got no clue if anything in particular broke here for this.

By the looks of my elpa.d directory I'm using popup.el version 0.5.3.

Any idea why this isn't working anymore? I'm happy to provide a PR to edt if the usage of popup-el is wrong.

[1] https://github.com/tjarvstrand/edts/blob/40138ee39ea3823d74145dabfd0c342cbdeef5d9/elisp/edts/edts-navigate.el#L307 [2] http://git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=emacs-24#n127 [3] popup issue

syohex commented 8 years ago

I cannot reproduce your issue. Can you reproduce this issue by following code with minimum configuration(emacs -Q -l /your_popup_path/popup.el) ?

(popup-menu* '("foo" "bar" "baz"))
sata commented 8 years ago

That works. But the problem wasn't generating the menu itself (as seen in [2]) rather not being able to select an item in the menu with RET. I'll debug the EDTS function and provide a snippet on how it builds up the items in the menu and paste here.

maximvl commented 5 years ago

@syohex @sata Hello, I just faced the same issue on Emacs 26.1 also using EDTS.

I can confirm that simple example (popup-menu* '("foo" "bar" "baz")) works fine with <RET>. I'm going to investigate how EDTS does the popup call.

maximvl commented 5 years ago

What I found is that using pure EDTS call does work, so I assume the problem somewhere in the environment when call happens, but I can't spot anything strange so far.

This is where the popup is used: https://github.com/tjarvstrand/edts/blob/master/elisp/edts/edts-navigate.el#L307

Here is interactive function which is called by a user: https://github.com/tjarvstrand/edts/blob/master/plugins/edts_xref/edts-xref.el#L186

The flow is like this: edts-xref-who-calls -> edts-xref--find-callers -> edts-navigate-function-popup -> popup-menu*.

ghost commented 5 years ago

Same error, the basic example (popup-menu* '("foo" "bar" "baz")) didn't work to me

sata commented 4 years ago

Unfixed, however closing it down.