Mouse cursor tiny when hovering unity elements in high DPI mode
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | Compiz |
High
|
Marco Trevisan (Treviño) | ||
| | Unity |
Fix Released
|
High
|
Marco Trevisan (Treviño) | |
| | 7.3 |
In Progress
|
Medium
|
Marco Trevisan (Treviño) | |
| | compiz (Ubuntu) |
High
|
Marco Trevisan (Treviño) | ||
| | Wily |
Undecided
|
Unassigned | ||
| | unity (Ubuntu) |
High
|
Marco Trevisan (Treviño) | ||
| | Wily |
Undecided
|
Unassigned | ||
| | unity-settings-daemon (Ubuntu) |
High
|
Sebastien Bacher | ||
| | Wily |
Undecided
|
Unassigned | ||
Bug Description
[Impact]
On a high DPI screen (220 DPI) the mouse cursor is really tiny when hovering unity elements. There are various keys in dconf to change the cursor's scale factor or size. I've managed to change it in a way that it looks normal when inside application windows, but its still tiny when on unity elements.
I think this should be set automatically by the scale factor setting in system settings.
(Using unity 7.3.1+14.
[Test Case]
* Log in
* Launch Firefox
* Move the mouse over the panel or the launcher,
then back over the Firefox window.
* Cursor should always be of the same size
[Regression Potential]
* Mouse cursors might appear wrong for some actions
Related branches
- Marco Trevisan (Treviño): Approve on 2015-10-08
- Iain Lane: Approve on 2015-10-07
-
Diff: 91 lines (+7/-19)3 files modifiedplugins/xsettings/README.xsettings (+1/-1)
plugins/xsettings/gsd-xsettings-gtk.c (+1/-1)
plugins/xsettings/gsd-xsettings-manager.c (+5/-17)
- Andrea Azzarone: Approve on 2015-10-23
- PS Jenkins bot: Approve (continuous-integration) on 2015-10-22
-
Diff: 746 lines (+109/-133)24 files modifiedCMakeLists.txt (+1/-0)
include/core/screen.h (+1/-0)
plugins/expo/src/expo.cpp (+1/-8)
plugins/expo/src/expo.h (+0/-3)
plugins/freewins/src/action.cpp (+1/-5)
plugins/freewins/src/events.cpp (+2/-4)
plugins/freewins/src/freewins.h (+0/-2)
plugins/move/src/move.cpp (+4/-6)
plugins/move/src/move.h (+0/-2)
plugins/resize/src/logic/include/resize-logic.h (+1/-11)
plugins/resize/src/logic/include/screen-interface.h (+1/-0)
plugins/resize/src/logic/src/resize-logic.cpp (+23/-12)
plugins/resize/src/logic/tests/mock-screen.h (+1/-0)
plugins/resize/src/resize.cpp (+0/-37)
plugins/resize/src/screen-impl.h (+5/-0)
plugins/shelf/src/shelf.cpp (+1/-7)
plugins/shelf/src/shelf.h (+0/-1)
plugins/shift/src/shift.cpp (+0/-3)
plugins/shift/src/shift.h (+0/-2)
plugins/widget/src/widget.cpp (+2/-6)
plugins/widget/src/widget.h (+0/-1)
src/privatescreen.h (+6/-3)
src/privatescreen/tests/test-privatescreen.cpp (+1/-0)
src/screen.cpp (+58/-20)
- Andrea Azzarone: Approve on 2015-12-02
-
Diff: 430 lines (+58/-58)20 files modifieddash/previews/CMakeLists.txt (+6/-6)
debian/control (+1/-1)
decorations/DecorationsDataPool.cpp (+1/-16)
decorations/DecorationsDataPool.h (+1/-3)
panel/PanelTitlebarGrabAreaView.cpp (+2/-8)
panel/PanelTitlebarGrabAreaView.h (+0/-1)
plugins/unityshell/src/UnityGestureBroker.cpp (+0/-14)
plugins/unityshell/src/UnityGestureBroker.h (+1/-1)
plugins/unityshell/src/WindowGestureTarget.cpp (+2/-3)
plugins/unityshell/src/WindowGestureTarget.h (+0/-2)
tests/MockWindowManager.h (+1/-0)
tests/test-gestures/WindowGestureTargetMock.h (+0/-1)
tests/test-gestures/compiz_mock/core/screen.h (+1/-0)
tests/test-gestures/test_gestures_main.cpp (+0/-1)
unity-shared/IMTextEntry.cpp (+26/-1)
unity-shared/PluginAdapter.cpp (+5/-0)
unity-shared/PluginAdapter.h (+2/-0)
unity-shared/StandaloneWindowManager.cpp (+5/-0)
unity-shared/StandaloneWindowManager.h (+2/-0)
unity-shared/WindowManager.h (+2/-0)
- PS Jenkins bot: Needs Fixing (continuous-integration) on 2015-10-22
- Andrea Azzarone: Approve on 2015-10-21
-
Diff: 383 lines (+52/-52)19 files modifieddebian/control (+1/-1)
decorations/DecorationsDataPool.cpp (+1/-16)
decorations/DecorationsDataPool.h (+1/-3)
panel/PanelTitlebarGrabAreaView.cpp (+2/-8)
panel/PanelTitlebarGrabAreaView.h (+0/-1)
plugins/unityshell/src/UnityGestureBroker.cpp (+0/-14)
plugins/unityshell/src/UnityGestureBroker.h (+1/-1)
plugins/unityshell/src/WindowGestureTarget.cpp (+2/-3)
plugins/unityshell/src/WindowGestureTarget.h (+0/-2)
tests/MockWindowManager.h (+1/-0)
tests/test-gestures/WindowGestureTargetMock.h (+0/-1)
tests/test-gestures/compiz_mock/core/screen.h (+1/-0)
tests/test-gestures/test_gestures_main.cpp (+0/-1)
unity-shared/IMTextEntry.cpp (+26/-1)
unity-shared/PluginAdapter.cpp (+5/-0)
unity-shared/PluginAdapter.h (+2/-0)
unity-shared/StandaloneWindowManager.cpp (+5/-0)
unity-shared/StandaloneWindowManager.h (+2/-0)
unity-shared/WindowManager.h (+2/-0)
- Andrea Azzarone: Approve on 2015-12-02
-
Diff: 966 lines (+209/-134)26 files modifiedCMakeLists.txt (+1/-0)
include/core/abiversion.h (+1/-1)
include/core/screen.h (+6/-1)
plugins/expo/src/expo.cpp (+1/-8)
plugins/expo/src/expo.h (+0/-3)
plugins/freewins/src/action.cpp (+1/-5)
plugins/freewins/src/events.cpp (+2/-4)
plugins/freewins/src/freewins.h (+0/-2)
plugins/move/src/move.cpp (+1/-5)
plugins/move/src/move.h (+0/-2)
plugins/resize/src/logic/include/resize-logic.h (+1/-11)
plugins/resize/src/logic/include/screen-interface.h (+1/-0)
plugins/resize/src/logic/src/resize-logic.cpp (+23/-12)
plugins/resize/src/logic/tests/mock-screen.h (+1/-0)
plugins/resize/src/resize.cpp (+0/-37)
plugins/resize/src/screen-impl.h (+5/-0)
plugins/shelf/src/shelf.cpp (+1/-7)
plugins/shelf/src/shelf.h (+0/-1)
plugins/shift/src/shift.cpp (+0/-3)
plugins/shift/src/shift.h (+0/-2)
plugins/widget/src/widget.cpp (+2/-6)
plugins/widget/src/widget.h (+0/-1)
src/event.cpp (+5/-0)
src/privatescreen.h (+10/-3)
src/privatescreen/tests/test-privatescreen.cpp (+2/-0)
src/screen.cpp (+145/-20)
| description: | updated |
| Michael Zanetti (mzanetti) wrote : | #2 |
| Michael Zanetti (mzanetti) wrote : | #3 |
| Launchpad Janitor (janitor) wrote : | #4 |
Status changed to 'Confirmed' because the bug affects multiple users.
| Changed in unity (Ubuntu): | |
| status: | New → Confirmed |
| Changed in unity: | |
| status: | New → Confirmed |
| Lukáš Tinkl (lukas-kde) wrote : | #5 |
This needs to be actually set before the session starts, so adding
Xcursor*size: 48
to /etc/X11/
fixes it for me (48 here is the base size, 24, doubled).
Alternatively, this could be solved by exporting:
export XCURSOR_SIZE=48
somewhere in unity startup code.
| tags: | added: highdpi |
| Berte (berte) wrote : | #6 |
#5 worked for me on hidpi (3200x1800), ubuntu 15.04
| Alexander Burkov (a-p-burkov) wrote : | #7 |
#5 worked for me too (2560x1600), ubuntu 15.04. Thanks, Lukas!
| Christian Dreher (cdreher3011) wrote : | #8 |
I had the same problem on Ubuntu 15.04, but #5 fixed the problem with adding Xcursor*size:48 to the x11-common file. Thank you! Anyway, it would be great if this would be fixed for the next release.
| Changed in unity (Ubuntu): | |
| importance: | Undecided → Medium |
| importance: | Medium → High |
| Marco Trevisan (Treviño) (3v1n0) wrote : | #10 |
It seems that reloading unity fixes the thing.
We need to figure a way to get compiz to use this setting when ran.
| tags: |
added: hidpi removed: highdpi |
| tags: | added: rls-w-incoming |
| Changed in unity: | |
| assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
| importance: | Undecided → High |
| milestone: | none → 7.3.3 |
| Changed in unity: | |
| status: | Confirmed → Triaged |
| Changed in unity (Ubuntu): | |
| status: | Confirmed → Triaged |
| Sebastien Bacher (seb128) wrote : | #11 |
https:/
| Changed in unity: | |
| assignee: | Marco Trevisan (Treviño) (3v1n0) → nobody |
| Changed in unity-settings-daemon (Ubuntu): | |
| status: | New → Triaged |
| status: | Triaged → In Progress |
| importance: | Undecided → High |
| assignee: | nobody → Sebastien Bacher (seb128) |
| Changed in unity: | |
| assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
| Changed in unity (Ubuntu): | |
| assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
| Changed in unity: | |
| status: | Triaged → In Progress |
| Changed in unity (Ubuntu): | |
| status: | Triaged → In Progress |
| Changed in compiz: | |
| status: | New → In Progress |
| importance: | Undecided → High |
| assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
| Changed in compiz (Ubuntu): | |
| status: | New → In Progress |
| assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
| importance: | Undecided → High |
| Changed in unity: | |
| milestone: | 7.3.3 → 7.4.0 |
| Changed in compiz: | |
| milestone: | none → 0.9.12.3 |
| tags: |
added: rls-x-incoming removed: rls-w-incoming |
| Launchpad Janitor (janitor) wrote : | #12 |
This bug was fixed in the package compiz - 1:0.9.12.
---------------
compiz (1:0.9.
* Move: remember the type of movement and use the proper grabbing for
it (LP: #1487637)
* Resize: remember the type of movement and use the proper grabbing
for it (LP: #1487637)
* Screen: add cursorChangeNotify function and call it on
XA_
* Screen: add pushKeyboardGrab and pushPointerGrab methods to add
different kinds of grabs
* Screen: monitor root RESOURCE_MANAGER and update cursors when Size
or Theme changes (LP: #1359211)
-- Marco Trevisan (Treviño) <mail@3v1n0.net> Mon, 26 Oct 2015 17:15:54 +0000
| Changed in compiz (Ubuntu): | |
| status: | In Progress → Fix Released |
| Launchpad Janitor (janitor) wrote : | #13 |
This bug was fixed in the package unity - 7.4.0+16.
---------------
unity (7.4.0+
[ Marco Trevisan (Treviño) ]
* Bumping version to 7.4.0
* Fix building in xenial
[ Didier Roche ]
* Remove unity2d transitional packages. We are post trusty LTS, they
are not needed anymore
[ Marco Trevisan (Treviño) ]
* ApplicationLaun
file, add QL item to add to dash
* PanelService: unset the idle ID before removal on callback (LP:
#1501289)
* Unity: use compiz cursorCache to get properly updated cursors (LP:
#1359211)
* UnityScreen: add SpreadAppWindows option and trigger it on
Super+
[ Stephen M. Webb ]
* changed the wording of the help message and warning message for the
--reset option (LP: #1486498)
unity (7.3.3-0ubuntu1) UNRELEASED; urgency=medium
* Releasing Unity 7.3.3
-- Marco Trevisan (Treviño) <mail@3v1n0.net> Mon, 02 Nov 2015 13:29:58 +0000
| Changed in unity (Ubuntu): | |
| status: | In Progress → Fix Released |
| Changed in unity: | |
| status: | In Progress → Fix Committed |
| Changed in compiz: | |
| status: | In Progress → Fix Committed |
| Changed in unity-settings-daemon (Ubuntu): | |
| status: | In Progress → Fix Released |
| ercoppa (ercoppa) wrote : | #14 |
Workaround presented in #5 does not work in Ubuntu 15.10. I hope the fix lands soon in repository: it is very hard to use Unity due to this bug.
| Ari Nordström (ari-nordstrom) wrote : | #15 |
@ercoppa Once you've logged in, hit Alt+F2 and restart Unity by entering 'unity'. It fixes the pointer size until your next reboot.
| ercoppa (ercoppa) wrote : | #16 |
@ari-nordstrom You are right, this works. Thank you very much :)
| Alessio Treglia (quadrispro) wrote : | #17 |
Any chance to see these fixes being backported to wily? This bug is definitely annoying.
| Marco Trevisan (Treviño) (3v1n0) wrote : | #18 |
Backport to wily is being prepared here:
- https:/
That will go through the SRU process, so it will take a while to reach everybody. If you want to test it in the meanwhile, you can just use that PPA (to be removed once installed, as it might then be reused by other projects).
| description: | updated |
| description: | updated |
| tags: | added: unity-backlog |
| Sasa Stamenkovic (umpirsky) wrote : | #19 |
Just installed Ubuntu 15.10 on Asus Zenbook, and I am facing exactly same issue.
Adding Xcursor*size: 48 to /etc/X11/
Is there any other workaround?
I see adding export XCURSOR_SIZE=48 somewhere in unity startup code is alternative approach, can someone please hint me where can I add this?
| Marco Trevisan (Treviño) (3v1n0) wrote : | #20 |
Sasa, in 15.10 you can use the provided ppa to install unity (to be purged afterwards) or wait for the SRU.
Otherwise, you can just export that in /usr/share/
Doing exactly the same that COMPIZ_
Hello Michael, or anyone else affected,
Accepted compiz into wily-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-
Further information regarding the verification process can be found at https:/
| Changed in compiz (Ubuntu Wily): | |
| status: | New → Fix Committed |
| tags: | added: verification-needed |
| Brian Murray (brian-murray) wrote : | #22 |
Hello Michael, or anyone else affected,
Accepted unity into wily-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-
Further information regarding the verification process can be found at https:/
| Changed in unity (Ubuntu Wily): | |
| status: | New → Fix Committed |
| Launchpad Janitor (janitor) wrote : | #23 |
Status changed to 'Confirmed' because the bug affects multiple users.
| Changed in unity-settings-daemon (Ubuntu Wily): | |
| status: | New → Confirmed |
| liamdawe (liamdawe) wrote : | #24 |
The proposed package fixes it.
Hope I have this right: 7.3.3+15.
| tags: |
added: verification-done removed: verification-needed |
| liamdawe (liamdawe) wrote : | #25 |
Actually, this isn't exactly fixed.
While it's true the cursor no longer turns tiny, it's stuck onto one single cursor. When browing the web, you no longer get different cursors while hovering over things like links and such. Basically, you now only have one single cursor.
Changing tag back.
| tags: |
added: verification-needed removed: verification-done |
| liamdawe (liamdawe) wrote : | #26 |
Yeah, it's really not great. As it also forces the big system cursor of the top of cursors in full screen games, I'm going to revert now as it's too buggy.
| Marco Trevisan (Treviño) (3v1n0) wrote : | #27 |
liamdawe, can you please double check this?
It's weird since those cursors are defined by apps, so there should be no overriding by unity.
Can you give me an example where this fails?
As nobody trying this version in PPA complained about this, nor people using xenial where this fix is for some time now.
| liamdawe (liamdawe) wrote : | #28 |
For some reason I wasn't emailed your reply Marco.
I've re-checked, and something must have gone awry with the last attempt as I can confirm it working fine now, thanks.
| tags: |
added: verification-done removed: verification-needed |
| Launchpad Janitor (janitor) wrote : | #29 |
This bug was fixed in the package compiz - 1:0.9.12.
---------------
compiz (1:0.9.
* Screen: monitor root RESOURCE_MANAGER and update cursors when Size
or Theme changes (LP: #1359211)
-- Marco Trevisan (Treviño) <mail@3v1n0.net> Wed, 02 Dec 2015 16:47:55 +0000
| Changed in compiz (Ubuntu Wily): | |
| status: | Fix Committed → Fix Released |
The verification of the Stable Release Update for compiz has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.
| Launchpad Janitor (janitor) wrote : | #31 |
This bug was fixed in the package unity - 7.3.3+15.
---------------
unity (7.3.3+
* Releasing Unity 7.3.3
* Unity: use compiz cursorCache to get properly updated cursors (LP:
#1359211)
-- Marco Trevisan (Treviño) <mail@3v1n0.net> Thu, 03 Dec 2015 10:39:52 +0000
| Changed in unity (Ubuntu Wily): | |
| status: | Fix Committed → Fix Released |
| Sasa Stamenkovic (umpirsky) wrote : | #32 |
@Treviño I only now saw your message.
I still have this issue, and I am restartgin unity on each boot. But that have other bad consequences, like Alt+F4 stops working.
Can you point me at right ppa? What should I run in terminal in order to get this fix?
Thanks.
| Marco Trevisan (Treviño) (3v1n0) wrote : | #33 |
@Sasa,
No ppa is needed anymore: the fix is already in Xenial and Wily.
| Sasa Stamenkovic (umpirsky) wrote : | #34 |
@Treviño I am running Ubuntu 15.10 and I still have this issue.
| Sasa Stamenkovic (umpirsky) wrote : | #35 |
@Treviño Seems like it is fixed with todays update. Thanks.
| Luke Horwell (lah7) wrote : | #36 |
This update has introduced a regression for the Ubuntu MATE flavour on Compiz desktops whereby the cursor is now invisible, a black X or only appearing in some programs.
LP: #1544814
| Changed in unity: | |
| status: | Fix Committed → Fix Released |


Hello,
can you please add screen of the issue?
Thanks