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

Issue 864280 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Aug 23
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Left edge of second tab is sometimes not rounded at 150% scale

Project Member Reported by tbergquist@chromium.org, Jul 16

Issue description

Chrome Version: 69.0.3494.0 (Developer Build) (32-bit) Revision	f4fa7cc4cab7bfa7f018265b078ddc00e7dff4df-refs/heads/master@{#575445}
OS: Win10, presumably all

What steps will reproduce the problem?
(1) Open some tabs
(2) Select the second tab (note: it does repro with other tabs selected, but less reliably)
(3) Resize the window back and forth, such that the left edge of the second tab is roughly over the back/forward buttons

What is the expected result?
Tab should be rounded on both sides always

What happens instead?
At some widths, the left edge of the second tab is squared (see attached)

The tab in this state looks an awful lot like just one of the paths intersected in GetRefreshInteriorPath().
 
150-second-tab-left-edge.PNG
4.3 KB View Download
Cc: malaykeshav@chromium.org
Description: Show this description
Looks like I introduced it in https://crrev.com/c/1121386
Owner: tbergquist@chromium.org
Status: Assigned (was: Untriaged)
Project Member

Comment 5 by bugdroid1@chromium.org, Jul 23

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f6b99e933c4ce14da242198f955500be9d5587ca

commit f6b99e933c4ce14da242198f955500be9d5587ca
Author: Taylor Bergquist <tbergquist@chromium.org>
Date: Mon Jul 23 20:14:42 2018

Fix occasional squared left tab edge at 150% scale

I don't (yet) know why this fixes the issue, but it certainly does. This
diff *should* be a no-op, changing an rLineTo to the equivalent lineTo,
but I guess the former runs into a bug in skia.

Stepping through this in the debugger reveals that there is some
floating-point error in the path's point sequence that the rLineTo
propagates and the lineTo obviously does not.  Apparently 0.5000015259
vs. 0.5 or 53.0000038 vs 53 makes a difference to skia when it's
calculating the path intersection.  ¯\_(ツ)_/¯

Bug:  864280 
Change-Id: I06ba430f7f62f075102975e1e3db4b8a3292c879
Reviewed-on: https://chromium-review.googlesource.com/1141292
Reviewed-by: Peter Kasting <pkasting@chromium.org>
Commit-Queue: Taylor Bergquist <tbergquist@chromium.org>
Cr-Commit-Position: refs/heads/master@{#577233}
[modify] https://crrev.com/f6b99e933c4ce14da242198f955500be9d5587ca/chrome/browser/ui/views/tabs/tab.cc

Status: Fixed (was: Assigned)

Sign in to add a comment