New issue
Advanced search Search tips

Issue 854722 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: 2
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 3
Type: Bug

Blocking:
issue 822061



Sign in to add a comment

Refresh background tab hittesting/hover effects should take lack of visible overlap into account

Project Member Reported by pkasting@chromium.org, Jun 20 2018

Issue description

In refresh, background tabs appear to be straight-sided until you hover them, at which point they have overlapping curves at the bottom.  If you hover the bottom left corner of such a tab, in the region that is right of the divider but still in the overlap zone, the tab to the left becomes hovered.

There are two better options here.  One is for hittesting to pretend background tabs are straight-sided (at the dividers).  Another is to modify the hittest Z ordering so instead of being "active, selected, other" it's basically "active, selected, currently hovered, other" where "currently hovered" is defined as the tab for which hover_controller_.animation_.IsShowing() is true (there should only be one).  (It's important not to define "currently hovered" as IsMouseHovered(), since this is true for both overlapped tabs.)

Painting hover effects has similar issues.  Say you have three inactive tabs, A, B, and C.  If you hover B, then move to hovering C, then while the hover effect for B is dimming out, B gets clipped by A, leading to a brief "speech bubble" effect in its lower left corner.  What we want in this case is an ordering akin to "active, selected, currently hovered, other hovered, inactive", where "other hovered" is defined as any tab for which hover_controller_.ShouldDraw() is true.

These are really two separate bugs, but since they're reasonably similar I'm leaving them on one.  P3, we can fix this post-launch.
 
Labels: Hotlist-Helper
EstimatedDays: 2
Cc: pkasting@chromium.org
 Issue 855214  has been merged into this issue.
Labels: Hotlist-Polish
Labels: Group-Tabstrip
Labels: M-70 Target-70
Labels: -M-70 -Target-70 M-71 Target-71
Labels: -Proj-MdRefresh Proj-DesktopUI
Labels: Hotlist-DesktopUITriaged
Labels: -M-71 -Target-71 M-73 Target-73

Sign in to add a comment