Open Bug 1699942 Opened 4 years ago Updated 1 year ago

Cursor doesn't become a hand when mousing over links in Firefox Wayland

Categories

(Core :: Widget: Gtk, defect, P3)

Firefox 86
defect

Tracking

()

UNCONFIRMED

People

(Reporter: yaymukund+mozillabugzilla, Unassigned)

References

(Blocks 1 open bug)

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:86.0) Gecko/20100101 Firefox/86.0

Steps to reproduce:

I installed the nix package firefox-wayland, launched firefox 86.0.1 from the terminal, and moused over links. The cursor does not change to the hand icon.

It might be related to: https://github.com/NixOS/nixpkgs/issues/66093
My relevant nix configs are here: https://git.sr.ht/~yaymukund/dotfiles/tree/main/item/nixos/sway.nix#L16

Actual results:

When I mouseover links, I see an error message. Here's the output:

firefox
JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
Gdk-Message: 14:26:08.359: Unable to load hand2 from the cursor theme
Gdk-Message: 18:18:36.638: Unable to load question_arrow from the cursor theme

Note that "Unable to load hand2..." message appears every time I mouseover an element that should change the cursor to the hand icon (i.e. buttons, links, etc).

Expected results:

The cursor should have become a hand icon.

Blocks: wayland

Oh, I forgot to add:

The firefox package works as expected, so this bug appears to be specific to firefox-wayland.

The Bugbug bot thinks this bug should belong to the 'Core::Widget: Gtk' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Component: Untriaged → Widget: Gtk
Product: Firefox → Core

As a test I also started wayland-firefox from the command line, I see that also other icons are missing:
Gdk-Message: 21:50:03.532: Unable to load split_h from the cursor theme
Gdk-Message: 21:54:24.267: Unable to load openhand from the cursor theme
Gdk-Message: 21:54:24.267: Unable to load 5aca4d189052212118709018842178c0 from the cursor theme
Gdk-Message: 21:57:04.067: Unable to load split_v from the cursor theme

Blocks: wayland-sway
No longer blocks: wayland
Priority: -- → P3

I'm not sure what changed, but this appears to be fixed for me as of Firefox 88.0.1 :confetti_ball:

Cool!

If you're curious, something like pip install --user mozregression && MOZ_ENABLE_WAYLAND=1 mozregression --bad 86 --find-fix could tell if this was a fix on our side (or it might be a fix on gtk or what not).

Status: UNCONFIRMED → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME

I spoke too soon. It was only intermittently fixed and appears to be buggy again after a restart (still on 88.0.1). Sorry about that, but perhaps it's somehow useful for identifying the cause..

Status: RESOLVED → UNCONFIRMED
Resolution: WORKSFORME → ---

I still have this issue in Firefox 89

I am seeing this issue on Mozilla Firefox 90.0

Running Arch Linux/Sway

Forgot to add, Firefox doesn't honour the mouse cursor theme as per setting in as https://wiki.archlinux.org/title/Cursor_themes#X_resources

In NixOS, I'm now able to resolve this by installing arc-theme or gnome.adwaita-icon-theme. I'm on Firefox 89.0.2 on the NixOS unstable channel.

I have both themes installed but doesn't make any difference for me.

This is my workaround.

  • Make symlink /usr/share/cursors/xorg-x11/<theme_name>
  • select theme gsettings set org.gnome.desktop.interface cursor-theme <theme_name>

Probably it is gtk+wayland issue.

Brilliant, thanks spike.

Setting gsettings set org.gnome.desktop.interface cursor-theme was enough!

bug is still on 92.0.1.
also, my computer has my touchpad freezed when I was going to click "Leave the page" button in Firefox to close the window and when I was going to click on it, the touchpad freezed and I had to reboot (disabling and re-enabling touchpad kernel module did not make unfreeze it).
after looking at journalctl logs, I noticed that before the touchpad freezed there was a bunch of "firefox[1674]: Unable to load hand2 from the cursor theme" errors. these errors are all around logs and it didn't freezed so I don't know if these errors are related to touchpad freeze.

ok no, the touchpad freeze is not related with firefox.

  • Make symlink /usr/share/cursors/xorg-x11/<theme_name>

Symlink from what to what?

Another workaround in Ubuntu: Change the theme to dark and restart Firefox.

I had a similar issue and fixed it by disabling all Gnome extensions with gnome-tweaks, then reactivating them.

Config:

Gnome 3.38.5 with Wayland on Debian 11.

Note that Firefox-ESR, Firefox Nightly and Vscode was affected.

Details:

Another user had the same problem, so I'm reproducing his description:
"My mouse pointer does not change shape depending on what's under it on the screen.
For example, when I load a new page in Firefox and the pointer is in the address bar, it changes to a text cursor, i.e., a vertical bar. Then I can move it all over the window, and it does not change when the mouse is passing over links, buttons, etc. Other times it can change to a hand or an arrow and then again it does not react to its context"

Source: https://askubuntu.com/questions/1168157/mouse-pointer-does-not-adjust-to-context-on-screen

Hi, I'm affected by this bug too, it appears when using
MOZ_ENABLE_WAYLAND=1 in /etc/environment (used to prevent this bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1774531)
Regards

Hi, I'm also affected. Firefox 110.0 installed via snap on Ubuntu 22.04.2.

I have two observations:

  1. If I hover over a link (should be hand pointer) or some text (should be cursor) and an incorrect cursor is used, then I can actually fix it (temporarily for the hovered element as long as I'm over it) by moving the scroll wheel up or down or clicking left or right (e.g. if the wrong pointer is shown when hovering some text I can just click it and the pointer takes on its cursor shape). Any mouse button except the special ones (dpi change or freewheel) will do, but mouse motion won't.

  2. This is a new pc and till yesterday I was using the Intel iGPU and today switched over to my AMD GPU (both wayland). Only now did I notice the bug, so it may be related to the driver change. I'm not sure though. (And this would be rather a strange bug, but AFAIK the cursor may actually be drawn by hardware and not software, so I wouldn't exclude that possibility entirely.)

Strange, now it seems to be working. So either it's a bit "random" or it has been fixed by an update: The firefox snap has been updated (110.0.1) in the meantime and I've switched to the latest Mesa (23.0) using the kisak-fresh PPA (Ubuntu).

This is still an issue on Manjaro with firefox 113. I can confirm that the first observation that Gilles has reported is what I am also experiencing right now.

It happens to me on Firefox 116.0.2 in Ubuntu 22.04.3.
The bug disappears if I "move tab to new window" on that specific window, but not on other tabs.

happens to me too on 116.0-2 (64-bit) from Debian repo.
after some few hours of usage (not sure how to reproduce exactly, but it's quite consistent).
The whole window gets stiff - in addition to cursor not changing, i cant rearrange tabs, window becomes not resizeable (it can be made bigger or smaller but content of the pages and tab bar is still the same). and it's only in the one firefox window that was used mostly. if window is closed and restored it starts to work as expected again.

You need to log in before you can comment on or make changes to this bug.