New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 679365 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Feb 2018
Cc:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug



Sign in to add a comment

macOS Sierra supports fractional (non-2x) HiDPI pixel scaling (and TouchBar Macs are not 2x by default)

Project Member Reported by tapted@chromium.org, Jan 9 2017

Issue description

Chrome Version       : 55.0.2883.95
OS Version: OS X 10.12.2

For the most part.. everything looks pretty good, which is probably why we haven't noticed this feature yet.

What steps will reproduce the problem?
1. Have a TouchBar Mac, or tweak System Preferences -> Displays -> Resolution -> "Scaled"
2. Notice that everything is "smaller"
3. Notice some alignment issues


I played with a TouchBar mac for a bit and noticed everything felt "small". Turns out the "Displays" preferences pane now surfaces an option for the "Built-in Retina Display" with options:
 - Default for display
 - Scaled

Switching to "Scaled" gives 5 choices of scaling to use. I haven't dug in yet, but the middle one is 200%. Hovering gives a "Looks like 1440x900" on the 2880x1800 display. The full "Looks like" list for the 2880x1800 display is:

1024 x  640
1280 x  800
1440 x  900
1680 x 1050
1920 x 1200


On my old retina Mac 2x (1440x900) is marked `Default` and it's what you get when selecting "Default for display"

Problem: On the 15" TouchBar mac I played with, 1680x1050 is default. So new macs are shipping pixel scaling that is not 200%.


I didn't notice any glitches in the UI (views or Cocoa), but in the content area, some alignment is now off. E.g. the buttons on chrome://settings have text that no longer aligns vertically in the right place.

Of course Windows has had issues around fractional font scaling for a while. There is Issue 485650 "Use page zoom logic to implement device scale". Flipping chrome://flags/#enable-use-zoom-for-dsf fixes the alignment problem on chrome://settings . However, there are other problems. E.g. form controls drop into non-native/CSS mode -  Issue 546679  - and <select> menus show up in the wrong place.

Also, on the biggest "looks larger" setting some dialogs don't fit in the display (e.g. site info bubble, collected cookies). But macOS gives a warning when you select this which says Are you sure / "When using this scaled resolution, some applications may not fit entirely on screen."


Anyway there's probably no urgent stuff we need to do. The move to vector assets for MD and other good coding practices means things are already in a pretty good shape.

But we probably want to start preparing for chrome://flags/#enable-use-zoom-for-dsf on Mac as well and fix things like the <select> popup location.
 
touchbar-mac-displays.png
518 KB View Download
retina-mac-displays.png
319 KB View Download
touchbar-mac-settings.png
414 KB View Download
retina-mac-settings.png
322 KB View Download

Comment 1 by thakis@chromium.org, Jan 27 2017

I'm 98% sure this is WontFix. The way that works is that the system asks apps to draw at 2x, and then it just scales the finished composited bitmap. So for 1920 x 1200 it draws into a 3840 x 2400 backbuffer and then stretches that down to the number of physical pixels of the display. For 1024 x  640 it draws 2040 x 1280 and stretches that. Since pixels are small, this ends up looking ok.

Chrome can't do anything better here, the system always tells us that the scale factor is 2x.

Comment 2 by tapted@chromium.org, Jan 27 2017

Yah - the screengrabs above have the same number of pixels, so that suggests they're drawing to the same backbuffer dimensions.

But what does this mean for subpixel AA? Seems pointless to bother with it if there's no 1:1 pixel mapping (Cocoa still does it for some reason..). Blink already gives up on retina+subpixel in many cases for performance reasons - should we stop bothering with subpixel AA in Blink for retina screens completely?

And the screen dimensions must change then, right? Even if we don't need special raster assets for pixel precision, something could be doing backbuffer_width / screen_width and messing up a calculation.

E.g. there's a real text-alignment issue in the screenshots above, which users of TouchBar macs will now experience out of the box.

Comment 3 by thakis@chromium.org, Jan 27 2017

Yes, subpixel AA on retina screens on non-native scale seems pointless to me too. (Having said that, last I checked I found it difficult to notice color banding from it on non-native scale on retina, and I must admit that I also can't tell the difference between grayscale AA and subpixel AA in web contents on retina. On non-retina, I always noticed the difference.)

As far as apps are concerned, backbuffer_width == screen_width (in points; in pixels there's a 2x scale factor on retina). The whole scaling of the backbuffer to fit the screen is completely transparent to apps. Apps believe the draw to a regular 2x screen. So that shouldn't mess anything up.

Which text-alignment issue do you mean?

Comment 4 by thakis@chromium.org, Jan 28 2017

Also, display scaling on retina isn't new, it's been around since retina screens launched iirc (see e.g. http://osxdaily.com/2014/04/14/change-retina-macbook-screen-resolution-more-space/). What's new is that the touchbar macs have a scaled setting by default and that they dropped the "best for retina" label from the unscaled mode (https://9to5mac.com/2016/12/02/15-inch-macbook-pro-screen-resolution-blurry/).

I still think this bug is WontFix since there's nothing for us to do here. The alignment issues mentioned in comment 0 must have a difference cause. macOS doesn't have fractional scale factors.
Project Member

Comment 5 by sheriffbot@chromium.org, Feb 15 2018

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 6 by tapted@chromium.org, Feb 15 2018

Status: WontFix (was: Untriaged)

Sign in to add a comment