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

Hyprland cursor not tilted anymore on tilted monitor #8993

Open
3 of 6 tasks
itouchdennis opened this issue Jan 8, 2025 · 17 comments
Open
3 of 6 tasks

Hyprland cursor not tilted anymore on tilted monitor #8993

itouchdennis opened this issue Jan 8, 2025 · 17 comments
Labels
bug Something isn't working
Milestone

Comments

@itouchdennis
Copy link

itouchdennis commented Jan 8, 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.46.0 built from branch main at commit 983bc067dac2e737bc724721c79d87cd81f27501  (opengl: fix crash on null fb stencil op).
Date: Wed Jan 8 12:34:43 2025
Tag: v0.46.0-95-g983bc067, commits: 5650
built against:
 aquamarine 0.6.0
 hyprlang 0.6.0
 hyprutils 0.3.3
 hyprcursor 0.1.11
 hyprgraphics 0.1.1


no flags were set


System Information:
System name: Linux
Node name: datesli-ms7d25
Release: 6.12.8-zen1-1-zen
Version: #1 ZEN SMP PREEMPT_DYNAMIC Thu, 02 Jan 2025 22:52:21 +0000


GPU information: 
00:02.0 Display controller [0380]: Intel Corporation AlderLake-S GT1 [8086:4680] (rev 0c)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA104 [GeForce RTX 3070 Ti] [10de:2482] (rev a1) (prog-if 00 [VGA controller])
NVRM version: NVIDIA UNIX Open Kernel Module for x86_64  565.77  Release Build  (archlinux-builder@datesli-ms7d25)  


os-release: NAME="EndeavourOS"
PRETTY_NAME="EndeavourOS"
ID="endeavouros"
ID_LIKE="arch"
BUILD_ID="2023.11.17"
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://endeavouros.com"
DOCUMENTATION_URL="https://discovery.endeavouros.com"
SUPPORT_URL="https://forum.endeavouros.com"
BUG_REPORT_URL="https://forum.endeavouros.com/c/general-system/endeavouros-installation"
PRIVACY_POLICY_URL="https://endeavouros.com/privacy-policy-2"
LOGO="endeavouros"


plugins:

Description

I use a 2. display tilted on top of my main display, usually its working with this settings:

hyprctl keyword monitor HDMI-A-1, 1920x1080@144,830x-1080, 1,transform,2

I didn't updated the system since last Wednesday, came back updated all to the newest version and now the cursor is not tilted anymore and also not really working on the flipped monitor.
The mouse won't click and has also an inaccessible area on the "top" of the screen.

I have a Nvidia Card, tried to enable / disable HW cursors, but this seems not to fix the issue.

How to reproduce

  1. Start Hyprland
  2. Flip screen
  3. Setup a display with transform, 2 (hyprctl keyword monitor HDMI-A-1, 1920x1080@144,830x-1080, 1,transform,2)
  4. Move mouse to the 2. display and see the wrong mouse tilt.

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

Screenshot

photo_2025-01-08_16-11-21

###########
Systeminfo -c

https://pastebin.pl/view/1542bcd6

@itouchdennis itouchdennis added the bug Something isn't working label Jan 8, 2025
@jacobrreed
Copy link

  • seeing same issue, on my vertical monitor my hyprcursor is rotated 90 degrees
  • also my ENV to set hyprcursor seems to not work on start, the cursor looks like a glitchy block but if I set it via hyprcursor setcursor with the same variables it works fine after
  • possibly related, on my vertical monitor I can't move the cursor past the left 20% of the monitor, like an invisible wall

@itouchdennis
Copy link
Author

I switched back to the version I used before via git checkout f3c49c1

And rebuild it from source, here everything is working. Might also work in newer versions, but the newest once is definitely kinda weird, at least with my setup + tilted screen.

@UjinT34
Copy link
Contributor

UjinT34 commented Jan 8, 2025

cursor:no_hardware_cursors = 1 it default now to use cursor:use_cpu_buffer on nvidia and that doesn't support rotations.

https://drmdb.emersion.fr/properties/4008636142/rotation might not be supported for the cursor plane so the texture copy itself should be rotated.

@jacobrreed
Copy link

ya setting

cursor {
  no_hardware_cursors = true
}

fixes the problem introduced in b320bc2dc6e308360936ce4396010359b74558bf

@vaxerski
Copy link
Member

vaxerski commented Jan 8, 2025

hm, we should just fix the rendering, probably. CPU rotating wohoo that's gonna be fast...

@vaxerski vaxerski added this to the 0.47.0 milestone Jan 8, 2025
@vaxerski
Copy link
Member

vaxerski commented Jan 8, 2025

is it in the correct place though? Can't test, obviously, I dont use green gpus

@vaxerski
Copy link
Member

vaxerski commented Jan 8, 2025

patch.txt
try ths

@jacobrreed
Copy link

is it in the correct place though? Can't test, obviously, I dont use green gpus

It's in the correct place, but on rotated monitors its not rotated. i.e a monitor rotated 90 degrees, the cursor is also rotated 90degrees so its sideways
Maybe unrelated but with the above config works, if no_hardware_cursors=false or is not set, hyprcursor graphic is very glitchy looking and pixelated

@jacobrreed
Copy link

patch.txt try ths

testing now, uno momento

@jacobrreed
Copy link

jacobrreed commented Jan 8, 2025

@vaxerski Ya this fixes hyprcursor rotation for me

Probably a separate issue but not sure why but my cursor is glitchy looking and im using

# Hyprcursor
env = HYPRCURSOR_THEME,Dracula-cursors
env = HYPRCURSOR_SIZE,24

in my config, on launch its messed up
but if I run hyprctl setcursor Dracula-cursors 24 its not glitchy anymore

Even with the above patch given though, I still cant move my mouse to the first like 20-30% of the rotated monitor, like an invisible wall is present

image

again, setting no_hardware_cursor = true fixes that issue

@UjinT34
Copy link
Contributor

UjinT34 commented Jan 8, 2025

Nvidia's buffer is 256x256 and the cursor is in the wrong corner of that buffer.

@vaxerski
Copy link
Member

vaxerski commented Jan 8, 2025

yep thats what I thought. That's why I asked if it's in the right place LOL

@jacobrreed
Copy link

Ohhh, I guess that maybe explains it lol

@itouchdennis
Copy link
Author

Can confirm, no_hardware_cursor = true mitigates the issue, the patch allows the cursor to be aligned correctly when no_hardware_cursor = false but as mentioned like 20% of the screen aren't reachable anymore.

@vaxerski
Copy link
Member

vaxerski commented Jan 8, 2025

patch.txt
how about this?

@itouchdennis
Copy link
Author

Not sure if its my setup, but after the newest patch on the newest commit I'll get Error 2 on make all && sudo make install

https://pastebin.com/bFJHBDrz

@vaxerski
Copy link
Member

vaxerski commented Jan 9, 2025

you truncated the output, please post the entire thing

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

No branches or pull requests

4 participants