cursor does not track window when dragging between monitors with different scaling factors
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mutter |
Fix Released
|
Unknown
|
|||
mutter (Ubuntu) |
Fix Released
|
Low
|
Unassigned | ||
Lunar |
Fix Released
|
Low
|
Unassigned |
Bug Description
Impact
-------
I have two screens. My laptop is using 200% scaling and the other external screen is using 100% scaling. When I drag windows between the monitors the cursor moves to unexpected locations when it moves onto another screen with a different scaling factor.
I would expect the cursor to stay in the relative location when I started dragging the window. Hopefully this is clear the the attached screencast.
Test Case
---------
1. Install the update
2. Log out
3. Log back in
4. If not already done, open the Settings app. Click one of the displays in the list and set it to 200%. Leave your other display at 100%.
5. Drag a window from one screen to the other.
The cursor and window should smoothly transition from one displays to the other without the cursor jumping dramatically to a different location when it crosses between the displays.
Other Info
----------
Setting different scaling for different displays requires Wayland. This will not work with the Ubuntu on Xorg session.
What Could Go Wrong
-------------------
This fix is included in the upstream mutter 44.1 release. See LP: #2020225 for more details.
ProblemType: Bug
DistroRelease: Ubuntu 23.04
Package: gnome-shell 44.0-2ubuntu3
ProcVersionSign
Uname: Linux 6.2.0-19-generic x86_64
NonfreeKernelMo
ApportVersion: 2.26.0-0ubuntu2
Architecture: amd64
CasperMD5CheckR
CurrentDesktop: ubuntu:GNOME
Date: Tue Apr 11 11:04:51 2023
DisplayManager: gdm3
InstallationDate: Installed on 2023-04-05 (5 days ago)
InstallationMedia: Ubuntu 23.04 "Lunar Lobster" - Daily amd64 (20230404)
RelatedPackageV
SourcePackage: gnome-shell
UpgradeStatus: No upgrade log present (probably fresh install)
description: | updated |
tags: | added: rls-ll-incoming |
Changed in mutter: | |
status: | Unknown → New |
Changed in mutter: | |
status: | New → Fix Released |
description: | updated |
Changed in mutter (Ubuntu Lunar): | |
importance: | Undecided → Low |
status: | New → In Progress |
I have looked into this bug before. From what I recall there was a fundamental conflict between:
(a) Keeping the absolute cursor position on both monitors' boundaries when crossing; and
(b) Keeping the relative cursor position on the titlebar.
So mutter chose (a) over (b).
More recently however, upstream claim to have solved (changed) it in mutter 44.1: /gitlab. gnome.org/ GNOME/mutter/ -/merge_ requests/ 2942
https:/