atlas-engineer / nyxt

Nyxt - the hacker's browser.
https://nyxt-browser.com/
9.64k stars 404 forks source link

Youtube keeps asking for device info permission #3412

Open yashasolutions opened 2 weeks ago

yashasolutions commented 2 weeks ago

On the website youtube.com, if I navigate the website with follow-hint - it keeps asking for grant access to the device.

screen-2024-06-10-11H08-14

if I navigate with the mouse, the problem doesn't appear. Only when using the keyboard.

Precise recipe to reproduce the issue

For website-specific issues:

Can you reproduce this issue with Epiphany / GNOME Web (https://wiki.gnome.org/Apps/Web)? Well, Gnome Web doesn't have keyboard navigation - so no.

Information

Lisp implementation: SBCL 2.4.4 (Dynamic space size: 3221225472) Features: (:NYXT-GI-GTK :NYXT-GTK :NYXT-3.11 :NYXT-3 :NYXT-3.11.6 :CLIPBOARD-CONTENT-METHOD :SWANK :SLYNK :PLUMP-UTF-32 :PARENSCRIPT :NSYMBOLS :FSET-EXT-STRINGS :SBCL+SAFE-STANDARD-READTABLE :NAMED-READTABLES :GLOBAL-VARS :CL-FAD :LPARALLEL :21BIT-CHARS :CUSTOM-HASH-TABLE-NATIVE :CL-PPCRE-UNICODE :CL-UNICODE :CL-JSON-DOUBLE-FLOAT-IS-SUBSUMED :CL-JSON-SINGLE-FLOAT-IS-SUBSUMED :CHUNGA :FLEXI-STREAMS :CL-PPCRE :WEBKIT2 :WEBKIT-2.44.2 :WEBKIT-2.44 :WEBKIT-2 :WEBKIT2-CORS-ALLOWLIST :WEBKIT2-PASTE-PLAINTEXT :WEBKIT2-TRACKING :WEBKIT2-MUTE :WEBKIT2-EMOJI :WEBKIT2-MEDIA :WEBKIT2-SANDBOXING :GTK-3-22 :GTK-3-20 :GTK-3-18 :GTK-3-16 :GTK-3-14 :GTK-3-12 :GTK-3-10 :GTK-3-8 :GTK-3-6 :GTK-3-4 :GTK :GDK-3-22 :GDK-3-20 :GDK-3-18 :GDK-3-16 :GDK-3-14 :GDK-3-12 :GDK-3-10 :GDK-3-8 :GDK-3-6 :GDK-3-4 :CAIRO-1-10 :CAIRO-1-12 :GDK-PIXBUF :CLOSER-MOP :GLIB-2-30 :GLIB-2-32 :GLIB-2-34 :GLIB-2-36 :GLIB-2-38 :GLIB-2-40 :GLIB-2-42 :GLIB-2-44 :GLIB-2-46 :GLIB-2-48 :GLIB-2-50 :GLIB-2-52 :GLIB-2-54 :GLIB-2-56 :GLIB-2-58 :GLIB :BORDEAUX-THREADS :LPARALLEL.WITH-CLTL2 :LPARALLEL.WITH-CAS :LPARALLEL.WITH-STEALING-SCHEDULER :SPLIT-SEQUENCE CFFI-FEATURES:FLAT-NAMESPACE CFFI-FEATURES:X86-64 CFFI-FEATURES:UNIX :CFFI CFFI-SYS::FLAT-NAMESPACE ALEXANDRIA::SEQUENCE-EMPTYP :FAST-IO-SV :FAST-IO :CL-JSON-CLOS :CL-JSON :SBCL-USES-SB-ROTATE-BYTE CHIPZ-SYSTEM:GRAY-STREAMS :THREAD-SUPPORT :ASDF3.3 :ASDF3.2 :ASDF3.1 :ASDF3 :ASDF2 :ASDF :OS-UNIX :NON-BASE-CHARS-EXIST-P :ASDF-UNICODE :ARENA-ALLOCATOR :X86-64 :GENCGC :64-BIT :ANSI-CL :COMMON-LISP :ELF :IEEE-FLOATING-POINT :LINUX :LITTLE-ENDIAN :PACKAGE-LOCAL-NICKNAMES :SB-CORE-COMPRESSION :SB-LDB :SB-PACKAGE-LOCKS :SB-THREAD :SB-UNICODE :SBCL :UNIX)

ASDF version: 3.3.1 ASDF registries: (NYXT-SOURCE-REGISTRY ENVIRONMENT-SOURCE-REGISTRY) Critical dependencies: (/build/nyxt/src/_build/cl-cffi-gtk/gtk/cl-cffi-gtk.asd /build/nyxt/src/_build/cl-gobject-introspection/cl-gobject-introspection.asd /build/nyxt/src/_build/cl-webkit/webkit2/cl-webkit2.asd)


**Output when started from a shell**

Nyxt version 3.11.6

[11:25:17] Source location: #P"/usr/share/nyxt/" [11:25:17] Loading Lisp file #P"/home/yasha/.config/nyxt/auto-config.3.lisp". [11:25:17] Loading Lisp file #P"/home/yasha/.config/nyxt/config.lisp". [11:25:17] Listening to socket: #P"/run/user/1000/nyxt/nyxt.socket" (nyxt:1464023): libenchant-WARNING **: 11:25:17.959: broker.vala:159: Error loading plugin: libnuspell.so.5: cannot open shared object file: No such file or directory (nyxt:1464023): libenchant-WARNING **: 11:25:17.962: broker.vala:159: Error loading plugin: libvoikko.so.1: cannot open shared object file: No such file or directory [11:25:18] Loading #P"/home/yasha/.local/share/nyxt/history/default.lisp". [11:25:18] Restoring 1 buffer from history. [11:25:19] Loading #P"/home/yasha/.local/share/nyxt/auto-rules.lisp". [11:25:19] Loading #P"/home/yasha/.local/share/nyxt/hostlist-stevenblack.txt". [11:25:20] Loading "https://www.youtube.com/watch?v=3CbSNmiDKVE". [11:25:24] Finished loading "https://www.youtube.com/watch?v=3CbSNmiDKVE". ```
aadcg commented 1 week ago

I can reproduce.

if I navigate with the mouse, the problem doesn't appear. Only when using the keyboard.

I think it's there when using the mouse or keyboard.

Also, it's not related to follow-hint, hence the title change.


process-permission-request would need to be refactored or abandoned altogether (see https://webkitgtk.org/reference/webkitgtk/stable/class.DeviceInfoPermissionRequest.html). But, given the poor performance of WebKitGTK on heavy pages like YouTube, it follows that it isn't a top priority.