GNOME Bugzilla – Bug 729337
Default cursor size of 24 too small on high-dpi screens
Last modified: 2014-11-10 00:21:01 UTC
My current configuration is a Macbook retina model with intel haswell architecture. While running Gnome 3.12 on it, most of gnome is quite well high-dpi adapted except one annoying thing - the cursor size. In Dconf-editor (org-gnome-desktop-interface) the deafult size is 24 which is far to small, however when changing it to 64 it becomes just right. This affects gnome 3.10 as well. Kind regards!
(In reply to comment #0) > My current configuration is a Macbook retina model with intel haswell > architecture. > > While running Gnome 3.12 on it, most of gnome is quite well high-dpi adapted > except one annoying thing - the cursor size. > > In Dconf-editor (org-gnome-desktop-interface) the deafult size is 24 which is > far to small, however when changing it to 64 it becomes just right. 48 is the "right" value 64 is just too big (we scale everything up by the factor of 2 on hidpi). Actually gnome-settings-daemon *should* be taking care of that but apparently there is a bug somewhere.
(In reply to comment #1) > 48 is the "right" value 64 is just too big (we scale everything up by the > factor of 2 on hidpi). > > Actually gnome-settings-daemon *should* be taking care of that but apparently > there is a bug somewhere. The bug is that mutter reads the GSettings key for the cursor size instead of the value of the XSettings that gnome-settings-daemon sets. Look for cursor-size in src/core/prefs.c. Maybe that needs to be done in clutter, I'm not sure. But this is correctly exported in gsd's XSettings plugin.
Created attachment 281845 [details] [review] Revert "prefs: Scale the root window cursor by the scale factor" This reverts commit 4fe66ce0a950134da20089319d68ba679be13d35. This is wrong ... we should not scale the cursor size but read the cursor xsettings that gets exported by gsd. Also this won't update on resolution changes.
Created attachment 281846 [details] [review] prefs: Update cursor size based on xsettings We shouldn't scale the cursor size in mutter we g-s-d exports the correct size on hidpi so use gtk-cursor-theme-size. This way we also catch changes on resolution updates.
For some reason when running master on jhbuild my cursor is stuck at 24 no matter what even though XcursorSetDefaultSize gets called with the correct value. Even without all of the involved patches. (i.e without Jasper's patch and with the size set to 48 in prefs too).
(In reply to comment #5) > For some reason when running master on jhbuild my cursor is stuck at 24 no > matter what even though XcursorSetDefaultSize gets called with the correct > value. > > Even without all of the involved patches. (i.e without Jasper's patch and with > the size set to 48 in prefs too). Which means this is only "printf tested" but my cursor size does not change.
(In reply to comment #6) > (In reply to comment #5) > > For some reason when running master on jhbuild my cursor is stuck at 24 no > > matter what even though XcursorSetDefaultSize gets called with the correct > > value. > > > > Even without all of the involved patches. (i.e without Jasper's patch and with > > the size set to 48 in prefs too). > > Which means this is only "printf tested" but my cursor size does not change. OK nevermind that was because of a broken icon theme in my jhbuild environment. With that fixed (rebuilt) the patches work as expected.
Cosimo should be able to test this as well, CC:ed.
Attachment 281845 [details] pushed as ab40dfd - Revert "prefs: Scale the root window cursor by the scale factor" Attachment 281846 [details] pushed as 493c0f7 - prefs: Update cursor size based on xsettings Just pushed it. While Jasper does not like using xsettings in mutter, we already do that for getting the scale factor. This has been broken for way to long and we are near code freeze.
*** Bug 705409 has been marked as a duplicate of this bug. ***