gdh1995 / vimium-c

A keyboard shortcut browser extension for keyboard-based navigation and tab operations with an advanced omnibar
https://chrome.google.com/webstore/detail/vimium-c/hfjbmagddngcpeloejdejnfgbamkjaeg
Other
3.43k stars 255 forks source link

f does not work correctly on drop-down lists (select boxes) since yesterday's update #1172

Open catquas opened 4 months ago

catquas commented 4 months ago

I cannot properly 'click' select boxes with Vimium-C since the most recent update. If you use the f key to click on select box elements (drop-down lists) on a webpage, it sort of selects them but then you can't expand the list using spacebar/enter/alt+down, and you can't go to the next/previous option using arrow keys. However if you then type ctrl+f to bring up a find box, then escape to hide the find box, then the select box you previously tried to select with the f key is highlighted and you can expand it or go to next/prev option.

For example, try the select box at: https://www.tutorialrepublic.com/codelab.php?topic=html&file=select-box-02

Browser, OS and Vimium C versions

boomboxnation commented 4 months ago

Same. I am used to select dropdown with 'f', then just hitting the first letter of the drop down option I want. Neither that nor the above/down-up arrows. For that matter I am 'locked out' of Vimium at that point. Esc doesn't even work. I must manually click outside the drop down somewhere to get Vimium back.

Browser name: Vivaldi/Chrome Browser version: 6.8.3381.46 (Stable channel) stable (64-bit) Vimium C version: 2.11 (version updated July 16 2024) OS: Linux/Sway

gdh1995 commented 4 months ago

could you try pressing down Escape key for a while, and then re-check whether Vimium C works or not?

---Original--- From: @.> Date: Thu, Jul 18, 2024 22:31 PM To: @.>; Cc: @.***>; Subject: Re: [gdh1995/vimium-c] f does not work correctly on drop-down lists(select boxes) since yesterday's update (Issue #1172)

Same. I am used to select dropdown with 'f', then just hitting the first letter of the drop down option I want. Neither that nor the above/down-up arrows. For that matter I am 'locked out' of Vimium at that point. Esc doesn't even work. I must manually click outside the drop down somewhere to get Vimium back.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

catquas commented 4 months ago

I tried, and it does not work even if you press escape a lot of times, or hold escape down for a while.

boomboxnation commented 4 months ago

I tried as well. While keeping focus on the browser window esc doesn't escape no matter what and vimium fails to respond.

However, if I focus to another window and then back, vimiuimc is still unresponsive, but a single esc brings it back.

gdh1995 commented 4 months ago

Confirmed this is a bug of Chromium - it prevents extension in MV3 platform from calling select.showPicker(), maybe because of a wrong permission check.

I'll try some tricks to bypass it.

gdh1995 commented 3 months ago

Hello, has v2.11.1 fixed it ?

boomboxnation commented 3 months ago

Hello, has v2.11.1 fixed it ?

It has. Thank you so much. (I just did another pull/build install, everything is as up to date as it can be)

One odd behavior I notice now, I can interact with the dropdown now, but half the time entering the first letter of the option I desire does not work. If I hit Enter and then a letter it's fine. It's as if I have highlighted(?) the menu but not yet activated(?) it. It's not at all consistent, but easily 1 in 2.

catquas commented 3 months ago

Hm, I am still having the original problem, drop-down menus don't get selected unless I leave the window and come back to it. I don't know how to be 100% sure I have the latest version, but in extension options it says I have 2.11.1

gdh1995 commented 3 months ago

@catquas Would this problem happen on all your visited websites? Or only few of them?

This is in fact a bug of Chromium, and the trick added to work it around may run into another "limited feature" of Chromium. So, on some websites with somehow "strict" security systems, the trick in v2.11.1 might fail.

Could you give some example URLs for further tests?

gdh1995 commented 3 months ago

@catquas ~On "strict" websites said above, press <F12> or Ctrl+Shift+I to open Chrome DevTools, and then you may notice such errors on "Console" panel:~ (Updated: sorry this error is irrelvant) image

frenchtoastdelirium commented 3 months ago

I’m having the same issue! I’ve since mapped f to LinkHints.activateFocus and it’s made things easier. Only downside is that you have to press enter a lot more often and it gives you a lot more hints. One thing did change with the new update for me. The drop downs will now allow input after about 1 second acter using normal linkhints. Very strange!

gdh1995 commented 3 months ago

Hello all, Vimium C v2.11.2 has been published. So, is this problem solved then?

frenchtoastdelirium commented 3 months ago

Well, the delay is still there for me. It doesn’t seem different on my end.

frenchtoastdelirium commented 3 months ago

Also, the last key pressed using the link hints will input into the dropdown

gdh1995 commented 3 months ago

@frenchtoastdelirium V2.11.2 aims to solve hanging when clicking <select> and <input type=color> ; while the dropdown you said sounds like a different thing. Could you give an example URL where I may reproduce the issue you met ?

boomboxnation commented 3 months ago

Hello all, Vimium C v2.11.2 has been published. So, is this problem solved then?

As with 2.11.1 the primary issue is still resolved.

I would still like to have drop down selection with first letter work for selection without first having to hit Enter but beggars cannot be choosers.

Thank you again!

gdh1995 commented 3 months ago

have drop down selection with first letter work for selection without first having to hit Enter`

@boomboxnation Sorry I can't get what's the meaning of this sentence. Could you explain it for me?

gdh1995 commented 3 months ago

@frenchtoastdelirium Could you give an example page?

If you mean that "after activateFocus selects a <select> box, type new letters will make <select> switch to a name-matched option", then it's the browser's default feature. And if you need to restart matching, you may just wait about 1 second and then type another word.

gdh1995 commented 3 months ago

@boomboxnation When a <select> box shows its option list, you may also type first several letters to choose a name-matched one. Is this somehow inconvenient for you?