diff options
author | karandeepb <karandeepb@chromium.org> | 2016-02-16 16:44:39 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-02-17 00:45:30 +0000 |
commit | 675dee76d8e2d0d1d844665147c45f7c4468c7be (patch) | |
tree | 53b1715193c9592b2956ce88fda1f3868bc9134a /cloud_print | |
parent | 365cf04600cd4126bc3fa6e62820d4d712f959ad (diff) | |
download | chromium_src-675dee76d8e2d0d1d844665147c45f7c4468c7be.zip chromium_src-675dee76d8e2d0d1d844665147c45f7c4468c7be.tar.gz chromium_src-675dee76d8e2d0d1d844665147c45f7c4468c7be.tar.bz2 |
MacViews: Add native drop shadow to dialogs on OSX 10.9.
On OSX 10.10 and later, the Window manager is able to gather shadow
information from the alpha channel of the composited layer, but this isn't
supported on OSX 10.9. This CL adds native shadows to OSX 10.9 by using a
strategy similar to ChromeMac's -[ConstrainedWindowCustomWindow drawRect:].
This involves giving the window an opaque background and drawing over the
edges with `clear` color to make the corners round.
To do this, implement path_mac.mm which converts Skia Paths to NSBezierPath.
This is similar to the methods in path_win.cc and path_x11.cc.
On Mac, hit testing masks are inferred from the alpha channel. Using the
window manager to draw the shadow ensures we get the shadow corresponding to
the alpha channel, and removes the need to use views::BubbleWindowTargeter.
Since, native shadows are now supported, this CL also removes raster shadows
on all Mac Versions by setting all BubbleBorders on Mac to NO_ASSETS.
BUG=543671, 507965
Review URL: https://codereview.chromium.org/1633403002
Cr-Commit-Position: refs/heads/master@{#375729}
Diffstat (limited to 'cloud_print')
0 files changed, 0 insertions, 0 deletions