Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vimium add-on/extension is Firefox Nightly for Android installed and enabled but I cannot get it to work #4574

Open
b9Joker108 opened this issue Nov 17, 2024 · 3 comments

Comments

@b9Joker108
Copy link

Describe the bug

I installed the Vimium add-on/extension in Firefox Nightly for Android from the .xpi file. Nightly says Vimium is installed and enabled but I cannot get it to work, as the virtual keyboard is always offscreen.

Browser and Vimium version

Firefox Nightly is produced by Mozilla. 134.0al (Build #2016056007), hg-108d038388ff+ GV: 134.0a1-20241113215256 AS: 134.20241109050310 2024-11-14T00:26:45.516647892

I installed Vimium with: vimium_ff-2.1.2.xpi

Vimium version 2.1.2 last updated 18 Nov 2024

  • One UI version: 6.1.1
  • Android version: 14
  • Current version: X910XXS4BXJ7 / X9100XM4BXJ7 /
  • Security patch level: 1 October 2024
❯ termux-info
Termux Variables:
TERMUX_API_VERSION=0.50.1
TERMUX_APK_RELEASE=F_DROID                                                                                        TERMUX_APP_PACKAGE_MANAGER=apt
TERMUX_APP_PID=6164
TERMUX_IS_DEBUGGABLE_BUILD=0
TERMUX_MAIN_PACKAGE_FORMAT=debian
TERMUX_VERSION=0.118.1
TERMUX__USER_ID=0                                                                                                 Packages CPU architecture:
aarch64
Subscribed repositories:
# sources.list
deb https://termux.3san.dev/termux/termux-main stable main
# sources.list.d/pointless.list
deb https://its-pointless.github.io/files/21 termux extras                                                        # sources.list.d/ivam3-termux-packages.list
deb [trusted=yes arch=all] https://ivam3.github.io/termux-packages stable extras                                  # x11-repo (sources.list.d/x11.list)
deb https://termux.3san.dev/termux/termux-x11 x11 main
# tur-repo (sources.list.d/tur.list)
deb https://tur.kcubeterm.com tur-packages tur tur-on-device tur-continuous                                       # root-repo (sources.list.d/root.list)
deb https://termux.3san.dev/termux/termux-root root stable                                                        # sources.list.d/rendiix.list
deb https://rendiix.github.io android-tools termux                                                                # glibc-repo (sources.list.d/glibc.list)
deb https://packages-cf.termux.dev/apt/termux-glibc/ glibc stable
Updatable packages:                                                                                               command-not-found/stable 2.4.0-51 aarch64 [upgradable from: 2.4.0-50]
gst-plugins-bad/stable 1.24.9-1 aarch64 [upgradable from: 1.24.9]                                                 gst-plugins-good/stable 1.24.9-1 aarch64 [upgradable from: 1.24.9]                                                openal-soft/stable 1.24.0 aarch64 [upgradable from: 1.23.1]
termux-tools version:                                                                                             1.44.3                                                                                                            Android version:                                                                                                  14                                                                                                                Kernel build information:
Linux localhost 5.15.123-android13-8-29539737-abX910XXS4BXJ7 #1 SMP PREEMPT Mon Oct 14 00:51:42 UTC 2024 aarch64 Android
Device manufacturer:
samsung                                                                                                           Device model:
SM-X910                                                                                                           LD Variables:
LD_LIBRARY_PATH=:/data/data/com.termux/files/home/.local/lib/ollama:/data/data/com.termux/files/usr/lib:/data/data/com.termux/files/home/install/lib
LD_PRELOAD=/data/data/com.termux/files/usr/lib/libtermux-exec.so
Installed termux plugins:
com.termux.widget versionCode:13
com.termux.x11 versionCode:14
com.termux.api versionCode:51                                                                                     com.termux.boot versionCode:1000
com.termux.window versionCode:15                                                                                  com.termux.styling versionCode:1000
com.termux.tasker versionCode:6
@philg-dev
Copy link

philg-dev commented Nov 18, 2024

I mean... it's Android controlling the presence of the keyboard and there's not much you can do about that default behavior.

If you really want to use Vimium on your phone with a virtual keyboard, you could use a virtual keyboard that has a feature to make it appear regardless of the circumstances. I just tested Vimium on my Android phone with Hacker's Keyboard. I enabled the permanent Hacker's Keyboard notification in order to bring up the keyboard wherever I want and Vimium seemed to work just fine like that. I tested some basic functionality like scrolling with j/k, link hints with f, yanking the current URL with yy and everything worked fine for me. x to close the current tab worked, but X to restore the previously closed tab didn't work.

It's not the addon's fault at all that the virtual keyboard doesn't appear - that's not the addon's responsibility.

Slightly more "complex" features that involve tab management seem to not work on Android. I tested cloning tab yt or opening a link in a new tab F followed by typing the link hint and both didn't seem to do anything. Seems like anything that would normally create a tab doesn't work on my end.

From what I could see in the browser compatibility list, it seems like most of the relevant API functions should be available on Android - not sure, why some of the stuff I tested didn't work.

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs#browser_compatibility

@b9Joker108
Copy link
Author

b9Joker108 commented Nov 27, 2024

I already have Hacker's Keyboard enabled in Android notifications, but I don't have the experience that you have outlined. I already had endeavoured this solution prior to lodging the issue. BTW, Hacker's Keyboard has long been abandoned and has not seen any development in years. That said, on occasion, I still find it of value and use.

I find your tone rude by the way, defensive and accusitory, none of which are favourable, approproate and endearing. I am going to give it a few days and come back to this issue and read your message again, to endeavour to identify if it is actually rude and inappropriate or if I am interpreting it that way, or falsely attributing it with that tone.

But, I do take issue with the assertion that it is not a coding design issue of the plugin. Making that argument is just a fallacy and misdirection. If you are making that argument, then you are designing the plugin to not be fit for purpose on an Android device. If that is the truth, be clear and state that.

I have almost every virtual keyboard possible installed on my device and none bar Hacker's Keyboard have the functionality (albeit glitchy), that it is purported to have. I looked everywhere for a persistent virtual keyboard. There are none currently in development with that functionality! Maybe you should package and distribute a light persistent virtual keyboard with your plugin?

@philg-dev
Copy link

I did not intend for my comment to be rude in any way and I'm sorry, if you've interpreted it as such.

Your issue description did not contain many details to go on, yet I still wanted to see if I could help. There was no way for me to tell what your exact scenario and use-case is or what potential solutions you might have tried already or not. So I went out of my way to figure out how to get Vimium installed on Android and figure out a way to potentially use it with only a virtual keyboard. So after I've spent like 1.5 hours or so on doing so, I described my findings, hoping they might be helpful to you..

But, I do take issue with the assertion that it is not a coding design issue of the plugin. Making that argument is just a fallacy and misdirection. If you are making that argument, then you are designing the plugin to not be fit for purpose on an Android device. If that is the truth, be clear and state that.

I'm not entirely sure why you think that Android is officially supported by Vimium, I would be curious to see if that's mentioned anywhere. Also you're acting as if Vimium was "my" code base... I'm not the author, I'm just a regular Vimium user trying to help out others from time to time to learn a bit more about the addon and it's codebase. Maybe I'll do code contributions at some point, too. But since I didn't make the addon and I'm therefore neither responsible for it's Android support, nor would I be in a position to make statements about whether or not it is intended to be fully functional on Android or not.

I have almost every virtual keyboard possible installed on my device and none bar Hacker's Keyboard have the functionality (albeit glitchy), that it is purported to have. I looked everywhere for a persistent virtual keyboard. There are none currently in development with that functionality! Maybe you should package and distribute a light persistent virtual keyboard with your plugin?

It might be possible to implement something like that, basically injecting floating buttons into a website that act as a keyboard replacement... However, I assume that such functionality would be out of scope for Vimium. I could obviously be wrong, but I think the effort of implementing and maintaining such functionality would be very high in comparison to the most likely very small amount of users who would actually make use of that feature. Again, not trying to be rude, just trying to be realistic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants