Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-105843

Broken cursor changing on Wayland with tablet input

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.8.1, 6.9.0 FF
    • 5.15.2, 6.3.0
    • None
    • Fedora 36 KDE 5.25.4 Wayland and Ubuntu 22.04 LTS Gnome 42 Wayland
    • Linux/Wayland
    • 3c49641f0 (dev), e3d44cc78 (6.8)

    Description

      When running Qt applications under Wayland, the QGuiApplication::setOverrideCursor and QGuiApplication::changeOverrideCursor have no effect when the input device is a tablet (e.g. a Wacom tablet). In fact, a Qt application running under Wayland is unable to change the default cursor altogether. For example, when hovering a the edge of a Window, Linux DEs display a "Resize" icon, but this doesn't happen when using a tablet with Wayland.

      I've tested this under two different environments: KDE Plasma 5.25.4 Fedora 36 and Gnome 42 on Ubuntu 22.04 LTS. On both DEs, when a tablet input device is used the cursor of the application is unchangeable (I've tested with a simple timer that periodically changes the application cursor using the APIs provided by QGuiApplication). GTK applications (e.g. Firefox) in the same environment were unaffected by this bug.

      It seems that all KDE applications running under Wayland (e.g. Dolphin) are affected by this bug (see https://bugs.kde.org/show_bug.cgi?id=426585).

      On X11, things behave as one would expect and cursor changing is no problem.

      After briefly debugging, I can see that when QWaylandInputDevice::Pointer::updateCursor() is called, the value of mEnterSerial is always zero when using a tablet.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              srutledg Shawn Rutledge
              daljit97 Daljit Singh
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes