Refresh background tab hittesting/hover effects should take lack of visible overlap into account |
|||||||||
Issue descriptionIn 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.
,
Jun 20 2018
,
Jun 22 2018
,
Jun 28 2018
,
Jul 12
,
Jul 26
,
Aug 27
,
Sep 20
,
Sep 26
,
Dec 11
|
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by pkasting@chromium.org
, Jun 20 2018