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

Regression: Cursor jumps vertically when reducing y-active area size #9322

Closed
2 of 6 tasks
clamydo opened this issue Feb 4, 2025 · 3 comments · Fixed by #9325
Closed
2 of 6 tasks

Regression: Cursor jumps vertically when reducing y-active area size #9322

clamydo opened this issue Feb 4, 2025 · 3 comments · Fixed by #9325
Labels
bug Something isn't working

Comments

@clamydo
Copy link
Contributor

clamydo commented Feb 4, 2025

Already reported ? *

  • I have searched the existing open and closed issues.

Regression?

Definitely a regression - something broke after update (requires bisect)

System Info and Hyprland Version

System/Version info
Hyprland 0.47.1 built from branch v0.47.1-b at commit 75dff7205f6d2bd437abfb4196f700abee92581a  (version: bump to 0.47.1).
Date: 2025-01-29
Tag: v0.47.1, commits: 75dff7205f6d2bd437abfb4196f700abee92581a
built against:
 aquamarine 0.7.2
 hyprlang 0.6.0
 hyprutils 0.5.0
 hyprcursor 0.1.11
 hyprgraphics 0.1.1


no flags were set


System Information:
System name: Linux
Node name: behemoth
Release: 6.12.11
Version: #1-NixOS SMP PREEMPT_DYNAMIC Thu Jan 23 16:23:05 UTC 2025


GPU information:
00:02.0 Display controller [0380]: Intel Corporation Raptor Lake-S GT1 [UHD Graphics 770] [8086:a780] (rev 04)
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1002:67df] (rev e7) (prog-if 00 [VGA controller])


os-release: ANSI_COLOR="0;38;2;126;186;228"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="25.05beta746337.3a228057f5b6"
CPE_NAME="cpe:/o:nixos:nixos:25.05"
DEFAULT_HOSTNAME=nixos
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
ID_LIKE=""
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 25.05 (Warbler)"
SUPPORT_URL="https://nixos.org/community.html"
VARIANT=""
VARIANT_ID=""
VENDOR_NAME=NixOS
VENDOR_URL="https://nixos.org/"
VERSION="25.05 (Warbler)"
VERSION_CODENAME=warbler
VERSION_ID="25.05"


plugins:


Description

tl;dr ae4e38d introduced a regression that makes the cursor jump on pen down event (see video).

When using a Wacom Intuos 3 while reducing the y-component of the active area size of the tablet (to match the aspect ratio of the monitor) the cursor jumps briefly when the pen connects with the tablet (see attached video).

This also means, drawing becomes impossible because everytime I set my pen down a vertical line is drawn.

Here is the relevant config:

device {
  name = wacom-intuos3-9x12-pen
  output = desc:Samsung Electric Company U28E590 HTPH401453
  active_area_size = 304.8 171.45
  active_area_position = 0.0 57.15
}

This also does happen when this section in the config is absent! Only when setting active_area_size to the exact values reported by hyprctl devices the cursor does not jump.

Furthermore, the jump distance grows larger the further down the pen on the tablet moves, i.e. the closer the cursor gets to the bottom of the screen (so there must be a coordinate dependent bug in the code)!

I have git bisected the issue to the offending commit ae4e38d tablet: send motions on tip events (#9132)

How to reproduce

  1. On a Hyprland version including or after ae4e38d press down the pen onto the tablet
  2. Observe the cursor jump

Attach not paste

  • I understand that all text files must be attached, and not pasted directly. If not respected, this issue will likely get closed as spam

Checklist of files to include below

  • Hyprland config - hyprctl systeminfo -c (always include)
  • Crash report (always include in case of crash)
  • Video (always include in case of a visual bug)
  • Logs (might contain useful info such as errors)

Additional info & File uploads

hyprland.log

hyprland.conf.txt

mouse-jump.mp4

CC @MikeWalrus

@clamydo clamydo added the bug Something isn't working label Feb 4, 2025
@m2neral
Copy link

m2neral commented Feb 4, 2025

Just to make sure: You don't have both the wacom module and another driver running at the same time right? My issue on #8751 was supposed to be fixed with #9132 but there's no change in tablet behavior for me. The video you attached is the same behavior I have when both the wacom module and opentabletdriver are running at the same time.

@clamydo
Copy link
Contributor Author

clamydo commented Feb 4, 2025

Never heard of OpenTabletDriver before. Is this just an userland program? I have not installed the NixOS package in any case. I have the wacom kernel module loaded.

@m2neral Could you by any chance check my fix if that works for you? #9325

@m2neral
Copy link

m2neral commented Feb 4, 2025

@clamydo I just tried it. Sadly didn't fix my issue.

vaxerski pushed a commit that referenced this issue Feb 9, 2025
…9325)

* fixes #9322, take `active_area_size` into account when sending tip event

* check if `relative_input` is set

As suggested by @y47s5s68tq870r7tc1xpp755pabopg

* refactoring active area in own function to keep it DRY

* coding style

* making transformation static

---------

Co-authored-by: clamydo <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants