Fix clipping issue on rounded corners for bubbles
Currently bubbles rely on having the NonClientFrameView apply a clip mask to the ClientView so that the ClientView's contents are correctly constrained to the bounds of the frame. However, if the ClientView's content view hierarchy employs layer backed views, the ClientView's clip mask is ignored if the ClientView does not itself paint to a layer. This results in clipping issues where views can clip outside the bounds of the bubble when corner radius is increased. This patch addresses this issue by having the BubbleDialogDelegate supply a ClientView that paints to a textured layer. To address the existing cases where bubbles rely on the frame's background color (i.e. they assume that the ClientView is transparent), the BubbleFrameView will update the background color to ensure existing bubble behavior is preserved. Currently these features are gated behind the kEnableMDRoundedCornersOnDialogs feature flag. Bug: 932970, 822075 Change-Id: I68542ffe84b533fd8b751acc01e5852a8b9bf6b3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2257452Reviewed-by:Scott Violet <sky@chromium.org> Reviewed-by:
Elly Fong-Jones <ellyjones@chromium.org> Commit-Queue: Thomas Lukaszewicz <tluk@chromium.org> Cr-Commit-Position: refs/heads/master@{#782101}
Showing
Please register or sign in to comment