| Index: ui/views/cocoa/bridged_native_widget.mm
|
| diff --git a/ui/views/cocoa/bridged_native_widget.mm b/ui/views/cocoa/bridged_native_widget.mm
|
| index 24bba74dd91727e12fe250c3c02c4b1145875e10..d648c41396d93b4a3447ea00b42321fa30b72641 100644
|
| --- a/ui/views/cocoa/bridged_native_widget.mm
|
| +++ b/ui/views/cocoa/bridged_native_widget.mm
|
| @@ -667,6 +667,14 @@ void BridgedNativeWidget::OnSizeChanged() {
|
| if ([window_ inLiveResize])
|
| MaybeWaitForFrame(new_size);
|
| }
|
| +
|
| + // 10.9 is unable to generate a window shadow from the composited CALayer, so
|
| + // use Quartz.
|
| + // We don't update the window mask during a live resize, instead it is done
|
| + // after the resize is completed in viewDidEndLiveResize: in
|
| + // BridgedContentView.
|
| + if (base::mac::IsOSMavericksOrEarlier() && ![window_ inLiveResize])
|
| + [bridged_view_ updateWindowMask];
|
| }
|
|
|
| void BridgedNativeWidget::OnVisibilityChanged() {
|
| @@ -850,7 +858,14 @@ void BridgedNativeWidget::CreateLayer(ui::LayerType layer_type,
|
| // native shape is what's most appropriate for displaying sheets on Mac.
|
| if (translucent && !native_widget_mac_->IsWindowModalSheet()) {
|
| [window_ setOpaque:NO];
|
| - [window_ setBackgroundColor:[NSColor clearColor]];
|
| + // For Mac OS versions earlier than Yosemite, the Window server isn't able
|
| + // to generate a window shadow from the composited CALayer. To get around
|
| + // this, set an opaque background on the window and clip the window boundary
|
| + // in drawRect method of BridgedContentView. See crbug.com/543671.
|
| + if (base::mac::IsOSYosemiteOrLater())
|
| + [window_ setBackgroundColor:[NSColor clearColor]];
|
| + else
|
| + [window_ setBackgroundColor:[NSColor whiteColor]];
|
| }
|
|
|
| UpdateLayerProperties();
|
|
|