Note to any users affected by this bug: a workaround is to manually populate the /com/ubuntu/user-interface/scale-factor key. For example, on my MacBook Pro, I set it using dconf-editor to:
{'eDP1': 16, 'DP1': 8, 'DP2': 8, 'HDMI1': 8, 'HDMI2': 8} It is a fairly safe assumption that the internal display (eDP1) will always be the same DPI, and that I will only use non-Retina external displays. Most users should be in the same situation, unless they're lucky enough to use secondary Retina displays sometimes, but not lucky enough to use them always. -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to chromium-browser in Ubuntu. https://bugs.launchpad.net/bugs/1606959 Title: DPI setting is not correctly calculated on Ubuntu GNOME Status in chromium-browser package in Ubuntu: New Bug description: On Ubuntu GNOME 16.04 on my Retina MacBook Pro, chromium-browser, unlike any other app I've found, gets the wrong DPI, and starts up unscaled. On investigation, this appears to be because of a bug in desktop_screen_x11.cc (I checked this only in the sources for the currently shipped version of Chromium, against which I'm reporting this bug). The hardware is *correctly* queried via the GTK2 back-end in gtk2_ui.cc, and device_scale_factor is set to 2 in line 328 of desktop_screen_x11.cc. However, this is then unconditionally overridden lower down. In line 356, density_indicator is set to 8 (this corresponds to a scale factor of 1). The next few lines, guarded by #ifdef USE_GLIB, then try to read a value from the gsettings key /com/ubuntu/user-interface/scale- factor. Aside: Under Unity, I understand that this setting is populated with information about the connected displays (I did try to find where this happens, but I can only find references to the setting in unity- control-center, while presumably it must also be set whenever a new display is plugged or unplugged); under GNOME it seems not to be. The problem is that when the gsettings key /com/ubuntu/user-interface /scale-factor is empty, or absent, the default value of density_indicator is still used, overriding the hardware-provided value. The only circumstances in which the hardware-provided value will be used are when the key for the relevant display is explicitly set to 0. This means that scaling won't work on a GNOME system, which is ironic considering that the correct information has already been obtained from Gtk! As far as I can see, the fix is to change the setting of 8 in line 356 to 0, so that if no gsettings value can be obtained, then the hardware-supplied value, which has already been calculated, is used. ProblemType: Bug DistroRelease: Ubuntu 16.04 Package: chromium-browser 51.0.2704.79-0ubuntu0.16.04.1.1242 ProcVersionSignature: Ubuntu 4.4.0-31.50-generic 4.4.13 Uname: Linux 4.4.0-31-generic x86_64 NonfreeKernelModules: wl ApportVersion: 2.20.1-0ubuntu2.1 Architecture: amd64 CurrentDesktop: GNOME DRM.card0-DP-1: edid-base64: dpms: Off modes: enabled: disabled status: disconnected DRM.card0-DP-2: edid-base64: dpms: Off modes: enabled: disabled status: disconnected DRM.card0-HDMI-A-1: edid-base64: dpms: Off modes: enabled: disabled status: disconnected DRM.card0-HDMI-A-2: edid-base64: dpms: Off modes: enabled: disabled status: disconnected DRM.card0-eDP-1: edid-base64: AP///////wAGEBigAAAAADAWAQSlHRJ4Am+xp1VMniUMUFQAAAABAQEBAQEBAQEBAQEBAQEB4mgAoKBALmAwIDYAHrMQAAAaAAAA/ABDb2xvciBMQ0QKICAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAGM= dpms: On modes: 2560x1600 enabled: enabled status: connected Date: Wed Jul 27 15:14:57 2016 Desktop-Session: 'gnome' '/etc/xdg/xdg-gnome:/usr/share/upstart/xdg:/etc/xdg' '/usr/share/gnome:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop' Env: 'None' '/home/rrt/.local/lib/x86_64-linux-gnu' InstallationDate: Installed on 2015-12-28 (212 days ago) InstallationMedia: Ubuntu 14.04.3 LTS "Trusty Tahr" - Beta amd64 (20150805) Load-Avg-1min: 0.49 Load-Processes-Running-Percent: 0.1% MachineType: Apple Inc. MacBookPro11,1 ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-4.4.0-31-generic.efi.signed root=/dev/mapper/ubuntu--vg-root ro quiet splash vt.handoff=7 SourcePackage: chromium-browser UpgradeStatus: Upgraded to xenial on 2016-07-25 (2 days ago) dmi.bios.date: 09/08/2015 dmi.bios.vendor: Apple Inc. dmi.bios.version: MBP111.88Z.0138.B16.1509081438 dmi.board.asset.tag: Base Board Asset Tag# dmi.board.name: Mac-189A3D4F975D5FFC dmi.board.vendor: Apple Inc. dmi.board.version: MacBookPro11,1 dmi.chassis.type: 10 dmi.chassis.vendor: Apple Inc. dmi.chassis.version: Mac-189A3D4F975D5FFC dmi.modalias: dmi:bvnAppleInc.:bvrMBP111.88Z.0138.B16.1509081438:bd09/08/2015:svnAppleInc.:pnMacBookPro11,1:pvr1.0:rvnAppleInc.:rnMac-189A3D4F975D5FFC:rvrMacBookPro11,1:cvnAppleInc.:ct10:cvrMac-189A3D4F975D5FFC: dmi.product.name: MacBookPro11,1 dmi.product.version: 1.0 dmi.sys.vendor: Apple Inc. etcconfigcpepperflashpluginnonfree: flashso="/usr/lib/pepperflashplugin-nonfree/libpepflashplayer.so" flashversion=`strings $flashso 2> /dev/null | grep LNX | cut -d ' ' -f 2 | sed -e "s/,/./g"` CHROMIUM_FLAGS="$CHROMIUM_FLAGS --ppapi-flash-path=$flashso --ppapi-flash-version=$flashversion" gconf-keys: /desktop/gnome/applications/browser/exec = b'/usr/bin/chromium-browser\n'/desktop/gnome/url-handlers/https/command = b'/usr/bin/chromium-browser --new-window %U\n'/desktop/gnome/url-handlers/https/enabled = b'false\n'/desktop/gnome/url-handlers/http/command = b'sensible-browser %s\n'/desktop/gnome/url-handlers/http/enabled = b'false\n'/desktop/gnome/session/required_components/windowmanager = b'compiz\n'/apps/metacity/general/compositing_manager = b''/desktop/gnome/interface/icon_theme = b'Tangerine\n'/desktop/gnome/interface/gtk_theme = b'Human-Clearlooks\n' modified.conffile..etc.chromium-browser.default: [modified] modified.conffile..etc.default.chromium-browser: [deleted] mtime.conffile..etc.chromium-browser.default: 2016-03-28T15:20:54.598177 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/1606959/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : desktop-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp