Display scaling feature in Android 7+ causes Chrome to report a logical screen size that breaks the mobile experience
Reported by
coolinc...@gmail.com,
Nov 16 2016
|
|||||
Issue descriptionDevice name: Google Pixel From "Settings > About Chrome" Application version: 53.0.2785.124 Operating system: Android 7.1.0; Pixel Build/NDE63L URLs (if applicable): My own research notes at https://www.reddit.com/r/GooglePixel/comments/5d5c89/heres_why_youre_not_getting_the_mobile_layout_on/ Steps to reproduce: (1) Visit http://www.whoishostingthis.com/tools/user-agent/ on the device and note the values for Device Pixel Ratio and Screen Resolution (2) Go to Android Display settings and change the "Display size" option from Default to Small (3) Trigger the Chrome installation process by either updating the app or reinstall the same version from the APK (4) Visit http://www.whoishostingthis.com/tools/user-agent/ again Expected result: No change in user experience for the website except for a larger field of view. Actual result: The Chrome installation process detected the new system display scale and updated the Device Pixel Ratio from 2.625 to 2.225. This resulted in an increase in logical screen resolution from 412x732 to 486x863. This is undesirable because many websites that follow responsive design use a screen width of 480 as the threshold to determine whether to load the mobile layout for the client browser. This issue therefore breaks the mobile experience for many websites, including the one that was just showing you the above information.
,
Nov 17 2016
Yes, I can reproduce it on 54.0.2840.85, which is the only other public apk available for the Pixel.
,
Nov 21 2016
New discovery: the Chrome installation process simply removes the existing Device Pixel Ratio setting, which is set on the first launch of Chrome. This means that for the workaround, you must first launch Chrome after installing from APK before changing the display scaling back down.
,
Nov 21 2016
Never mind. This reseting of Device Pixel Ratio seems periodic in nature, so there's no reliable workaround for this issue. As it currently stands, an Android user cannot use the small display scaling on a FHD smartphone screen without breaking the mobile layout on many sites.
,
Nov 29 2016
Thank you for providing more feedback. Adding requester "rsgavara@chromium.org" for another review and adding "Needs-Review" label for tracking. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Dec 29 2016
,
Jan 3 2017
Tima has implemented the feature for WebView for M57 and he updated content layer doing so. Tima can you check if the issue described in #1 is still an issue?
,
Jan 3 2017
Tested with Google Pixel XL (marlin-userdebug 7.1.1 NMF26U 3562008 dev-keys) Chrome 55.0.2883.91 and 57.0.2971.0. I can reproduce the problem by just changing the display settings and go between the Settings and Chrome applications. In contrast to WebView, Chrome reloads the page each time the screen density changes, therefore my changes for WebView did not have any effect on this. As for the issue itself, first of all, thank you for the research. My take is that the current Chrome behavior is correct, and the recent addition of dynamic display size change in Android made the already arbitrary limit of 480 pixels obsolete. The problem that you see seems to be with the web site (whoishostingthis.com in this particular case), btw they do not handle well the large display densities either.
,
Jan 5 2017
Thank you Tima for the explanation. From my own additional research I agree that the 480 pixels standard is obsolete, and it's up to individual websites to update their design accordingly. Feel free to close this issue.
,
Jan 5 2017
Yes, see, for instance how www.reddit.com behaves.
,
Jan 5 2017
Work as expected, closing. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by rsgav...@chromium.org
, Nov 16 2016